:root {
    --pf-black: #0b0d12;
    --pf-panel: #131722;
    --pf-panel-2: #191f2c;
    --pf-line: rgba(255, 255, 255, 0.12);
    --pf-text: #f7f8fb;
    --pf-muted: #a9b1c1;
    --pf-red: #d42e2d;
    --pf-red-2: #ff4a3d;
    --pf-gold: #f4b832;
    --pf-cyan: #24d6ff;
    --pf-radius: 16px;
    --pf-shadow: 0 30px 80px rgba(0, 0, 0, 0.32);
}

* {
    box-sizing: border-box;
}

body.packforge-home {
    margin: 0;
    background:
        radial-gradient(circle at 80% 0%, rgba(212, 46, 45, 0.18), transparent 32rem),
        radial-gradient(circle at 0% 22%, rgba(36, 214, 255, 0.12), transparent 28rem),
        var(--pf-black);
    color: var(--pf-text);
    font-family: Poppins, Arial, sans-serif;
}

body.packforge-home a {
    color: inherit;
    text-decoration: none;
}

body.packforge-home img {
    display: block;
    max-width: 100%;
}

.pf-container {
    width: min(1240px, calc(100% - 32px));
    margin: 0 auto;
}

.pf-topline {
    border-bottom: 1px solid var(--pf-line);
    background: #08090d;
    color: var(--pf-muted);
    font-size: 13px;
}

.pf-topline-inner,
.pf-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.pf-topline-inner {
    min-height: 42px;
}

.pf-header {
    position: sticky;
    top: 0;
    z-index: 50;
    border-bottom: 1px solid var(--pf-line);
    background: rgba(11, 13, 18, 0.92);
    backdrop-filter: blur(18px);
}

.pf-header-inner {
    min-height: 86px;
}

.pf-brand {
    display: inline-flex;
    align-items: center;
    gap: 14px;
}

.pf-brand-mark {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--pf-red), #741415);
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 900;
    box-shadow: 0 12px 28px rgba(212, 46, 45, 0.34);
}

.pf-brand strong {
    display: block;
    font-family: Montserrat, sans-serif;
    font-size: 24px;
    line-height: 1;
}

.pf-brand small {
    color: var(--pf-muted);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.pf-nav {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pf-nav a,
.pf-header-action,
.pf-button,
.pf-search-panel button,
.pf-newsletter-form button,
.pf-panel button,
.pf-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    border: 1px solid transparent;
    border-radius: 999px;
    padding: 12px 18px;
    font-weight: 800;
    line-height: 1;
}

.pf-nav a {
    color: var(--pf-muted);
}

.pf-nav a:hover,
.pf-nav a.active {
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

.pf-header-action,
.pf-button.primary,
.pf-search-panel button,
.pf-newsletter-form button,
.pf-panel button {
    background: var(--pf-red);
    color: #fff;
    box-shadow: 0 14px 30px rgba(212, 46, 45, 0.24);
}

.pf-button {
    background: #fff;
    color: var(--pf-black);
}

.pf-menu-toggle {
    display: none;
    background: var(--pf-panel);
    color: #fff;
}

.pf-kicker {
    display: inline-flex;
    margin-bottom: 12px;
    color: var(--pf-gold);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pf-hero {
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--pf-line);
    background:
        linear-gradient(90deg, rgba(11, 13, 18, 0.96), rgba(11, 13, 18, 0.72), rgba(11, 13, 18, 0.48)),
        url("../../../wp-content/uploads/2025/06/bg-18.jpg") center / cover;
}

.pf-hero::after {
    content: "";
    position: absolute;
    inset: auto -10% -25% 42%;
    height: 380px;
    background: radial-gradient(circle, rgba(212, 46, 45, 0.30), transparent 68%);
    pointer-events: none;
}

.pf-hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    gap: 70px;
    align-items: center;
    min-height: 720px;
    padding: 82px 0;
}

.pf-hero-copy h1,
.pf-page-title h1 {
    max-width: 860px;
    margin: 0 0 20px;
    font-family: Montserrat, sans-serif;
    font-size: clamp(46px, 7vw, 92px);
    font-weight: 900;
    line-height: 0.95;
    text-transform: uppercase;
}

.pf-hero-copy p,
.pf-page-title p {
    max-width: 760px;
    color: var(--pf-muted);
    font-size: 18px;
}

.pf-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.pf-hero-card {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--pf-line);
    border-radius: 22px;
    padding: 18px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.04));
    box-shadow: var(--pf-shadow);
}

.pf-hero-card img {
    width: 100%;
    height: 480px;
    object-fit: contain;
    border-radius: 16px;
    background: #eceef4;
}

.pf-hero-card div {
    padding: 18px 4px 4px;
}

.pf-hero-card span {
    color: var(--pf-gold);
    font-weight: 900;
    text-transform: uppercase;
}

.pf-hero-card h2 {
    margin: 6px 0;
    font-family: Montserrat, sans-serif;
    font-size: 28px;
}

.pf-section {
    padding: 82px 0;
}

.pf-dark-section {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02)),
        #0f1219;
    border-block: 1px solid var(--pf-line);
}

.pf-section-heading {
    margin-bottom: 32px;
}

.pf-section-heading.split {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
}

.pf-section-heading h2 {
    max-width: 780px;
    margin: 0;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: clamp(30px, 4vw, 52px);
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.pf-link-arrow {
    color: var(--pf-gold);
    font-weight: 900;
}

.pf-category-grid,
.pf-product-grid,
.pf-banner-grid,
.pf-account-grid {
    display: grid;
    gap: 22px;
}

.pf-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pf-category-tile {
    min-height: 280px;
    border: 1px solid var(--pf-line);
    border-radius: var(--pf-radius);
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    overflow: hidden;
    background: #151a24;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

.pf-category-tile span,
.pf-promo-card span {
    color: var(--pf-gold);
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.pf-category-tile strong,
.pf-promo-card strong {
    display: block;
    margin-top: 10px;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 24px;
    line-height: 1.08;
}

.pf-category-tile.sealed {
    background: linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.84)), url("../../../wp-content/uploads/2025/05/banner-6.jpg") center / cover;
}

.pf-category-tile.singles {
    background: linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.84)), url("../../image/yugioh-singles/DBGV-JP003.webp") center / contain no-repeat, #151a24;
}

.pf-category-tile.bulk {
    background: linear-gradient(135deg, #121722, #132d3b 48%, #d42e2d);
}

.pf-category-tile.accessories {
    background: linear-gradient(135deg, #161616, #2c2235 46%, #f4b832);
}

.pf-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pf-product-card {
    overflow: hidden;
    border: 1px solid var(--pf-line);
    border-radius: var(--pf-radius);
    background: var(--pf-panel);
    transition: transform 180ms ease, border-color 180ms ease;
}

.pf-product-card:hover {
    transform: translateY(-5px);
    border-color: rgba(212, 46, 45, 0.72);
}

.pf-product-media {
    position: relative;
    display: grid;
    height: 275px;
    place-items: center;
    background: linear-gradient(160deg, #e7eaf1, #ffffff);
}

.pf-product-media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 18px;
}

.pf-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    border-radius: 999px;
    padding: 7px 11px;
    background: var(--pf-red);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}

.pf-product-info {
    padding: 18px;
}

.pf-product-meta,
.pf-product-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.pf-product-meta {
    color: var(--pf-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.pf-product-info h3 {
    min-height: 54px;
    margin: 10px 0 8px;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    line-height: 1.2;
}

.pf-product-info p {
    min-height: 44px;
    margin: 0 0 14px;
    color: var(--pf-muted);
}

.pf-product-bottom strong {
    color: var(--pf-red-2);
    font-size: 21px;
}

.pf-product-bottom span {
    color: var(--pf-muted);
    font-size: 12px;
    font-weight: 800;
}

.pf-banner-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pf-promo-card {
    min-height: 230px;
    border: 1px solid var(--pf-line);
    border-radius: var(--pf-radius);
    padding: 28px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    box-shadow: var(--pf-shadow);
}

.pf-promo-card.red {
    background: linear-gradient(135deg, rgba(212,46,45,0.96), rgba(17,19,28,0.90)), url("../../image/yugioh-singles/DBGV-JP003.webp") right center / contain no-repeat;
}

.pf-promo-card.blue {
    background: linear-gradient(135deg, #121826, #0d5d80);
}

.pf-promo-card.gold {
    background: linear-gradient(135deg, #18140c, #9c6a05);
}

.pf-brand-strip {
    border-block: 1px solid var(--pf-line);
    background: #090b10;
}

.pf-brand-strip .pf-container {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
    padding: 28px 0;
}

.pf-brand-strip span {
    text-align: center;
    color: rgba(255, 255, 255, 0.76);
    font-family: Montserrat, sans-serif;
    font-weight: 900;
    text-transform: uppercase;
}

.pf-page-title {
    padding: 86px 0 56px;
    border-bottom: 1px solid var(--pf-line);
    background: linear-gradient(135deg, rgba(212, 46, 45, 0.20), transparent 45%), #10131b;
}

.pf-search-panel,
.pf-panel {
    border: 1px solid var(--pf-line);
    border-radius: var(--pf-radius);
    padding: 22px;
    background: var(--pf-panel);
}

.pf-search-panel {
    display: grid;
    grid-template-columns: 220px 1fr auto;
    gap: 16px;
    align-items: end;
    margin-bottom: 24px;
}

.pf-search-panel label,
.pf-panel label {
    display: grid;
    gap: 8px;
    color: var(--pf-muted);
    font-weight: 900;
}

.pf-search-panel input,
.pf-search-panel select,
.pf-panel input,
.pf-panel textarea {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--pf-line);
    border-radius: 10px;
    padding: 12px 14px;
    background: #0c0f15;
    color: #fff;
}

.pf-panel textarea {
    min-height: 150px;
    resize: vertical;
}

.pf-result-bar {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 22px;
    color: var(--pf-muted);
}

.pf-result-bar strong {
    color: #fff;
}

.pf-detail-grid {
    display: grid;
    grid-template-columns: 480px minmax(0, 1fr);
    gap: 54px;
    align-items: start;
}

.pf-detail-media {
    border: 1px solid var(--pf-line);
    border-radius: var(--pf-radius);
    padding: 26px;
    background: #f0f2f8;
}

.pf-detail-media img {
    width: 100%;
    max-height: 620px;
    object-fit: contain;
}

.pf-detail-copy h1 {
    margin: 0 0 16px;
    font-family: Montserrat, sans-serif;
    font-size: clamp(36px, 6vw, 72px);
    line-height: 0.98;
    text-transform: uppercase;
}

.pf-detail-copy p {
    color: var(--pf-muted);
}

.pf-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 28px 0;
}

.pf-specs div {
    border: 1px solid var(--pf-line);
    border-radius: 12px;
    padding: 14px;
    background: var(--pf-panel);
}

.pf-specs dt {
    color: var(--pf-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.pf-specs dd {
    margin: 4px 0 0;
    color: #fff;
    font-weight: 800;
}

.pf-detail-buy {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
}

.pf-detail-buy strong {
    color: var(--pf-red-2);
    font-size: 34px;
}

.pf-detail-buy span {
    color: var(--pf-muted);
    font-weight: 800;
}

.pf-account-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pf-panel h2 {
    margin-top: 0;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
}

.pf-panel {
    display: grid;
    gap: 16px;
}

.pf-newsletter {
    border-top: 1px solid var(--pf-line);
    background: linear-gradient(90deg, #d42e2d, #751414);
}

.pf-newsletter-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 460px;
    gap: 24px;
    align-items: center;
    padding: 46px 0;
}

.pf-newsletter h2 {
    margin: 0;
    font-family: Montserrat, sans-serif;
    font-size: 34px;
    text-transform: uppercase;
}

.pf-newsletter .pf-kicker {
    color: #fff;
}

.pf-newsletter-form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
}

.pf-newsletter-form input {
    min-height: 52px;
    border: 0;
    border-radius: 999px;
    padding: 12px 18px;
}

.pf-newsletter-form button {
    background: var(--pf-black);
}

.pf-footer {
    background: #06070a;
    border-top: 1px solid var(--pf-line);
}

.pf-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr repeat(3, 1fr);
    gap: 34px;
    padding: 58px 0;
}

.pf-footer p,
.pf-footer a {
    color: var(--pf-muted);
}

.pf-footer a {
    display: block;
    margin-top: 10px;
}

.pf-footer h3 {
    margin-top: 0;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
}

.pf-footer-brand {
    margin-bottom: 18px;
}

@media (max-width: 1024px) {
    .pf-nav {
        position: absolute;
        top: 86px;
        right: 16px;
        left: 16px;
        display: none;
        flex-direction: column;
        align-items: stretch;
        padding: 14px;
        border: 1px solid var(--pf-line);
        border-radius: 16px;
        background: var(--pf-panel);
    }

    .pf-nav.open {
        display: flex;
    }

    .pf-menu-toggle {
        display: inline-flex;
    }

    .pf-header-action {
        display: none;
    }

    .pf-hero-grid,
    .pf-detail-grid,
    .pf-newsletter-inner,
    .pf-footer-grid {
        grid-template-columns: 1fr;
    }

    .pf-category-grid,
    .pf-product-grid,
    .pf-banner-grid,
    .pf-brand-strip .pf-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pf-search-panel {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .pf-topline-inner {
        display: none;
    }

    .pf-hero-grid {
        min-height: auto;
        padding: 56px 0;
    }

    .pf-category-grid,
    .pf-product-grid,
    .pf-banner-grid,
    .pf-account-grid,
    .pf-specs,
    .pf-brand-strip .pf-container,
    .pf-newsletter-form {
        grid-template-columns: 1fr;
    }

    .pf-section {
        padding: 56px 0;
    }
}


/* PackForge logo-led refresh */
:root {
    --pf-black: #06070b;
    --pf-panel: #10151f;
    --pf-panel-2: #182232;
    --pf-line: rgba(255, 190, 82, 0.18);
    --pf-text: #f8f1df;
    --pf-muted: #b9c0ca;
    --pf-red: #d42e2d;
    --pf-red-2: #ff503f;
    --pf-gold: #f6ad27;
    --pf-gold-2: #ffd36e;
    --pf-cyan: #00a9dc;
}

body.packforge-home {
    background:
        radial-gradient(circle at 18% -8%, rgba(246, 173, 39, 0.18), transparent 34rem),
        radial-gradient(circle at 88% 18%, rgba(0, 169, 220, 0.16), transparent 30rem),
        radial-gradient(circle at 50% 110%, rgba(212, 46, 45, 0.14), transparent 36rem),
        #06070b;
}

.pf-topline {
    color: #d9e2ef;
    background: #050608;
}

.pf-header {
    background: rgba(7, 8, 12, 0.90);
    box-shadow: 0 20px 60px rgba(0,0,0,.22);
}

.pf-brand-logo {
    width: 64px;
    height: 64px;
    object-fit: contain;
    filter: drop-shadow(0 12px 22px rgba(246, 173, 39, .26));
}

.pf-footer-brand .pf-brand-logo {
    width: 58px;
    height: 58px;
}

.pf-brand-wordmark strong,
.pf-brand strong {
    color: #fff4d4;
    letter-spacing: -0.035em;
}

.pf-brand-wordmark small,
.pf-brand small {
    color: var(--pf-gold-2);
    letter-spacing: .08em;
}

.pf-nav a.active,
.pf-nav a:hover {
    color: #090b10;
    background: linear-gradient(135deg, var(--pf-gold-2), var(--pf-gold));
}

.pf-header-action,
.pf-button.primary,
.pf-search-panel button,
.pf-newsletter-form button,
.pf-panel button {
    color: #090b10;
    background: linear-gradient(135deg, var(--pf-gold-2), var(--pf-gold));
    box-shadow: 0 18px 42px rgba(246, 173, 39, .22);
}

.pf-button.glass,
.pf-button {
    border-color: rgba(255,255,255,.18);
    color: #fff7df;
    background: rgba(255,255,255,.09);
    backdrop-filter: blur(10px);
}

.pf-hero-forged {
    background:
        linear-gradient(90deg, rgba(6,7,11,.98), rgba(8,12,19,.78) 56%, rgba(8,12,19,.42)),
        url("../../../wp-content/uploads/2025/06/bg-18.jpg") center / cover;
}

.pf-hero-forged::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(246,173,39,.22), transparent 28%),
        linear-gradient(315deg, rgba(0,169,220,.18), transparent 34%);
    pointer-events: none;
}

.pf-hero-watermark {
    position: absolute;
    right: 4vw;
    top: 8%;
    width: min(460px, 36vw);
    opacity: .12;
    filter: blur(.2px);
    pointer-events: none;
}

.pf-hero-grid {
    min-height: 760px;
}

.pf-hero-copy h1,
.pf-page-title h1,
.pf-section-heading h2,
.pf-detail-copy h1 {
    color: #fff7de;
    text-shadow: 0 12px 38px rgba(0,0,0,.42);
}

.pf-hero-copy p,
.pf-page-title p,
.pf-heading-copy {
    color: #d5dcea;
}

.pf-forge-card {
    border-color: rgba(246, 173, 39, .36);
    background:
        linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.04)),
        linear-gradient(135deg, rgba(246,173,39,.20), rgba(0,169,220,.10));
}

.pf-card-shine {
    position: absolute;
    inset: -40% auto auto -20%;
    width: 75%;
    height: 160%;
    transform: rotate(18deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
    pointer-events: none;
}

.pf-hero-card img {
    background: radial-gradient(circle at 50% 12%, #fff6df, #dfe8f1 62%, #7b5520);
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.08), 0 24px 50px rgba(0,0,0,.36);
}

.pf-category-tile {
    border-color: rgba(246, 173, 39, .22);
    min-height: 320px;
}

.pf-category-tile.sealed {
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.88)), url("../../image/sealed/SDBT_550.png") center / contain no-repeat, #10151f;
}

.pf-category-tile.singles {
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.88)), url("../../image/singles/DBGV-JP003.webp") center / contain no-repeat, #10151f;
}

.pf-category-tile.bulk {
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.88)), url("../../image/bulk/IMG_20251122_181849.jpg") center / cover no-repeat;
}

.pf-category-tile.accessories {
    background: linear-gradient(135deg, rgba(6,7,11,.25), rgba(6,7,11,.88)), url("../../image/accessories/card-sleeves01.jpg") center / cover no-repeat;
}

.pf-product-card {
    border-color: rgba(246,173,39,.18);
    background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)), var(--pf-panel);
    box-shadow: 0 22px 45px rgba(0,0,0,.20);
}

.pf-product-card:hover {
    border-color: rgba(246,173,39,.62);
    box-shadow: 0 28px 70px rgba(0,0,0,.32), 0 0 34px rgba(246,173,39,.12);
}

.pf-product-media {
    background:
        radial-gradient(circle at 50% 8%, rgba(255, 211, 110, .55), transparent 35%),
        linear-gradient(160deg, #1c2533, #f3efe5 60%, #9c6817);
}

.pf-badge {
    color: #120b03;
    background: linear-gradient(135deg, var(--pf-gold-2), var(--pf-gold));
}

.pf-product-bottom strong,
.pf-link-arrow,
.pf-kicker {
    color: var(--pf-gold-2);
}

.pf-vault-section {
    background:
        linear-gradient(135deg, rgba(246,173,39,.12), transparent 42%),
        linear-gradient(315deg, rgba(0,169,220,.10), transparent 38%);
}

.pf-vault-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 30px;
    align-items: center;
}

.pf-vault-copy h2 {
    margin: 0 0 16px;
    font-family: Montserrat, sans-serif;
    font-size: clamp(34px, 5vw, 64px);
    line-height: .98;
    text-transform: uppercase;
}

.pf-vault-copy p {
    color: var(--pf-muted);
    max-width: 700px;
}

.pf-vault-list {
    display: grid;
    gap: 12px;
    padding: 24px;
    border: 1px solid rgba(246,173,39,.22);
    border-radius: 22px;
    background: rgba(255,255,255,.055);
    box-shadow: var(--pf-shadow);
}

.pf-vault-list span {
    padding: 16px 18px;
    border-radius: 14px;
    color: #fff6dd;
    background: rgba(6,7,11,.62);
    font-weight: 900;
}

.pf-product-frame {
    background:
        radial-gradient(circle at 50% 0, rgba(255,211,110,.42), transparent 42%),
        linear-gradient(145deg, #111827, #f1ead9 58%, #8d5a15);
}

.pf-card-reference-section {
    padding-top: 0;
}

.pf-iframe-shell {
    overflow: hidden;
    border: 1px solid rgba(246,173,39,.22);
    border-radius: 22px;
    background: #0c111a;
    box-shadow: var(--pf-shadow);
}

.pf-iframe-shell iframe {
    display: block;
    width: 100%;
    height: 760px;
    border: 0;
    background: #fff;
}

.pf-iframe-shell p {
    margin: 0;
    padding: 14px 18px;
    color: var(--pf-muted);
    border-top: 1px solid rgba(255,255,255,.08);
}

.pf-newsletter {
    background:
        linear-gradient(135deg, rgba(246,173,39,.95), rgba(178,96,10,.95)),
        #f6ad27;
}

.pf-newsletter .pf-kicker,
.pf-newsletter h2 {
    color: #120b03;
}

.pf-footer {
    background: #050608;
}

@media (max-width: 1024px) {
    .pf-vault-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .pf-brand-logo {
        width: 52px;
        height: 52px;
    }

    .pf-iframe-shell iframe {
        height: 620px;
    }
}

/* Interactive polish and admin screens */
.pf-category-tile,
.pf-promo-card,
.pf-product-card,
.pf-vault-list span,
.pf-button,
.pf-header-action,
.pf-nav a {
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background 220ms ease, color 220ms ease, filter 220ms ease;
}

.pf-category-tile:hover,
.pf-promo-card:hover {
    transform: translateY(-9px) scale(1.015);
    border-color: rgba(255, 211, 110, .7);
    box-shadow: 0 34px 90px rgba(0,0,0,.42), 0 0 42px rgba(246,173,39,.16);
    filter: saturate(1.12);
}

.pf-category-tile:hover strong,
.pf-promo-card:hover strong {
    color: #ffd36e;
}

.pf-product-media::after,
.pf-category-tile::after {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    background: linear-gradient(110deg, transparent 20%, rgba(255,255,255,.20) 48%, transparent 72%);
    transform: translateX(-120%);
    transition: transform 520ms ease, opacity 220ms ease;
    pointer-events: none;
}

.pf-product-media,
.pf-category-tile {
    position: relative;
}

.pf-product-card:hover .pf-product-media::after,
.pf-category-tile:hover::after {
    opacity: 1;
    transform: translateX(120%);
}

.pf-button:hover,
.pf-header-action:hover {
    transform: translateY(-3px);
    box-shadow: 0 24px 55px rgba(246,173,39,.30);
}

.pf-vault-list span:hover {
    transform: translateX(6px);
    background: rgba(246,173,39,.13);
}

.pf-admin-body .pf-page-title {
    padding: 52px 0 34px;
}

.pf-admin-shell {
    display: grid;
    gap: 22px;
}

.pf-admin-toolbar,
.pf-admin-card,
.pf-admin-table-wrap,
.pf-admin-form {
    border: 1px solid rgba(246,173,39,.20);
    border-radius: 18px;
    background: rgba(16,21,31,.92);
    box-shadow: 0 24px 64px rgba(0,0,0,.24);
}

.pf-admin-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
}

.pf-admin-toolbar form,
.pf-admin-actions,
.pf-admin-row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.pf-admin-toolbar input,
.pf-admin-toolbar select,
.pf-admin-form input,
.pf-admin-form select,
.pf-admin-form textarea {
    min-height: 46px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 12px;
    padding: 11px 13px;
    color: #fff;
    background: #080b11;
}

.pf-admin-form textarea {
    min-height: 120px;
    resize: vertical;
}

.pf-admin-form {
    display: grid;
    gap: 16px;
    padding: 22px;
}

.pf-admin-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.pf-admin-form label {
    display: grid;
    gap: 8px;
    color: var(--pf-muted);
    font-weight: 800;
}

.pf-admin-table-wrap {
    overflow: auto;
}

.pf-admin-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 980px;
}

.pf-admin-table th,
.pf-admin-table td {
    padding: 14px 16px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    text-align: left;
    vertical-align: middle;
}

.pf-admin-table th {
    color: #ffd36e;
    font-size: 12px;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.pf-admin-thumb {
    width: 58px;
    height: 76px;
    object-fit: contain;
    border-radius: 10px;
    background: #111827;
}

.pf-admin-card {
    padding: 22px;
}

.pf-alert {
    padding: 14px 16px;
    border: 1px solid rgba(255,211,110,.24);
    border-radius: 14px;
    color: #fff6dd;
    background: rgba(246,173,39,.10);
}

.pf-alert.error {
    border-color: rgba(255,80,63,.36);
    background: rgba(255,80,63,.12);
}

.pf-danger {
    color: #fff;
    background: #b92828 !important;
    box-shadow: none !important;
}

.pf-admin-login {
    max-width: 460px;
    margin: 0 auto;
}

@media (max-width: 760px) {
    .pf-admin-form-grid {
        grid-template-columns: 1fr;
    }
}

/* Slider and refined storefront interaction */
.pf-hero-slider {
    position: relative;
    overflow: hidden;
    min-height: 760px;
    border-bottom: 1px solid rgba(246,173,39,.22);
    background: #06070b;
}

.pf-hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transform: scale(1.025);
    transition: opacity 680ms ease, visibility 680ms ease, transform 900ms ease;
    border-bottom: 0;
}

.pf-hero-slide.active {
    position: relative;
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

.pf-hero-forged,
.pf-hero-slide {
    background:
        linear-gradient(90deg, rgba(6,7,11,.96), rgba(7,11,18,.72) 52%, rgba(8,12,18,.48)),
        var(--pf-slide-bg) center / cover;
}

.pf-slider-controls {
    position: absolute;
    z-index: 5;
    left: 50%;
    bottom: 30px;
    display: flex;
    gap: 10px;
    transform: translateX(-50%);
}

.pf-slider-controls button {
    width: 42px;
    height: 8px;
    border: 0;
    border-radius: 999px;
    background: rgba(255,255,255,.30);
    cursor: pointer;
    transition: width 220ms ease, background 220ms ease, transform 220ms ease;
}

.pf-slider-controls button:hover,
.pf-slider-controls button.active {
    width: 62px;
    background: linear-gradient(135deg, #fff1bc, #f6ad27);
    transform: translateY(-2px);
}

.pf-hero-card-link {
    display: block;
    position: relative;
    border-radius: 16px;
    overflow: hidden;
}

.pf-hero-card-link::after {
    content: "View card";
    position: absolute;
    inset: auto 18px 18px auto;
    padding: 10px 14px;
    border-radius: 999px;
    color: #130b02;
    background: linear-gradient(135deg, #fff1bc, #f6ad27);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: uppercase;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 220ms ease, transform 220ms ease;
}

.pf-hero-card:hover .pf-hero-card-link::after {
    opacity: 1;
    transform: translateY(0);
}

.pf-hero-card-link img {
    transition: transform 320ms ease, filter 320ms ease;
}

.pf-hero-card:hover .pf-hero-card-link img {
    transform: scale(1.045) rotate(.6deg);
    filter: saturate(1.12) contrast(1.06);
}

.pf-button.primary,
.pf-header-action,
.pf-search-panel button,
.pf-newsletter-form button,
.pf-panel button {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.20);
    color: #140d04;
    background:
        radial-gradient(circle at 20% 10%, rgba(255,255,255,.85), transparent 22%),
        linear-gradient(135deg, #ffefb2 0%, #ffc149 44%, #f0941f 100%);
    box-shadow: 0 18px 40px rgba(246,173,39,.24), inset 0 1px 0 rgba(255,255,255,.45);
}

.pf-button.primary::before,
.pf-header-action::before,
.pf-search-panel button::before,
.pf-newsletter-form button::before,
.pf-panel button::before {
    content: "";
    position: absolute;
    inset: -40% auto auto -30%;
    width: 45%;
    height: 180%;
    transform: rotate(22deg) translateX(-120%);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
    transition: transform 480ms ease;
}

.pf-button.primary:hover::before,
.pf-header-action:hover::before,
.pf-search-panel button:hover::before,
.pf-newsletter-form button:hover::before,
.pf-panel button:hover::before {
    transform: rotate(22deg) translateX(360%);
}

.pf-button.glass:hover,
.pf-button:hover {
    border-color: rgba(255,211,110,.68);
    color: #fff6d8;
    background: rgba(255,255,255,.14);
}

.pf-product-media img {
    transition: transform 280ms ease, filter 280ms ease;
}

.pf-product-card:hover .pf-product-media img {
    transform: scale(1.06);
    filter: saturate(1.1) contrast(1.04);
}

@media (max-width: 1024px) {
    .pf-hero-slider {
        min-height: auto;
    }

    .pf-hero-slide {
        position: absolute;
    }

    .pf-hero-slide.active {
        position: relative;
    }
}

/* Header CTA readability fix */
.pf-header-action {
    min-width: 138px;
    color: #120900 !important;
    text-shadow: 0 1px 0 rgba(255,255,255,.36);
    font-weight: 900;
    letter-spacing: -.01em;
    background:
        radial-gradient(circle at 22% 8%, rgba(255,255,255,.55), transparent 24%),
        linear-gradient(135deg, #ffe19a 0%, #ffbd3f 48%, #e88416 100%) !important;
    box-shadow: 0 16px 34px rgba(246,173,39,.28), inset 0 0 0 1px rgba(255,255,255,.28);
}

.pf-header-action:hover,
.pf-header-action:focus-visible {
    color: #06070b !important;
    background:
        radial-gradient(circle at 22% 8%, rgba(255,255,255,.72), transparent 24%),
        linear-gradient(135deg, #fff0bd 0%, #ffc451 48%, #f09b22 100%) !important;
    outline: 2px solid rgba(255, 240, 189, .75);
    outline-offset: 3px;
}

/* Final contrast fixes: header CTA and hero featured card titles */
.pf-header .pf-header-action,
.pf-header .pf-header-action:visited {
    color: #1b0d00 !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0) 42%),
        linear-gradient(135deg, #ffe7a6 0%, #ffc247 48%, #f19a21 100%) !important;
    border: 1px solid rgba(255, 238, 190, .62) !important;
    box-shadow: 0 16px 36px rgba(246,173,39,.30), inset 0 0 0 1px rgba(92,45,0,.14) !important;
    text-shadow: none !important;
    font-weight: 900 !important;
}

.pf-header .pf-header-action::before {
    opacity: .38;
}

.pf-header .pf-header-action:hover,
.pf-header .pf-header-action:focus-visible {
    color: #0a0500 !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.34), rgba(255,255,255,0) 42%),
        linear-gradient(135deg, #fff0bd 0%, #ffcb5e 48%, #f4a02a 100%) !important;
    transform: translateY(-3px);
}

.pf-hero-card h2,
.pf-hero-card h2 a,
.pf-forge-card h2,
.pf-forge-card h2 a {
    color: #fff6dc !important;
    text-shadow: 0 3px 0 rgba(0,0,0,.42), 0 12px 28px rgba(0,0,0,.72) !important;
    -webkit-text-stroke: .35px rgba(0,0,0,.35);
}

.pf-hero-card p,
.pf-forge-card p {
    color: #ffffff !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.72) !important;
}

.pf-hero-card span,
.pf-forge-card span {
    color: #ffc247 !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.58) !important;
}

.pf-hero-card > div:last-child,
.pf-forge-card > div:last-child {
    border-radius: 0 0 18px 18px;
    background: linear-gradient(90deg, rgba(0,0,0,.62), rgba(0,0,0,.30), rgba(0,0,0,.08)) !important;
}

/* Premium hero card caption redesign */
.pf-header .pf-header-action,
.pf-header .pf-header-action:visited {
    color: #1a0b00 !important;
    background: linear-gradient(135deg, #ffe39b 0%, #ffba35 48%, #e88813 100%) !important;
    text-shadow: none !important;
}

.pf-header .pf-header-action::before {
    display: none !important;
}

.pf-hero-card > .pf-hero-card-caption,
.pf-forge-card > .pf-hero-card-caption {
    position: relative;
    margin-top: 16px;
    padding: 18px 18px 19px;
    overflow: hidden;
    border: 1px solid rgba(255, 211, 110, .28);
    border-radius: 18px;
    background:
        radial-gradient(circle at 16% 0%, rgba(255, 200, 80, .18), transparent 34%),
        linear-gradient(135deg, rgba(4, 7, 12, .94), rgba(10, 16, 26, .78) 58%, rgba(31, 22, 9, .66)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 18px 36px rgba(0,0,0,.26);
    backdrop-filter: blur(16px);
}

.pf-hero-card > .pf-hero-card-caption::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: linear-gradient(180deg, #fff0ba, #ffb72e, #a96408);
    box-shadow: 0 0 20px rgba(255,183,46,.48);
}

.pf-hero-card > .pf-hero-card-caption::after {
    content: "";
    position: absolute;
    inset: -60% -28% auto auto;
    width: 190px;
    height: 190px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 190, 75, .22), transparent 66%);
    pointer-events: none;
}

.pf-feature-label {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
    margin: 0 0 10px !important;
    padding: 7px 10px;
    border: 1px solid rgba(255, 194, 71, .28);
    border-radius: 999px;
    color: #ffd56e !important;
    background: rgba(255, 194, 71, .10);
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: .10em !important;
    line-height: 1 !important;
    text-transform: uppercase;
    text-shadow: none !important;
}

.pf-feature-label::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: #ffc247;
    box-shadow: 0 0 14px rgba(255,194,71,.84);
}

.pf-hero-card .pf-hero-card-caption h2,
.pf-hero-card .pf-hero-card-caption h2 a,
.pf-forge-card .pf-hero-card-caption h2,
.pf-forge-card .pf-hero-card-caption h2 a {
    margin: 0 !important;
    color: #fff8e3 !important;
    font-size: clamp(25px, 2.1vw, 34px) !important;
    line-height: .96 !important;
    letter-spacing: -.045em !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.34), 0 12px 24px rgba(0,0,0,.62) !important;
    -webkit-text-stroke: 0 !important;
}

.pf-hero-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 13px 0 0;
    padding: 0;
    list-style: none;
}

.pf-hero-tags li {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 999px;
    color: #f7fbff;
    background: rgba(255,255,255,.08);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .01em;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.07);
}

.pf-hero-tags li:first-child {
    color: #1b0d00;
    border-color: rgba(255, 211, 110, .42);
    background: linear-gradient(135deg, #ffe8a6, #ffbd3d);
}

/* Connected hero card: make image and caption feel like one piece */
.pf-hero-card.pf-forge-card {
    padding: 18px;
    border-color: rgba(255, 194, 71, .42);
    background:
        linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.05)),
        radial-gradient(circle at 50% 18%, rgba(255,194,71,.18), transparent 46%),
        rgba(9, 13, 20, .62);
}

.pf-hero-card .pf-hero-card-link {
    border-radius: 18px 18px 8px 8px;
    box-shadow: 0 20px 42px rgba(0,0,0,.34);
}

.pf-hero-card .pf-hero-card-link img {
    border-radius: 18px 18px 8px 8px;
}

.pf-hero-card > .pf-hero-card-caption,
.pf-forge-card > .pf-hero-card-caption {
    margin-top: -12px !important;
    border-top: 0 !important;
    border-radius: 8px 8px 18px 18px !important;
    padding-top: 28px !important;
    background:
        linear-gradient(180deg, rgba(255, 194, 71, .13), rgba(255, 194, 71, 0) 22%),
        radial-gradient(circle at 18% 0%, rgba(255, 200, 80, .17), transparent 36%),
        linear-gradient(135deg, rgba(4, 7, 12, .96), rgba(10, 16, 26, .82) 58%, rgba(31, 22, 9, .70)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 18px 36px rgba(0,0,0,.24) !important;
}

.pf-hero-card > .pf-hero-card-caption::before {
    top: -14px !important;
    bottom: 0 !important;
    width: 5px !important;
    border-radius: 999px 999px 0 0;
}

.pf-hero-card > .pf-hero-card-caption::after {
    content: "";
    position: absolute;
    top: -1px;
    left: 20px;
    right: 20px;
    width: auto;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255, 211, 110, .58), transparent);
    pointer-events: none;
}

.pf-hero-card-caption .pf-feature-label {
    margin-top: 0 !important;
}


/* Revert hero caption to simple previous layout, with readable white card names */
.pf-hero-card.pf-forge-card {
    padding: 18px !important;
}

.pf-hero-card .pf-hero-card-link,
.pf-hero-card .pf-hero-card-link img {
    border-radius: 16px !important;
}

.pf-hero-card > div:last-child,
.pf-forge-card > div:last-child {
    margin-top: 0 !important;
    padding: 18px 4px 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(90deg, rgba(0,0,0,.42), rgba(0,0,0,.18), rgba(0,0,0,0)) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.pf-hero-card > div:last-child::before,
.pf-hero-card > div:last-child::after,
.pf-forge-card > div:last-child::before,
.pf-forge-card > div:last-child::after {
    display: none !important;
}

.pf-hero-card > div:last-child span,
.pf-forge-card > div:last-child span {
    display: inline-flex !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #ffc247 !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase;
    text-shadow: 0 2px 8px rgba(0,0,0,.70) !important;
}

.pf-hero-card > div:last-child span::before,
.pf-forge-card > div:last-child span::before {
    display: none !important;
}

.pf-hero-card > div:last-child h2,
.pf-hero-card > div:last-child h2 a,
.pf-forge-card > div:last-child h2,
.pf-forge-card > div:last-child h2 a {
    margin: 6px 0 !important;
    color: #ffffff !important;
    font-size: 28px !important;
    line-height: 1.05 !important;
    letter-spacing: -.02em !important;
    text-shadow: 0 3px 12px rgba(0,0,0,.78) !important;
    -webkit-text-stroke: 0 !important;
}

.pf-hero-card > div:last-child p,
.pf-forge-card > div:last-child p {
    margin: 0 !important;
    color: #ffffff !important;
    font-weight: 700;
    text-shadow: 0 2px 10px rgba(0,0,0,.75) !important;
}

/* Classic hero card restore: original glass panel with readable white name */
.pf-hero-card.pf-forge-card {
    overflow: hidden !important;
    border: 1px solid rgba(255, 194, 71, .34) !important;
    border-radius: 22px !important;
    padding: 18px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.04)) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .32) !important;
}

.pf-hero-card .pf-hero-card-link,
.pf-hero-card .pf-hero-card-link img,
.pf-hero-card img {
    border-radius: 16px !important;
}

.pf-hero-card > div:last-child,
.pf-forge-card > div:last-child {
    margin-top: 0 !important;
    padding: 18px 4px 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.pf-hero-card > div:last-child::before,
.pf-hero-card > div:last-child::after,
.pf-forge-card > div:last-child::before,
.pf-forge-card > div:last-child::after {
    display: none !important;
    content: none !important;
}

.pf-hero-card > div:last-child span,
.pf-forge-card > div:last-child span {
    display: inline-flex !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #ffc247 !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.68) !important;
}

.pf-hero-card > div:last-child span::before,
.pf-forge-card > div:last-child span::before {
    display: none !important;
    content: none !important;
}

.pf-hero-card > div:last-child h2,
.pf-hero-card > div:last-child h2 a,
.pf-forge-card > div:last-child h2,
.pf-forge-card > div:last-child h2 a {
    margin: 6px 0 !important;
    color: #ffffff !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 28px !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    letter-spacing: -.02em !important;
    text-shadow: 0 3px 14px rgba(0,0,0,.82) !important;
    -webkit-text-stroke: 0 !important;
}

.pf-hero-card > div:last-child p,
.pf-forge-card > div:last-child p {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.72) !important;
}

/* PackForge hero card final restore: match the earlier template-style glass card, with readable white names. */
.pf-hero-card.pf-forge-card {
    width: 100% !important;
    max-width: 390px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 194, 71, .40) !important;
    border-radius: 22px !important;
    padding: 18px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.15), rgba(255,255,255,.045)),
        linear-gradient(135deg, rgba(255,194,71,.12), rgba(0,169,220,.08)) !important;
    box-shadow: 0 30px 80px rgba(0,0,0,.34) !important;
    backdrop-filter: blur(7px) !important;
}

.pf-hero-card .pf-card-shine {
    padding: 0 !important;
    opacity: .75 !important;
}

.pf-hero-card .pf-hero-card-link {
    display: block !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    box-shadow: 0 24px 50px rgba(0,0,0,.34) !important;
}

.pf-hero-card .pf-hero-card-link img,
.pf-hero-card > a > img,
.pf-hero-card img {
    width: 100% !important;
    height: 480px !important;
    object-fit: contain !important;
    border-radius: 16px !important;
    background: radial-gradient(circle at 50% 12%, #fff6df, #dfe8f1 62%, #7b5520) !important;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.08) !important;
}

.pf-hero-card > .pf-hero-card-caption,
.pf-hero-card > div:last-child,
.pf-forge-card > .pf-hero-card-caption,
.pf-forge-card > div:last-child {
    position: relative !important;
    margin: 0 -18px -18px !important;
    padding: 20px 22px 24px !important;
    border: 0 !important;
    border-radius: 0 0 22px 22px !important;
    background: linear-gradient(90deg, rgba(6,8,14,.56), rgba(6,8,14,.30) 58%, rgba(6,8,14,.08)) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.pf-hero-card > .pf-hero-card-caption::before,
.pf-hero-card > .pf-hero-card-caption::after,
.pf-hero-card > div:last-child::before,
.pf-hero-card > div:last-child::after,
.pf-forge-card > .pf-hero-card-caption::before,
.pf-forge-card > .pf-hero-card-caption::after,
.pf-forge-card > div:last-child::before,
.pf-forge-card > div:last-child::after {
    display: none !important;
    content: none !important;
}

.pf-hero-card > .pf-hero-card-caption span,
.pf-hero-card > div:last-child span,
.pf-forge-card > .pf-hero-card-caption span,
.pf-forge-card > div:last-child span {
    display: inline-flex !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #ffc247 !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.72) !important;
}

.pf-hero-card > .pf-hero-card-caption span::before,
.pf-hero-card > div:last-child span::before,
.pf-forge-card > .pf-hero-card-caption span::before,
.pf-forge-card > div:last-child span::before {
    display: none !important;
    content: none !important;
}

.pf-hero-card > .pf-hero-card-caption h2,
.pf-hero-card > .pf-hero-card-caption h2 a,
.pf-hero-card > div:last-child h2,
.pf-hero-card > div:last-child h2 a,
.pf-forge-card > .pf-hero-card-caption h2,
.pf-forge-card > .pf-hero-card-caption h2 a,
.pf-forge-card > div:last-child h2,
.pf-forge-card > div:last-child h2 a {
    margin: 6px 0 !important;
    color: #ffffff !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 28px !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    letter-spacing: -.02em !important;
    text-decoration: none !important;
    text-shadow: 0 3px 0 rgba(0,0,0,.38), 0 14px 30px rgba(0,0,0,.78) !important;
    -webkit-text-stroke: 0 !important;
}

.pf-hero-card > .pf-hero-card-caption p,
.pf-hero-card > div:last-child p,
.pf-forge-card > .pf-hero-card-caption p,
.pf-forge-card > div:last-child p {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.75) !important;
}

.pf-hero-card:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(255, 194, 71, .72) !important;
    box-shadow: 0 36px 90px rgba(0,0,0,.42), 0 0 34px rgba(255,194,71,.14) !important;
}

/* Final readability polish for dark lower sections. */
.pf-vault-copy h2,
.pf-vault-copy p,
.pf-footer h3,
.pf-footer p,
.pf-footer a {
    text-shadow: 0 2px 10px rgba(0,0,0,.62);
}

.pf-vault-copy h2,
.pf-footer h3 {
    color: #fff7de !important;
}

.pf-vault-copy p,
.pf-footer p,
.pf-footer a {
    color: #d8deea !important;
}

.pf-footer a:hover {
    color: #ffc247 !important;
}

/* Product grid media fix: keep tall card scans from overlapping titles and details. */
.pf-product-grid .pf-product-card {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100% !important;
}

.pf-product-grid .pf-product-media {
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    height: 315px !important;
    min-height: 315px !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

.pf-product-grid .pf-product-media img {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    padding: 18px !important;
    object-fit: contain !important;
    object-position: center !important;
}

.pf-product-grid .pf-product-media::after,
.pf-product-grid .pf-badge {
    z-index: 2 !important;
}

.pf-product-grid .pf-product-info {
    position: relative !important;
    z-index: 3 !important;
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    background: linear-gradient(180deg, rgba(21, 26, 37, .98), rgba(17, 21, 30, 1)) !important;
}

.pf-product-grid .pf-product-info p {
    flex: 1 1 auto !important;
}

.pf-product-grid .pf-product-bottom {
    margin-top: auto !important;
}

@media (max-width: 1024px) {
    .pf-product-grid .pf-product-media {
        height: 300px !important;
        min-height: 300px !important;
    }
}

@media (max-width: 640px) {
    .pf-product-grid .pf-product-media {
        height: 340px !important;
        min-height: 340px !important;
    }
}

/* Singles page hero image and copy treatment. */
.pf-page-title.pf-singles-hero {
    position: relative !important;
    overflow: hidden !important;
    padding: 110px 0 82px !important;
    background:
        linear-gradient(90deg, rgba(5, 6, 10, .94), rgba(8, 12, 20, .78) 52%, rgba(8, 12, 20, .52)),
        radial-gradient(circle at 12% 20%, rgba(255, 194, 71, .20), transparent 30%),
        var(--pf-page-hero-bg, none) center / cover no-repeat !important;
}

.pf-page-title.pf-singles-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(246, 173, 39, .18), transparent 34%),
        linear-gradient(315deg, rgba(0, 169, 220, .14), transparent 38%);
    pointer-events: none;
}

.pf-page-title.pf-singles-hero .pf-container {
    position: relative;
    z-index: 1;
}

.pf-page-title.pf-singles-hero h1 {
    max-width: 920px;
}

.pf-page-title.pf-singles-hero p {
    max-width: 720px;
    color: #e4e9f5 !important;
    text-shadow: 0 2px 14px rgba(0,0,0,.70);
}


/* Sold-out inventory state: keep products visible and mark the image clearly. */
.pf-product-media,
.pf-detail-media {
    position: relative;
}

.pf-product-card.is-sold-out .pf-product-media img,
.pf-detail-media.is-sold-out img {
    filter: grayscale(.25) saturate(.72) brightness(.58) contrast(1.05) !important;
}

.pf-sold-out-badge {
    position: absolute;
    z-index: 6;
    top: 50%;
    left: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 154px;
    padding: 12px 22px;
    border: 2px solid rgba(255, 194, 71, .92);
    border-radius: 999px;
    color: #fff7de;
    background: linear-gradient(135deg, rgba(5, 6, 10, .92), rgba(26, 15, 6, .88));
    box-shadow: 0 18px 38px rgba(0,0,0,.48), 0 0 28px rgba(255, 194, 71, .22), inset 0 1px 0 rgba(255,255,255,.14);
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-shadow: 0 2px 10px rgba(0,0,0,.65);
    transform: translate(-50%, -50%) rotate(-7deg);
    pointer-events: none;
    white-space: nowrap;
    backdrop-filter: blur(6px);
}

.pf-detail-media .pf-sold-out-badge {
    min-width: 220px;
    padding: 16px 30px;
    font-size: clamp(26px, 3vw, 42px);
}

.pf-product-bottom span.sold-out,
.pf-stock-state.sold-out {
    color: #ffc247 !important;
    font-weight: 900 !important;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.pf-product-card.is-sold-out {
    border-color: rgba(255, 194, 71, .44) !important;
}

/* Category page hero images. Edit image paths inline in category.php. */
.pf-page-title.pf-category-hero {
    position: relative !important;
    overflow: hidden !important;
    padding: 110px 0 82px !important;
    background:
        linear-gradient(90deg, rgba(5, 6, 10, .94), rgba(8, 12, 20, .78) 52%, rgba(8, 12, 20, .52)),
        radial-gradient(circle at 12% 20%, rgba(255, 194, 71, .20), transparent 30%),
        var(--pf-page-hero-bg, none) center / cover no-repeat !important;
}

.pf-page-title.pf-category-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(246, 173, 39, .18), transparent 34%),
        linear-gradient(315deg, rgba(0, 169, 220, .14), transparent 38%);
    pointer-events: none;
}

.pf-page-title.pf-category-hero .pf-container {
    position: relative;
    z-index: 1;
}

.pf-page-title.pf-category-hero h1 {
    max-width: 980px;
}

.pf-page-title.pf-category-hero p {
    max-width: 720px;
    color: #e4e9f5 !important;
    text-shadow: 0 2px 14px rgba(0,0,0,.70);
}

/* Singles live-search results behavior. */
.pf-singles-results-section {
    scroll-margin-top: 110px;
}

.pf-product-card[hidden],
.pf-live-empty[hidden] {
    display: none !important;
}

.pf-live-empty {
    margin-top: 24px;
    border: 1px solid rgba(255, 194, 71, .24);
    border-radius: 20px;
    padding: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)), var(--pf-panel);
    box-shadow: 0 22px 45px rgba(0,0,0,.20);
}

.pf-live-empty h2 {
    margin: 8px 0;
    color: #fff7de;
    font-family: Montserrat, sans-serif;
    font-size: clamp(24px, 3vw, 38px);
    text-transform: uppercase;
}

.pf-live-empty p {
    max-width: 720px;
    margin: 0;
    color: #d8deea;
}

#singles-results-list {
    scroll-margin-top: 120px;
}

/* Site-wide mobile responsiveness: prevent long headings and labels from cropping. */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

.pf-page-title h1,
.pf-hero-copy h1,
.pf-section-heading h2,
.pf-detail-copy h1,
.pf-newsletter h2,
.pf-product-info h3,
.pf-category-tile strong,
.pf-footer h3 {
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: auto;
}

.pf-container,
.pf-page-title .pf-container,
.pf-hero-grid,
.pf-detail-grid,
.pf-section-heading,
.pf-product-grid,
.pf-search-panel,
.pf-newsletter-inner,
.pf-footer-grid {
    max-width: 100%;
}

@media (max-width: 760px) {
    .pf-container {
        width: min(100% - 28px, 1240px) !important;
    }

    .pf-header-inner {
        min-height: 78px !important;
        gap: 10px !important;
    }

    .pf-brand {
        min-width: 0;
    }

    .pf-brand-wordmark,
    .pf-brand span {
        min-width: 0;
    }

    .pf-brand-wordmark strong,
    .pf-brand strong {
        font-size: clamp(19px, 6vw, 27px) !important;
        line-height: 1 !important;
        white-space: normal !important;
    }

    .pf-brand-wordmark small,
    .pf-brand small {
        font-size: clamp(10px, 3.2vw, 13px) !important;
        line-height: 1.15 !important;
        white-space: normal !important;
    }

    .pf-menu-toggle {
        flex: 0 0 auto;
        padding: 12px 18px !important;
    }

    .pf-page-title,
    .pf-page-title.pf-singles-hero,
    .pf-page-title.pf-category-hero {
        padding: 76px 0 58px !important;
    }

    .pf-hero-copy h1,
    .pf-page-title h1,
    .pf-section-heading h2,
    .pf-detail-copy h1,
    .pf-newsletter h2 {
        max-width: 100% !important;
        font-size: clamp(34px, 11.5vw, 52px) !important;
        line-height: 1.02 !important;
        letter-spacing: -0.055em !important;
        text-wrap: balance;
    }

    .pf-page-title p,
    .pf-hero-copy p,
    .pf-detail-copy p,
    .pf-heading-copy,
    .pf-newsletter p {
        max-width: 100% !important;
        font-size: clamp(15px, 4.5vw, 19px) !important;
        line-height: 1.5 !important;
    }

    .pf-section-heading.split,
    .pf-result-bar,
    .pf-detail-buy {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .pf-search-panel {
        gap: 14px !important;
    }

    .pf-search-panel label,
    .pf-search-panel input,
    .pf-search-panel select,
    .pf-search-panel button {
        min-width: 0 !important;
        width: 100% !important;
    }

    .pf-product-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 420px) {
    .pf-container {
        width: calc(100% - 24px) !important;
    }

    .pf-brand-logo {
        width: 46px !important;
        height: 46px !important;
    }

    .pf-hero-copy h1,
    .pf-page-title h1,
    .pf-section-heading h2,
    .pf-detail-copy h1,
    .pf-newsletter h2 {
        font-size: clamp(30px, 10.8vw, 44px) !important;
        line-height: 1.04 !important;
        letter-spacing: -0.06em !important;
    }

    .pf-kicker {
        font-size: 12px !important;
        line-height: 1.25 !important;
        overflow-wrap: anywhere;
    }
}

/* Product detail gallery and lightbox. */
.pf-product-gallery {
    display: grid;
    gap: 14px;
}

.pf-product-gallery .pf-detail-media {
    display: grid;
    place-items: center;
    min-height: 520px;
}

.pf-gallery-slide {
    display: none;
    width: 100%;
    border: 0;
    padding: 0;
    background: transparent;
    cursor: zoom-in;
}

.pf-gallery-slide.active {
    display: block;
}

.pf-gallery-slide img {
    width: 100%;
    max-height: 620px;
    object-fit: contain;
}

.pf-gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    gap: 10px;
}

.pf-gallery-thumbs button {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(255, 194, 71, .22);
    border-radius: 14px;
    padding: 8px;
    color: #e8edf7;
    background: rgba(255,255,255,.055);
    cursor: pointer;
    text-align: left;
    transition: border-color 180ms ease, transform 180ms ease, background 180ms ease;
}

.pf-gallery-thumbs button:hover,
.pf-gallery-thumbs button.active {
    border-color: rgba(255, 194, 71, .72);
    background: rgba(255, 194, 71, .12);
    transform: translateY(-2px);
}

.pf-gallery-thumbs img {
    width: 44px;
    height: 58px;
    border-radius: 8px;
    object-fit: cover;
    background: #e8e9ed;
}

.pf-gallery-thumbs span {
    min-width: 0;
    font-weight: 900;
    overflow-wrap: anywhere;
}

.pf-lightbox[hidden] {
    display: none !important;
}

.pf-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) 64px;
    align-items: center;
    gap: 12px;
    padding: 28px;
    background: rgba(0, 0, 0, .88);
    backdrop-filter: blur(8px);
}

.pf-lightbox figure {
    display: grid;
    gap: 12px;
    justify-items: center;
    margin: 0;
}

.pf-lightbox img {
    max-width: min(100%, 980px);
    max-height: 82vh;
    border-radius: 18px;
    object-fit: contain;
    box-shadow: 0 28px 80px rgba(0,0,0,.55);
    background: #eef1f5;
}

.pf-lightbox figcaption {
    color: #fff7de;
    font-family: Montserrat, sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    text-shadow: 0 2px 10px rgba(0,0,0,.60);
}

.pf-lightbox-close,
.pf-lightbox-nav {
    border: 1px solid rgba(255, 194, 71, .34);
    color: #fff7de;
    background: rgba(16, 18, 26, .78);
    box-shadow: 0 18px 42px rgba(0,0,0,.34);
    cursor: pointer;
}

.pf-lightbox-close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 46px;
    height: 46px;
    border-radius: 999px;
    font-size: 30px;
    line-height: 1;
}

.pf-lightbox-nav {
    width: 54px;
    height: 72px;
    border-radius: 999px;
    font-size: 44px;
    line-height: 1;
}

@media (max-width: 760px) {
    .pf-product-gallery .pf-detail-media {
        min-height: 380px;
    }

    .pf-lightbox {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        gap: 6px;
        padding: 18px 10px;
    }

    .pf-lightbox-nav {
        width: 42px;
        height: 58px;
        font-size: 34px;
    }
}

/* Admin product gallery controls */
.pf-admin-gallery-panel {
    border: 1px solid rgba(255, 184, 70, .22);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(255, 184, 70, .07), rgba(13, 18, 28, .86));
    padding: 20px;
    display: grid;
    gap: 16px;
}

.pf-admin-gallery-panel legend {
    padding: 0 10px;
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: clamp(1.15rem, 2vw, 1.6rem);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.pf-admin-gallery-panel p {
    margin: 0;
    color: var(--pf-muted);
    max-width: 920px;
}

.pf-admin-gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 14px;
}

.pf-admin-gallery-item {
    display: grid;
    gap: 12px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 16px;
    padding: 12px;
    background: rgba(8, 11, 17, .72);
}

.pf-admin-gallery-thumb {
    width: 100%;
    height: 190px;
    object-fit: contain;
    border-radius: 12px;
    background: radial-gradient(circle at center, rgba(255,255,255,.10), rgba(0,0,0,.25));
    border: 1px solid rgba(255,255,255,.10);
}

.pf-admin-check {
    display: flex !important;
    grid-template-columns: none !important;
    flex-direction: row;
    align-items: center;
    gap: 10px !important;
    color: var(--pf-cream) !important;
}

.pf-admin-check input {
    min-height: auto !important;
    width: auto;
}

.pf-admin-check.danger {
    color: #ffb0a3 !important;
}

.pf-admin-empty-gallery,
.pf-admin-note {
    border: 1px dashed rgba(255,255,255,.16);
    border-radius: 14px;
    padding: 13px 14px;
    color: var(--pf-muted);
    background: rgba(0,0,0,.18);
}

.pf-admin-upload-wide input {
    width: 100%;
}

@media (max-width: 720px) {
    .pf-admin-gallery-panel {
        padding: 16px;
    }

    .pf-admin-gallery-grid {
        grid-template-columns: 1fr;
    }

    .pf-admin-gallery-thumb {
        height: 170px;
    }
}

/* Product gallery thumbnail labels removed */
.pf-gallery-thumbs {
    grid-template-columns: repeat(auto-fit, minmax(76px, 1fr));
}

.pf-gallery-thumbs button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 7px;
    text-align: center;
}

.pf-gallery-thumbs img {
    width: 100%;
    height: 74px;
    border-radius: 10px;
    object-fit: cover;
}

.pf-gallery-thumbs span {
    display: none !important;
}
/* Admin generated SKU field */
.pf-admin-sku-field input[readonly] {
    color: var(--pf-gold);
    border-color: rgba(255, 194, 71, .35);
    background: linear-gradient(135deg, rgba(255, 194, 71, .08), rgba(8, 11, 17, .96));
    cursor: default;
}

.pf-admin-sku-field small {
    color: var(--pf-muted);
    font-weight: 600;
    line-height: 1.45;
}
/* Admin category-hidden fields */
.pf-admin-form [data-category-field][hidden] {
    display: none !important;
}
/* PackForge inventory request CTA */
.pf-store-cta {
    position: relative;
    overflow: hidden;
    border-top: 1px solid rgba(255, 194, 71, .18);
    border-bottom: 1px solid rgba(255, 194, 71, .16);
    background:
        radial-gradient(circle at 18% 0%, rgba(255, 194, 71, .18), transparent 34%),
        radial-gradient(circle at 86% 70%, rgba(206, 42, 38, .16), transparent 36%),
        linear-gradient(135deg, rgba(12, 16, 25, .98), rgba(9, 11, 17, .98));
}

.pf-store-cta::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 28px;
    pointer-events: none;
}

.pf-store-cta-inner {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
    padding: clamp(42px, 5vw, 70px) 0;
}

.pf-store-cta-copy {
    max-width: 840px;
}

.pf-store-cta .pf-kicker {
    color: var(--pf-gold);
}

.pf-store-cta h2 {
    margin: 10px 0 12px;
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: clamp(32px, 4.6vw, 62px);
    line-height: .98;
    letter-spacing: -.045em;
    text-transform: uppercase;
    text-wrap: balance;
}

.pf-store-cta p {
    margin: 0;
    max-width: 720px;
    color: var(--pf-muted);
    font-size: 1.02rem;
    line-height: 1.65;
}

.pf-store-cta-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 12px;
}

.pf-store-cta-actions .pf-button {
    min-width: 154px;
    justify-content: center;
    box-shadow: 0 18px 46px rgba(0, 0, 0, .28);
}

.pf-store-cta-actions .pf-button.glass {
    border-color: rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .075);
}

.pf-store-cta-actions .pf-button.glass:hover {
    border-color: rgba(255, 194, 71, .46);
    background: rgba(255, 194, 71, .10);
}

@media (max-width: 860px) {
    .pf-store-cta-inner {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .pf-store-cta-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 560px) {
    .pf-store-cta::before {
        inset: 10px;
        border-radius: 22px;
    }

    .pf-store-cta h2 {
        font-size: clamp(31px, 10vw, 44px);
    }

    .pf-store-cta-actions,
    .pf-store-cta-actions .pf-button {
        width: 100%;
    }
}
/* Customer account and want-list flow */
.pf-account-hero {
    background-size: cover;
    background-position: center;
    border-bottom: 1px solid rgba(255, 194, 71, .18);
}

.pf-account-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
    gap: 28px;
    align-items: end;
}

.pf-account-hero-card,
.pf-account-intent,
.pf-account-card,
.pf-admin-request-card {
    border: 1px solid rgba(255, 194, 71, .20);
    background:
        linear-gradient(135deg, rgba(255, 194, 71, .07), transparent 42%),
        rgba(15, 20, 30, .92);
    box-shadow: 0 24px 70px rgba(0, 0, 0, .30);
}

.pf-account-hero-card {
    display: grid;
    gap: 8px;
    padding: 24px;
    border-radius: 22px;
}

.pf-account-hero-card strong {
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: 1.3rem;
    text-transform: uppercase;
}

.pf-account-hero-card span {
    color: var(--pf-muted);
}

.pf-account-shell {
    display: grid;
    gap: 22px;
}

.pf-account-grid.pretty,
.pf-account-dashboard {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 22px;
    align-items: start;
}

.pf-account-dashboard {
    grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
}

.pf-account-card {
    border-radius: 24px;
    padding: clamp(22px, 3vw, 34px);
}

.pf-account-section .pf-panel h2,
.pf-account-section .pf-account-card h2,
.pf-admin-request-card h2 {
    margin: 6px 0 18px;
    color: var(--pf-cream) !important;
    font-family: var(--pf-heading);
    font-weight: 900;
    letter-spacing: -.025em;
    text-transform: uppercase;
}

.pf-account-section label,
.pf-profile-form label,
.pf-request-box label {
    display: grid;
    gap: 8px;
    color: #dce7ff;
    font-weight: 800;
}

.pf-account-section input,
.pf-account-section select,
.pf-account-section textarea {
    min-height: 52px;
    border: 1px solid rgba(255, 194, 71, .22);
    border-radius: 14px;
    background: rgba(6, 9, 15, .86);
    color: #fff;
    padding: 12px 15px;
    outline: none;
}

.pf-account-section textarea {
    min-height: 140px;
    resize: vertical;
}

.pf-account-section input:focus,
.pf-account-section select:focus,
.pf-account-section textarea:focus {
    border-color: rgba(255, 194, 71, .78);
    box-shadow: 0 0 0 4px rgba(255, 194, 71, .10);
}

.pf-form-two {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.pf-account-intent {
    display: flex;
    align-items: center;
    gap: 16px;
    border-radius: 20px;
    padding: 16px;
}

.pf-account-intent img {
    width: 82px;
    height: 104px;
    object-fit: cover;
    border-radius: 14px;
    background: #fff;
}

.pf-account-intent strong,
.pf-want-item strong,
.pf-history-card strong {
    color: var(--pf-cream);
}

.pf-account-intent p,
.pf-profile-card p,
.pf-history-card p {
    margin: 4px 0 0;
    color: var(--pf-muted);
}

.pf-profile-form,
.pf-request-box {
    display: grid;
    gap: 14px;
}

.pf-want-list {
    display: grid;
    gap: 14px;
    margin: 18px 0;
}

.pf-want-item {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr) minmax(150px, 210px);
    gap: 16px;
    align-items: center;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 18px;
    background: rgba(0, 0, 0, .18);
}

.pf-want-item img {
    width: 84px;
    height: 108px;
    object-fit: cover;
    border-radius: 12px;
    background: #fff;
}

.pf-want-item span,
.pf-want-item small,
.pf-history-card span,
.pf-history-card small {
    display: block;
    color: var(--pf-muted);
}

.pf-want-qty {
    display: grid;
    gap: 8px;
}

.pf-want-qty label {
    font-size: .88rem;
}

.pf-want-qty input {
    min-height: 42px;
}

.pf-request-box {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .10);
}

.pf-request-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    color: var(--pf-muted);
}

.pf-request-total strong {
    color: var(--pf-gold);
    font-size: 1.5rem;
}

.pf-history-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 14px;
}

.pf-history-card {
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 18px;
    padding: 16px;
    background: rgba(0,0,0,.18);
}

.pf-inline-cart-form {
    display: inline-flex;
    margin: 0;
}

.pf-inline-cart-form .pf-button {
    border: 0;
}

/* Admin request queue */
.pf-admin-request-grid {
    display: grid;
    gap: 18px;
}

.pf-admin-request-card {
    border-radius: 24px;
    padding: 20px;
}

.pf-admin-request-card header,
.pf-admin-request-card footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
}

.pf-admin-request-card header p {
    margin: 0;
    color: var(--pf-muted);
}

.pf-request-status {
    border-radius: 999px;
    padding: 9px 13px;
    color: #090b10;
    background: var(--pf-gold);
    font-size: .82rem;
    text-transform: uppercase;
}

.pf-request-status.processing { background: #7bdcff; }
.pf-request-status.ready { background: #9fff9b; }
.pf-request-status.completed { background: #d4d9e5; }
.pf-request-status.cancelled { background: #ff8d80; }

.pf-admin-contact-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 18px 0;
}

.pf-admin-contact-grid div {
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 14px;
    padding: 12px;
    background: rgba(0,0,0,.18);
}

.pf-admin-contact-grid span,
.pf-admin-request-item span {
    display: block;
    color: var(--pf-muted);
    font-size: .82rem;
}

.pf-admin-contact-grid strong,
.pf-admin-request-item strong {
    color: var(--pf-cream);
    overflow-wrap: anywhere;
}

.pf-admin-request-items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 12px;
    margin: 18px 0;
}

.pf-admin-request-item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 14px;
    padding: 10px;
    background: rgba(0,0,0,.18);
}

.pf-admin-request-item img {
    width: 58px;
    height: 74px;
    object-fit: cover;
    border-radius: 10px;
    background: #fff;
}

.pf-admin-request-card blockquote {
    margin: 18px 0;
    border-left: 3px solid var(--pf-gold);
    padding: 12px 14px;
    color: #e8edf7;
    background: rgba(255,255,255,.045);
    border-radius: 0 14px 14px 0;
}

.pf-admin-request-card footer form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

@media (max-width: 920px) {
    .pf-account-hero-grid,
    .pf-account-grid.pretty,
    .pf-account-dashboard,
    .pf-admin-contact-grid {
        grid-template-columns: 1fr;
    }

    .pf-want-item {
        grid-template-columns: 70px minmax(0, 1fr);
    }

    .pf-want-qty {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    .pf-form-two,
    .pf-admin-request-items {
        grid-template-columns: 1fr;
    }

    .pf-account-intent {
        align-items: flex-start;
    }
}
/* Account dashboard polish overrides */
.pf-account-section {
    background:
        radial-gradient(circle at 20% 0%, rgba(255, 194, 71, .08), transparent 28rem),
        radial-gradient(circle at 95% 30%, rgba(36, 214, 255, .07), transparent 30rem);
}

.pf-account-section .pf-alert {
    max-width: none;
    border-radius: 18px;
    padding: 16px 18px;
    border-color: rgba(255, 194, 71, .28);
    background: linear-gradient(135deg, rgba(255, 194, 71, .12), rgba(255, 194, 71, .045));
    color: var(--pf-cream);
    box-shadow: 0 16px 44px rgba(0,0,0,.24);
}

.pf-account-dashboard {
    gap: 28px;
    align-items: stretch;
}

.pf-profile-card,
.pf-want-list-card {
    position: relative;
    overflow: hidden;
    border-color: rgba(255, 194, 71, .26);
    background:
        linear-gradient(145deg, rgba(255, 194, 71, .09), transparent 38%),
        linear-gradient(180deg, rgba(18, 23, 34, .96), rgba(11, 14, 21, .96));
}

.pf-profile-card::before,
.pf-want-list-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(255, 194, 71, .20), transparent 42%);
    height: 1px;
}

.pf-profile-card > *,
.pf-want-list-card > * {
    position: relative;
}

.pf-profile-card h2 {
    font-size: clamp(1.5rem, 2.4vw, 2.15rem);
    line-height: 1.02;
    text-shadow: 0 3px 0 rgba(0,0,0,.28);
}

.pf-profile-card p {
    margin-bottom: 16px;
    color: #dce7ff;
}

.pf-profile-form {
    margin: 16px 0 18px;
}

.pf-account-section .pf-profile-card .pf-danger {
    width: auto;
    min-width: 112px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.10);
    background: linear-gradient(135deg, #c42d2c, #8f1d1d) !important;
    color: #fff !important;
}

.pf-account-section .pf-profile-card .pf-button.glass {
    border-color: rgba(255,255,255,.18);
    background: rgba(255,255,255,.08);
    color: #fff;
}

.pf-want-list-card {
    min-height: 410px;
}

.pf-want-list-card .pf-section-heading.compact {
    margin: 0 0 26px;
    align-items: flex-start;
}

.pf-want-list-card .pf-section-heading.compact h2 {
    font-size: clamp(2rem, 4vw, 4rem);
    line-height: .95;
    max-width: 720px;
}

.pf-want-list-card .pf-link-arrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255, 194, 71, .24);
    border-radius: 999px;
    padding: 10px 14px;
    color: var(--pf-cream);
    background: rgba(255,255,255,.055);
    white-space: nowrap;
}

.pf-want-list-card .pf-link-arrow:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 194, 71, .6);
    background: rgba(255, 194, 71, .12);
}

.pf-account-section .pf-empty-state.inline {
    position: relative;
    overflow: hidden;
    margin-top: 10px;
    border: 1px solid rgba(255, 194, 71, .18);
    border-radius: 22px;
    padding: clamp(24px, 4vw, 42px);
    background:
        radial-gradient(circle at 12% 0%, rgba(255, 194, 71, .18), transparent 20rem),
        linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

.pf-account-section .pf-empty-state.inline::after {
    content: "PF";
    position: absolute;
    right: clamp(16px, 4vw, 42px);
    bottom: -20px;
    color: rgba(255,255,255,.035);
    font-family: var(--pf-heading);
    font-size: clamp(5rem, 13vw, 11rem);
    font-weight: 900;
    letter-spacing: -.08em;
    pointer-events: none;
}

.pf-account-section .pf-empty-state.inline .pf-kicker {
    color: var(--pf-gold) !important;
}

.pf-account-section .pf-empty-state.inline h3 {
    position: relative;
    max-width: 560px;
    margin: 12px 0 22px;
    color: var(--pf-cream) !important;
    font-family: var(--pf-heading);
    font-size: clamp(1.55rem, 3vw, 2.45rem);
    line-height: 1.05;
    letter-spacing: -.035em;
    text-transform: uppercase;
    text-shadow: 0 4px 0 rgba(0,0,0,.22);
}

.pf-account-section .pf-empty-state.inline .pf-button {
    position: relative;
}

.pf-account-section input,
.pf-account-section select,
.pf-account-section textarea {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

.pf-account-section .pf-button {
    min-height: 48px;
}

@media (max-width: 920px) {
    .pf-want-list-card .pf-section-heading.compact {
        gap: 14px;
    }

    .pf-want-list-card .pf-link-arrow {
        white-space: normal;
    }
}
/* Top-bar customer controls and dedicated want-list page */
.pf-topline-account {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    color: #eaf1ff;
}

.pf-topline-account > span {
    color: var(--pf-muted);
}

.pf-topline-account a,
.pf-topline-account button {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    border: 1px solid rgba(255, 194, 71, .24);
    border-radius: 999px;
    padding: 5px 11px;
    color: var(--pf-cream);
    background: rgba(255, 194, 71, .08);
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
    transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.pf-topline-account a:hover,
.pf-topline-account button:hover {
    transform: translateY(-1px);
    border-color: rgba(255, 194, 71, .64);
    background: rgba(255, 194, 71, .16);
}

.pf-topline-account form {
    margin: 0;
}

.pf-topline-account button {
    color: #ffd4ce;
    border-color: rgba(255, 110, 95, .28);
    background: rgba(255, 80, 63, .10);
}

.pf-want-list-hero {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(5, 6, 10, .94), rgba(8, 12, 20, .80) 54%, rgba(8, 12, 20, .58)),
        radial-gradient(circle at 12% 0%, rgba(255, 194, 71, .12), transparent 28rem),
        radial-gradient(circle at 100% 20%, rgba(36, 214, 255, .10), transparent 24rem),
        var(--pf-page-hero-bg, none) center / cover no-repeat,
        linear-gradient(135deg, rgba(11, 13, 18, .98), rgba(14, 19, 29, .98));
    border-bottom: 1px solid rgba(255, 194, 71, .16);
}

.pf-want-list-hero .pf-container {
    position: relative;
    z-index: 1;
}

.pf-want-list-hero .pf-section-heading {
    align-items: center;
}

.pf-want-list-hero h1 {
    max-width: 850px;
}

.pf-want-page-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(290px, 390px);
    gap: 24px;
    align-items: start;
}

.pf-want-list-main {
    min-height: 520px;
}

.pf-request-sidebar {
    position: sticky;
    top: 118px;
    display: grid;
    gap: 16px;
    background:
        linear-gradient(145deg, rgba(255, 194, 71, .12), transparent 42%),
        rgba(15, 20, 30, .94);
}

.pf-request-sidebar h2,
.pf-account-summary-card h2 {
    margin: 6px 0 8px;
    color: var(--pf-cream) !important;
    font-family: var(--pf-heading);
    font-weight: 900;
    line-height: .98;
    text-transform: uppercase;
}

.pf-request-sidebar p,
.pf-account-summary-card p {
    margin: 0;
    color: var(--pf-muted);
    line-height: 1.6;
}

.pf-request-sidebar .pf-request-box {
    margin-top: 4px;
    padding-top: 16px;
}

.pf-request-sidebar .pf-link-arrow {
    justify-self: start;
}

.pf-account-summary-card {
    display: grid;
    gap: 18px;
    align-content: start;
}

.pf-account-summary-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.pf-account-mini-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 4px;
}

.pf-account-mini-stats div {
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 16px;
    padding: 14px;
    background: rgba(0,0,0,.18);
}

.pf-account-mini-stats span {
    display: block;
    color: var(--pf-muted);
    font-size: .82rem;
    font-weight: 800;
    text-transform: uppercase;
}

.pf-account-mini-stats strong {
    display: block;
    margin-top: 5px;
    color: var(--pf-cream);
    overflow-wrap: anywhere;
}

.pf-button:disabled,
.pf-button[disabled] {
    cursor: not-allowed;
    opacity: .48;
    filter: grayscale(.35);
}

@media (max-width: 1024px) {
    .pf-want-page-grid {
        grid-template-columns: 1fr;
    }

    .pf-request-sidebar {
        position: static;
    }
}

@media (max-width: 760px) {
    .pf-topline-inner {
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        padding: 9px 0;
    }

    .pf-topline-account {
        justify-content: flex-start;
    }

    .pf-account-mini-stats {
        grid-template-columns: 1fr;
    }
}
/* Account contact settings relocation */
.pf-profile-contact-list {
    display: grid;
    gap: 12px;
    margin: 22px 0 20px;
}

.pf-profile-contact-list div {
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 16px;
    padding: 14px;
    background: rgba(0,0,0,.18);
}

.pf-profile-contact-list span {
    display: block;
    color: var(--pf-muted);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.pf-profile-contact-list strong {
    display: block;
    margin-top: 5px;
    color: var(--pf-cream);
    overflow-wrap: anywhere;
}

.pf-profile-card .pf-link-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 194, 71, .24);
    border-radius: 999px;
    padding: 10px 14px;
    color: var(--pf-cream);
    background: rgba(255,255,255,.055);
}

.pf-profile-card .pf-link-arrow:hover {
    border-color: rgba(255, 194, 71, .58);
    background: rgba(255, 194, 71, .12);
}

.pf-contact-settings-card {
    scroll-margin-top: 120px;
    background:
        radial-gradient(circle at 12% 0%, rgba(255, 194, 71, .10), transparent 24rem),
        rgba(15, 20, 30, .92);
}

.pf-contact-settings-card .pf-section-heading.compact {
    margin-bottom: 20px;
}

.pf-contact-settings-card .pf-section-heading p {
    margin: 8px 0 0;
    max-width: 720px;
    color: var(--pf-muted);
}

.pf-contact-settings-form {
    display: grid;
    gap: 16px;
    max-width: 920px;
}

.pf-contact-settings-form .pf-button {
    justify-self: start;
    min-width: 190px;
}

.pf-topline-account button {
    color: var(--pf-cream) !important;
    border-color: rgba(255, 255, 255, .16) !important;
    background: rgba(255, 255, 255, .055) !important;
}

.pf-topline-account button:hover {
    border-color: rgba(255, 194, 71, .50) !important;
    background: rgba(255, 194, 71, .12) !important;
}
/* Premium FAQ page */
.pf-faq-hero {
    background-size: cover;
    background-position: center;
    border-bottom: 1px solid rgba(255, 194, 71, .18);
}

.pf-faq-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 390px);
    gap: 32px;
    align-items: end;
}

.pf-faq-hero-card,
.pf-faq-sidebar,
.pf-faq-item {
    border: 1px solid rgba(255, 194, 71, .22);
    background:
        linear-gradient(145deg, rgba(255, 194, 71, .09), transparent 44%),
        rgba(14, 18, 28, .92);
    box-shadow: 0 24px 70px rgba(0, 0, 0, .30);
}

.pf-faq-hero-card {
    display: grid;
    gap: 14px;
    border-radius: 24px;
    padding: 24px;
}

.pf-faq-hero-card span,
.pf-faq-mini-card span {
    color: var(--pf-muted);
    font-weight: 700;
}

.pf-faq-hero-card strong,
.pf-faq-mini-card strong {
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: 1.15rem;
    line-height: 1.2;
    text-transform: uppercase;
}

.pf-faq-section {
    background:
        radial-gradient(circle at 15% 0%, rgba(255, 194, 71, .08), transparent 28rem),
        radial-gradient(circle at 90% 25%, rgba(36, 214, 255, .07), transparent 30rem);
}

.pf-faq-layout {
    display: grid;
    grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.pf-faq-sidebar {
    position: sticky;
    top: 118px;
    display: grid;
    gap: 16px;
    border-radius: 24px;
    padding: clamp(22px, 3vw, 32px);
}

.pf-faq-sidebar h2 {
    margin: 0;
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: clamp(2rem, 3.5vw, 3.4rem);
    line-height: .96;
    letter-spacing: -.045em;
    text-transform: uppercase;
}

.pf-faq-sidebar p {
    margin: 0;
    color: var(--pf-muted);
    line-height: 1.65;
}

.pf-faq-mini-card {
    display: grid;
    gap: 8px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 18px;
    padding: 16px;
    background: rgba(0,0,0,.18);
}

.pf-faq-accordion {
    display: grid;
    gap: 14px;
}

.pf-faq-item {
    overflow: hidden;
    border-radius: 22px;
    transition: border-color 180ms ease, transform 180ms ease, background 180ms ease;
}

.pf-faq-item[open] {
    border-color: rgba(255, 194, 71, .58);
    background:
        radial-gradient(circle at 0% 0%, rgba(255, 194, 71, .14), transparent 22rem),
        rgba(17, 22, 32, .96);
}

.pf-faq-item:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 194, 71, .46);
}

.pf-faq-item summary {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 34px;
    gap: 16px;
    align-items: center;
    min-height: 92px;
    padding: 20px clamp(18px, 3vw, 30px);
    cursor: pointer;
    list-style: none;
}

.pf-faq-item summary::-webkit-details-marker {
    display: none;
}

.pf-faq-item summary span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255, 194, 71, .26);
    border-radius: 999px;
    color: var(--pf-gold);
    background: rgba(255, 194, 71, .08);
    font-family: var(--pf-heading);
    font-weight: 900;
}

.pf-faq-item summary strong {
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: clamp(1.12rem, 2.1vw, 1.6rem);
    line-height: 1.08;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.pf-faq-item summary i {
    position: relative;
    display: block;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: rgba(255,255,255,.075);
    border: 1px solid rgba(255,255,255,.12);
}

.pf-faq-item summary i::before,
.pf-faq-item summary i::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 14px;
    height: 2px;
    border-radius: 999px;
    background: var(--pf-gold);
    transform: translate(-50%, -50%);
    transition: transform 180ms ease;
}

.pf-faq-item summary i::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.pf-faq-item[open] summary i::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.pf-faq-answer {
    padding: 0 clamp(18px, 3vw, 30px) clamp(22px, 3vw, 30px) calc(clamp(18px, 3vw, 30px) + 70px);
}

.pf-faq-answer p {
    margin: 0;
    max-width: 780px;
    color: #dce7ff;
    font-size: 1rem;
    line-height: 1.75;
}

@media (max-width: 960px) {
    .pf-faq-hero-grid,
    .pf-faq-layout {
        grid-template-columns: 1fr;
    }

    .pf-faq-sidebar {
        position: static;
    }
}

@media (max-width: 560px) {
    .pf-faq-item summary {
        grid-template-columns: 42px minmax(0, 1fr) 30px;
        gap: 11px;
        min-height: 82px;
        padding: 17px;
    }

    .pf-faq-item summary span {
        width: 38px;
        height: 38px;
    }

    .pf-faq-answer {
        padding: 0 17px 20px 17px;
    }
}
/* FAQ accordion motion polish */
.pf-faq-item {
    position: relative;
    isolation: isolate;
    animation: pfFaqLiftIn 560ms cubic-bezier(.16, 1, .3, 1) both;
    animation-delay: var(--faq-delay, 0ms);
    will-change: transform, opacity;
}

.pf-faq-item::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: 0;
    background:
        radial-gradient(circle at 14% 18%, rgba(255, 213, 127, .20), transparent 23rem),
        linear-gradient(135deg, rgba(255, 194, 71, .12), rgba(36, 214, 255, .05));
    transition: opacity 430ms cubic-bezier(.22, 1, .36, 1);
}

.pf-faq-item:hover::before,
.pf-faq-item[open]::before,
.pf-faq-item.is-active::before {
    opacity: 1;
}

.pf-faq-item summary {
    transition: color 220ms ease, background 430ms cubic-bezier(.22, 1, .36, 1), transform 220ms ease;
}

.pf-faq-item summary:hover {
    background: rgba(255, 255, 255, .025);
}

.pf-faq-item[open],
.pf-faq-item.is-active {
    box-shadow: 0 24px 70px rgba(0, 0, 0, .34), 0 0 0 1px rgba(255, 194, 71, .12) inset;
}

.pf-faq-item[open] summary span,
.pf-faq-item.is-active summary span {
    background: linear-gradient(135deg, #fff1b6, #ffb12a);
    color: #090b11;
    box-shadow: 0 12px 36px rgba(255, 178, 44, .28);
}

.pf-faq-item summary i {
    transition: transform 360ms cubic-bezier(.55, 0, .24, 1), background 240ms ease, border-color 240ms ease, box-shadow 240ms ease;
}

.pf-faq-item[open] summary i,
.pf-faq-item.is-active summary i {
    transform: rotate(180deg);
    background: rgba(255, 194, 71, .18);
    border-color: rgba(255, 194, 71, .48);
    box-shadow: 0 10px 30px rgba(255, 177, 42, .16);
}

.pf-faq-item summary i::before,
.pf-faq-item summary i::after {
    transition: transform 360ms cubic-bezier(.55, 0, .24, 1), opacity 240ms ease, background 240ms ease;
}

.pf-faq-answer {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transform: translateY(-10px);
    transition:
        max-height 360ms cubic-bezier(.55, 0, .24, 1),
        opacity 240ms ease,
        transform 360ms cubic-bezier(.55, 0, .24, 1);
    will-change: max-height, opacity, transform;
}

.pf-faq-item[open] .pf-faq-answer,
.pf-faq-item.is-active .pf-faq-answer {
    opacity: 1;
    transform: translateY(0);
}
.pf-faq-item.is-closing .pf-faq-answer {
    opacity: 1;
    transform: translateY(0);
}

.pf-faq-answer p {
    position: relative;
    padding-left: 18px;
}

.pf-faq-answer p::before {
    content: "";
    position: absolute;
    left: 0;
    top: .22rem;
    bottom: .22rem;
    width: 3px;
    border-radius: 999px;
    background: linear-gradient(#fff1b6, #ffb12a);
    opacity: .9;
}

@keyframes pfFaqLiftIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.985);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .pf-faq-item,
    .pf-faq-answer,
    .pf-faq-item::before,
    .pf-faq-item summary,
    .pf-faq-item summary i,
    .pf-faq-item summary i::before,
    .pf-faq-item summary i::after {
        animation: none !important;
        transition: none !important;
    }
}
/* FAQ answer spacing refinement */
.pf-faq-item summary {
    padding-bottom: 22px;
}

.pf-faq-answer {
    padding: 4px clamp(22px, 3.4vw, 34px) clamp(28px, 3.6vw, 36px) calc(clamp(22px, 3.4vw, 34px) + 70px);
}

.pf-faq-answer p {
    display: block;
    max-width: 850px;
    padding: 18px 20px 18px 22px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    background: rgba(3, 7, 13, .28);
    line-height: 1.75;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}

.pf-faq-answer p::before {
    left: 10px;
    top: 18px;
    bottom: 18px;
}

@media (max-width: 560px) {
    .pf-faq-item summary {
        padding-bottom: 18px;
    }

    .pf-faq-answer {
        padding: 0 17px 22px 17px;
    }

    .pf-faq-answer p {
        padding: 16px 16px 16px 20px;
        line-height: 1.65;
    }
}
/* FAQ process-flow sidebar */
.pf-faq-flow-list {
    list-style: none;
    display: grid;
    gap: 12px;
    margin: 4px 0 0;
    padding: 0;
}

.pf-faq-flow-list li {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(255, 194, 71, .08), rgba(255, 255, 255, .025));
}

.pf-faq-flow-list li > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    color: #080a10;
    background: linear-gradient(135deg, #fff0b1, #ffad26);
    font-family: var(--pf-heading);
    font-size: .8rem;
    box-shadow: 0 12px 30px rgba(255, 178, 44, .18);
}

.pf-faq-flow-list strong {
    display: block;
    margin-bottom: 5px;
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: .98rem;
    line-height: 1.1;
}

.pf-faq-flow-list p {
    margin: 0;
    color: #d7e4ff;
    font-size: .9rem;
    line-height: 1.48;
}

@media (max-width: 560px) {
    .pf-faq-flow-list li {
        grid-template-columns: 38px minmax(0, 1fr);
        padding: 13px;
    }

    .pf-faq-flow-list li > span {
        width: 34px;
        height: 34px;
    }
}
/* Want-list PDF action controls */
.pf-want-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.pf-want-actions .pf-button {
    min-height: 46px;
    white-space: nowrap;
}

@media (max-width: 640px) {
    .pf-want-actions {
        justify-content: stretch;
        width: 100%;
    }

    .pf-want-actions .pf-button,
    .pf-want-actions form {
        width: 100%;
    }

    .pf-want-actions .pf-button {
        justify-content: center;
    }
}
/* Want-list hero refinement */
.pf-want-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 430px);
    gap: clamp(28px, 5vw, 70px);
    align-items: center;
}

.pf-want-hero-copy {
    max-width: 900px;
}

.pf-want-hero-copy h1 {
    max-width: 850px;
    margin-bottom: 24px;
}

.pf-want-hero-copy p {
    max-width: 760px;
}

.pf-want-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.pf-want-hero-actions .pf-button {
    min-width: 160px;
    justify-content: center;
}

.pf-want-hero-panel {
    position: relative;
    overflow: hidden;
    display: grid;
    gap: 18px;
    padding: clamp(22px, 3vw, 30px);
    border: 1px solid rgba(255, 194, 71, .28);
    border-radius: 28px;
    background:
        radial-gradient(circle at 0 0, rgba(255, 194, 71, .17), transparent 20rem),
        linear-gradient(145deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .025)),
        rgba(12, 17, 27, .82);
    box-shadow: 0 26px 80px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .06);
}

.pf-want-hero-panel::after {
    content: "";
    position: absolute;
    right: -52px;
    top: -52px;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 1px solid rgba(255, 194, 71, .28);
    background: rgba(255, 194, 71, .08);
}

.pf-want-hero-panel > * {
    position: relative;
    z-index: 1;
}

.pf-want-hero-panel strong {
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: clamp(1.75rem, 3vw, 2.7rem);
    line-height: .95;
    text-shadow: 0 12px 34px rgba(0, 0, 0, .45);
}

.pf-want-hero-panel p {
    margin: 0;
    color: #dce7ff;
    line-height: 1.65;
}

.pf-want-hero-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.pf-want-hero-stats div {
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    background: rgba(4, 8, 14, .34);
}

.pf-want-hero-stats span,
.pf-want-hero-stats b {
    display: block;
}

.pf-want-hero-stats span {
    margin-bottom: 5px;
    color: #aebdd5;
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.pf-want-hero-stats b {
    color: var(--pf-gold);
    font-family: var(--pf-heading);
    font-size: 1.05rem;
}

@media (max-width: 980px) {
    .pf-want-hero-grid {
        grid-template-columns: 1fr;
    }

    .pf-want-hero-panel {
        max-width: 560px;
    }
}

@media (max-width: 560px) {
    .pf-want-hero-actions .pf-button,
    .pf-want-hero-actions {
        width: 100%;
    }

    .pf-want-hero-stats {
        grid-template-columns: 1fr;
    }
}
/* Request PDF download controls */
.pf-history-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 14px;
}

.pf-mini-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 8px 12px;
    border: 1px solid rgba(255, 194, 71, .36);
    border-radius: 999px;
    color: #fff3ce;
    background: rgba(255, 194, 71, .08);
    font-size: .78rem;
    font-weight: 900;
    text-decoration: none;
    transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.pf-mini-action:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 194, 71, .68);
    background: rgba(255, 194, 71, .16);
}

.pf-admin-request-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.pf-admin-request-actions > .pf-button {
    min-height: 44px;
}

.pf-admin-request-actions form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

@media (max-width: 640px) {
    .pf-history-card-footer,
    .pf-admin-request-actions,
    .pf-admin-request-actions form {
        align-items: stretch;
        flex-direction: column;
    }

    .pf-mini-action,
    .pf-admin-request-actions .pf-button,
    .pf-admin-request-actions form select {
        width: 100%;
    }
}
/* Customer request-history thumbnails and admin status controls */
.pf-history-items {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.pf-history-item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 16px;
    background: rgba(4, 8, 14, .34);
}

.pf-history-item img {
    width: 58px;
    height: 74px;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid rgba(255, 194, 71, .24);
    background: rgba(255, 255, 255, .05);
}

.pf-history-item strong {
    display: block;
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: .95rem;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.pf-history-item span {
    display: block;
    margin-top: 4px;
    color: var(--pf-muted);
    font-size: .86rem;
}

.pf-admin-status-panel {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    justify-content: flex-end;
    gap: 10px;
    margin: 18px 0 14px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    background: rgba(4, 8, 14, .26);
}

.pf-admin-status-panel label {
    display: grid;
    gap: 7px;
    min-width: 210px;
}

.pf-admin-status-panel label span {
    color: #aebdd5;
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.pf-admin-status-panel select,
.pf-admin-status-panel .pf-button,
.pf-admin-request-card footer > .pf-button {
    min-height: 44px;
}

@media (max-width: 640px) {
    .pf-admin-status-panel,
    .pf-admin-status-panel label,
    .pf-admin-status-panel .pf-button,
    .pf-admin-request-card footer > .pf-button {
        width: 100%;
    }
}
/* Customer account and request tracking refinements */
.pf-account-dashboard-solo {
    grid-template-columns: minmax(0, 1fr);
}

.pf-account-dashboard-solo .pf-account-summary-card {
    min-height: 0;
}

.pf-history-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
    margin-top: 8px;
}

.pf-history-card .pf-history-meta span {
    display: inline-flex;
}

.pf-history-card .pf-history-date {
    align-items: center;
    color: #aebdd5;
    font-size: .9rem;
}

.pf-history-card .pf-history-status {
    align-items: center;
    min-height: 28px;
    padding: 6px 12px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    color: #100c05;
    background: linear-gradient(135deg, #ffe9a3, var(--pf-gold) 58%, #f29a17);
    box-shadow: 0 10px 26px rgba(255, 177, 33, .24), inset 0 1px 0 rgba(255,255,255,.65);
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: .06em;
    line-height: 1;
    text-transform: uppercase;
}

.pf-history-card .pf-history-status-processing {
    color: #041019;
    background: linear-gradient(135deg, #b9f2ff, #55cff4 62%, #258bc8);
    box-shadow: 0 10px 26px rgba(85, 207, 244, .20), inset 0 1px 0 rgba(255,255,255,.55);
}

.pf-history-card .pf-history-status-ready {
    color: #071406;
    background: linear-gradient(135deg, #d8ffd1, #8bf17f 62%, #45b653);
    box-shadow: 0 10px 26px rgba(139, 241, 127, .20), inset 0 1px 0 rgba(255,255,255,.55);
}

.pf-history-card .pf-history-status-completed {
    color: #0b1018;
    background: linear-gradient(135deg, #f4f7ff, #cfd8e8 65%, #8f9db7);
    box-shadow: 0 10px 26px rgba(207, 216, 232, .16), inset 0 1px 0 rgba(255,255,255,.55);
}

.pf-history-card .pf-history-status-cancelled,
.pf-history-card .pf-history-status-canceled {
    color: #fff7ee;
    background: linear-gradient(135deg, #ff9a87, #d44835 66%, #8f211b);
    box-shadow: 0 10px 26px rgba(212, 72, 53, .22), inset 0 1px 0 rgba(255,255,255,.30);
}
/* FAQ collapse timing: keep answer visible while the whole panel closes */
.pf-faq-answer {
    box-sizing: border-box;
    padding-top: 0;
    padding-bottom: 0;
    transition:
        max-height 360ms cubic-bezier(.55, 0, .24, 1),
        padding-top 360ms cubic-bezier(.55, 0, .24, 1),
        padding-bottom 360ms cubic-bezier(.55, 0, .24, 1),
        opacity 240ms ease,
        transform 360ms cubic-bezier(.55, 0, .24, 1);
}

.pf-faq-item[open] .pf-faq-answer,
.pf-faq-item.is-active .pf-faq-answer {
    padding-top: 4px;
    padding-bottom: clamp(28px, 3.6vw, 36px);
}

.pf-faq-item.is-closing .pf-faq-answer {
    padding-top: 0;
    padding-bottom: 0;
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 560px) {
    .pf-faq-answer {
        padding-top: 0;
        padding-bottom: 0;
    }

    .pf-faq-item[open] .pf-faq-answer,
    .pf-faq-item.is-active .pf-faq-answer {
        padding-top: 0;
        padding-bottom: 22px;
    }

    .pf-faq-item.is-closing .pf-faq-answer {
        padding-top: 0;
        padding-bottom: 0;
    }
}
/* Admin page title wallpapers. Edit each admin page's $adminPageHeroImage variable. */
.pf-admin-body .pf-page-title.pf-admin-page-hero {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(5, 6, 10, .94), rgba(8, 12, 20, .82) 54%, rgba(8, 12, 20, .60)),
        radial-gradient(circle at 14% 18%, rgba(255, 194, 71, .18), transparent 28rem),
        radial-gradient(circle at 92% 12%, rgba(36, 214, 255, .11), transparent 26rem),
        var(--pf-page-hero-bg, none) center / cover no-repeat,
        #10131b;
}

.pf-admin-body .pf-page-title.pf-admin-page-hero .pf-container {
    position: relative;
    z-index: 1;
}
/* Polished admin request status control */
.pf-admin-status-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    margin: 22px 0 16px;
    padding: 18px;
    border: 1px solid rgba(255, 194, 71, .18);
    border-radius: 22px;
    background:
        linear-gradient(135deg, rgba(255, 194, 71, .10), transparent 38%),
        linear-gradient(180deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .015)),
        rgba(5, 8, 14, .46);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .055), 0 18px 50px rgba(0, 0, 0, .18);
}

.pf-admin-status-copy {
    display: grid;
    gap: 5px;
}

.pf-admin-status-copy .pf-kicker {
    margin-bottom: 0;
}

.pf-admin-status-copy strong {
    color: var(--pf-cream);
    font-family: var(--pf-heading);
    font-size: clamp(1rem, 1.5vw, 1.25rem);
    line-height: 1.05;
    text-transform: uppercase;
}

.pf-admin-status-copy small {
    color: #aebdd5;
    line-height: 1.45;
}

.pf-admin-status-control {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    justify-content: flex-end;
    gap: 12px;
}

.pf-admin-status-panel label {
    display: grid;
    gap: 8px;
    min-width: 230px;
}

.pf-admin-status-panel label > span:first-child {
    color: #c9d7ee;
    font-size: .74rem;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.pf-admin-select-shell {
    position: relative;
    display: block;
}

.pf-admin-select-shell::after {
    content: "";
    position: absolute;
    right: 16px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid rgba(255, 244, 212, .86);
    border-bottom: 2px solid rgba(255, 244, 212, .86);
    pointer-events: none;
    transform: translateY(-68%) rotate(45deg);
}

.pf-admin-status-panel select {
    width: 100%;
    min-height: 48px;
    appearance: none;
    border: 1px solid rgba(255, 194, 71, .28);
    border-radius: 999px;
    padding: 0 44px 0 16px;
    color: #fff7df;
    background:
        linear-gradient(135deg, rgba(255, 194, 71, .14), rgba(255, 255, 255, .06)),
        rgba(7, 10, 16, .92);
    font-weight: 900;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
}

.pf-admin-status-panel select:focus {
    border-color: rgba(255, 194, 71, .72);
    box-shadow: 0 0 0 4px rgba(255, 194, 71, .10), inset 0 1px 0 rgba(255, 255, 255, .08);
}

.pf-admin-status-panel .pf-button {
    min-height: 48px;
    white-space: nowrap;
}

@media (max-width: 760px) {
    .pf-admin-status-panel {
        grid-template-columns: 1fr;
    }

    .pf-admin-status-control {
        justify-content: stretch;
    }

    .pf-admin-status-panel label,
    .pf-admin-status-control,
    .pf-admin-status-panel .pf-button {
        width: 100%;
    }
}
/* FAQ accordion final alignment and instant unified toggle behavior */
.pf-faq-item {
    animation: none !important;
    animation-delay: 0ms !important;
    will-change: auto !important;
}

.pf-faq-item summary {
    padding: clamp(22px, 3vw, 30px) clamp(18px, 3vw, 30px) clamp(18px, 2.6vw, 24px) !important;
}

.pf-faq-answer {
    display: flex !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    max-height: none !important;
    opacity: 1 !important;
    transform: none !important;
    padding: 0 clamp(24px, 4vw, 42px) clamp(30px, 3.7vw, 38px) !important;
    transition: none !important;
    will-change: auto !important;
}

.pf-faq-item:not([open]) .pf-faq-answer {
    display: none !important;
}

.pf-faq-answer p {
    width: min(100%, 720px) !important;
    max-width: 720px !important;
    margin: 0 auto !important;
    text-align: left !important;
}

.pf-faq-item.is-closing .pf-faq-answer,
.pf-faq-item.is-opening .pf-faq-answer {
    opacity: 1 !important;
    transform: none !important;
}

@media (max-width: 560px) {
    .pf-faq-item summary {
        padding: 18px 17px !important;
    }

    .pf-faq-answer {
        padding: 0 17px 22px !important;
    }

    .pf-faq-answer p {
        width: 100% !important;
        max-width: none !important;
    }
}
/* FAQ answer lane alignment: center answers under the question text area */
.pf-faq-answer {
    display: block !important;
    padding: 4px clamp(18px, 3vw, 30px) clamp(30px, 3.7vw, 38px) calc(clamp(18px, 3vw, 30px) + 70px) !important;
}

.pf-faq-answer p {
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    margin-inline: auto !important;
}

@media (max-width: 560px) {
    .pf-faq-answer {
        padding: 0 17px 22px !important;
    }

    .pf-faq-answer p {
        width: 100% !important;
        max-width: none !important;
    }
}
/* FAQ answer cleanup: remove clipped line under the question row */
.pf-faq-item {
    overflow: hidden !important;
}

.pf-faq-item[open] summary,
.pf-faq-item.is-active summary {
    padding-bottom: 18px !important;
}

.pf-faq-answer {
    clear: both !important;
    padding: 0 clamp(18px, 3vw, 30px) clamp(30px, 3.7vw, 38px) calc(clamp(18px, 3vw, 30px) + 70px) !important;
}

.pf-faq-answer p {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 0 0 18px !important;
}

.pf-faq-answer p::before {
    left: 0 !important;
    top: .22rem !important;
    bottom: .22rem !important;
}

@media (max-width: 560px) {
    .pf-faq-answer {
        padding: 0 17px 22px !important;
    }
}
/* Universal storefront hero height: keep FAQ, account, want list, singles, and category pages visually consistent */
@media (min-width: 761px) {
    .pf-page-title.pf-singles-hero,
    .pf-page-title.pf-category-hero,
    .pf-page-title.pf-faq-hero,
    .pf-page-title.pf-account-hero,
    .pf-page-title.pf-want-list-hero,
    .pf-admin-body .pf-page-title.pf-admin-page-hero {
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        min-height: 576px !important;
        padding: 110px 0 82px !important;
    }

    .pf-page-title.pf-faq-hero .pf-container,
    .pf-page-title.pf-account-hero .pf-container,
    .pf-page-title.pf-want-list-hero .pf-container,
    .pf-admin-body .pf-page-title.pf-admin-page-hero .pf-container {
        width: min(100% - 40px, 1240px) !important;
    }

    .pf-faq-hero-grid,
    .pf-account-hero-grid {
        align-items: center !important;
    }

    .pf-faq-hero-card,
    .pf-account-hero-card {
        align-self: center !important;
    }
}
/* FAQ panel transition: animate the whole FAQ card uniformly with no stagger */
.pf-faq-item {
    animation: none !important;
    animation-delay: 0ms !important;
    will-change: auto !important;
}

.pf-faq-item.is-opening,
.pf-faq-item.is-closing {
    overflow: hidden !important;
}

.pf-faq-answer {
    display: block !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    max-height: none !important;
    opacity: 1 !important;
    transform: none !important;
    padding: 0 clamp(18px, 3vw, 30px) clamp(30px, 3.7vw, 38px) calc(clamp(18px, 3vw, 30px) + 70px) !important;
    transition: none !important;
    will-change: auto !important;
}

.pf-faq-item:not([open]) .pf-faq-answer {
    display: none !important;
}

.pf-faq-answer p {
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    margin-inline: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 0 0 18px !important;
}

.pf-faq-answer p::before {
    left: 0 !important;
    top: .22rem !important;
    bottom: .22rem !important;
}

@media (max-width: 560px) {
    .pf-faq-answer {
        padding: 0 17px 22px !important;
    }

    .pf-faq-answer p {
        width: 100% !important;
        max-width: none !important;
    }
}
/* FAQ transition timing sync: keep icon, glow, and panel motion together */
.pf-faq-item {
    transition: border-color 240ms cubic-bezier(.22, 1, .36, 1), background 240ms cubic-bezier(.22, 1, .36, 1), box-shadow 240ms cubic-bezier(.22, 1, .36, 1) !important;
}

.pf-faq-item:hover {
    transform: none !important;
}

.pf-faq-item::before {
    transition: opacity 240ms cubic-bezier(.22, 1, .36, 1) !important;
}

.pf-faq-item summary,
.pf-faq-item summary span,
.pf-faq-item summary i,
.pf-faq-item summary i::before,
.pf-faq-item summary i::after {
    transition-duration: 240ms !important;
    transition-timing-function: cubic-bezier(.22, 1, .36, 1) !important;
}
/* FAQ no-motion override: instant accordion state changes */
.pf-faq-item,
.pf-faq-item::before,
.pf-faq-item summary,
.pf-faq-item summary span,
.pf-faq-item summary i,
.pf-faq-item summary i::before,
.pf-faq-item summary i::after,
.pf-faq-answer,
.pf-faq-answer p,
.pf-faq-answer p::before {
    animation: none !important;
    animation-delay: 0ms !important;
    transition: none !important;
    transform: none !important;
    will-change: auto !important;
}

.pf-faq-item:hover {
    transform: none !important;
}

.pf-faq-item {
    overflow: hidden !important;
}

.pf-faq-answer {
    display: block !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    max-height: none !important;
    opacity: 1 !important;
    padding: 0 clamp(18px, 3vw, 30px) clamp(30px, 3.7vw, 38px) calc(clamp(18px, 3vw, 30px) + 70px) !important;
}

.pf-faq-item:not([open]) .pf-faq-answer {
    display: none !important;
}

.pf-faq-answer p {
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    margin-inline: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 0 0 18px !important;
}

.pf-faq-answer p::before {
    left: 0 !important;
    top: .22rem !important;
    bottom: .22rem !important;
}

@media (max-width: 560px) {
    .pf-faq-answer {
        padding: 0 17px 22px !important;
    }

    .pf-faq-answer p {
        width: 100% !important;
        max-width: none !important;
    }
}
/* Brand text selection color */
::selection {
    color: #090b11;
    background: rgba(255, 194, 71, .88);
    text-shadow: none;
}

::-moz-selection {
    color: #090b11;
    background: rgba(255, 194, 71, .88);
    text-shadow: none;
}
/* FAQ plus/minus icon restore after no-motion cleanup */
.pf-faq-item summary i::before {
    transform: translate(-50%, -50%) !important;
    opacity: 1 !important;
}

.pf-faq-item summary i::after {
    transform: translate(-50%, -50%) rotate(90deg) !important;
    opacity: 1 !important;
}

.pf-faq-item[open] summary i::after,
.pf-faq-item.is-active summary i::after {
    transform: translate(-50%, -50%) rotate(0deg) !important;
}

.pf-admin-advanced-field {
    grid-column: 1 / -1;
    border: 1px solid rgba(246, 173, 39, .18);
    border-radius: 14px;
    background: rgba(8, 11, 17, .45);
    overflow: hidden;
}

.pf-admin-advanced-field summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 46px;
    padding: 12px 16px;
    cursor: pointer;
    color: #ffd36e;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
    list-style: none;
}

.pf-admin-advanced-field summary::-webkit-details-marker {
    display: none;
}

.pf-admin-advanced-field summary::after {
    content: '+';
    width: 26px;
    height: 26px;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(246, 173, 39, .36);
    border-radius: 999px;
    color: #ffbd45;
    background: rgba(255, 255, 255, .05);
}

.pf-admin-advanced-field[open] summary::after {
    content: '-';
}

.pf-admin-advanced-field label {
    padding: 0 16px 16px;
}

.pf-admin-form small {
    color: rgba(224, 234, 255, .62);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
}

/* Homepage-only light style preview toggle. */
.pf-header-actions {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
}

.pf-theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    border: 1px solid rgba(255, 211, 110, .28);
    border-radius: 999px;
    padding: 12px 16px;
    color: #fff6dc;
    background: rgba(255, 255, 255, .07);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

.pf-theme-toggle:hover,
.pf-theme-toggle:focus-visible {
    color: #1a0b00;
    background: linear-gradient(135deg, #fff0bd 0%, #ffcb5e 48%, #f4a02a 100%);
    outline: 2px solid rgba(255, 240, 189, .64);
    outline-offset: 3px;
}

body.pf-light-preview {
    --pf-black: #f5efe1;
    --pf-panel: #fff8eb;
    --pf-panel-2: #f7ead3;
    --pf-line: rgba(82, 49, 12, .18);
    --pf-text: #21170c;
    --pf-muted: #635643;
    --pf-shadow: 0 26px 60px rgba(102, 65, 20, .14);
    background:
        radial-gradient(circle at 82% 0%, rgba(246, 173, 39, .26), transparent 30rem),
        radial-gradient(circle at 0% 18%, rgba(255, 224, 151, .36), transparent 28rem),
        #f5efe1;
    color: var(--pf-text);
}

body.pf-light-preview .pf-topline {
    background: #fff8eb;
    color: #6f5d41;
    border-bottom-color: rgba(82, 49, 12, .16);
}

body.pf-light-preview .pf-header {
    background: rgba(255, 248, 235, .92);
    border-bottom-color: rgba(82, 49, 12, .16);
    box-shadow: 0 16px 40px rgba(102, 65, 20, .10);
}

body.pf-light-preview .pf-brand strong,
body.pf-light-preview .pf-nav a.active,
body.pf-light-preview .pf-nav a:hover {
    color: #21170c;
}

body.pf-light-preview .pf-brand small,
body.pf-light-preview .pf-nav a,
body.pf-light-preview .pf-footer a {
    color: #6f5d41;
}

body.pf-light-preview .pf-nav a.active,
body.pf-light-preview .pf-nav a:hover {
    background: rgba(246, 173, 39, .18);
}

body.pf-light-preview .pf-theme-toggle {
    color: #33210a;
    border-color: rgba(133, 83, 14, .24);
    background: rgba(255, 255, 255, .72);
}

body.pf-light-preview .pf-hero,
body.pf-light-preview .pf-hero-slide {
    border-bottom-color: rgba(82, 49, 12, .18);
    background:
        linear-gradient(90deg, rgba(255, 248, 235, .92), rgba(255, 248, 235, .72), rgba(255, 248, 235, .36)),
        var(--pf-slide-bg) center / cover;
}

body.pf-light-preview .pf-hero::after,
body.pf-light-preview .pf-hero-slide::after {
    background: radial-gradient(circle, rgba(246, 173, 39, .30), transparent 68%);
}

body.pf-light-preview .pf-hero-copy h1,
body.pf-light-preview .pf-section-heading h2,
body.pf-light-preview .pf-vault-copy h2 {
    color: #21170c;
    text-shadow: 0 2px 0 rgba(255, 255, 255, .55);
}

body.pf-light-preview .pf-hero-copy p,
body.pf-light-preview .pf-heading-copy,
body.pf-light-preview .pf-vault-copy p {
    color: #4d4234;
}

body.pf-light-preview .pf-category-section,
body.pf-light-preview .pf-dark-section,
body.pf-light-preview .pf-vault-section,
body.pf-light-preview .pf-brand-strip,
body.pf-light-preview .pf-store-cta,
body.pf-light-preview .pf-footer {
    background: transparent;
    color: var(--pf-text);
}

body.pf-light-preview .pf-category-tile,
body.pf-light-preview .pf-product-card,
body.pf-light-preview .pf-vault-grid,
body.pf-light-preview .pf-store-cta-inner,
body.pf-light-preview .pf-forge-card,
body.pf-light-preview .pf-hero-card {
    border-color: rgba(133, 83, 14, .18);
    background:
        radial-gradient(circle at 20% 0%, rgba(255, 211, 110, .24), transparent 34%),
        rgba(255, 250, 241, .86);
    box-shadow: 0 22px 54px rgba(102, 65, 20, .14);
}

body.pf-light-preview .pf-product-info,
body.pf-light-preview .pf-product-card p,
body.pf-light-preview .pf-product-meta,
body.pf-light-preview .pf-vault-list span,
body.pf-light-preview .pf-store-cta p {
    color: #5e503e;
}

body.pf-light-preview .pf-product-card h3,
body.pf-light-preview .pf-product-card h3 a,
body.pf-light-preview .pf-category-tile strong,
body.pf-light-preview .pf-store-cta h2,
body.pf-light-preview .pf-footer h3 {
    color: #21170c;
}

body.pf-light-preview .pf-button.glass,
body.pf-light-preview .pf-link-arrow {
    color: #2d1b04;
    border-color: rgba(133, 83, 14, .22);
    background: rgba(255, 255, 255, .58);
}

body.pf-light-preview .pf-brand-strip span {
    color: #3d2a0d;
    border-color: rgba(133, 83, 14, .18);
    background: rgba(255, 250, 241, .78);
}

@media (max-width: 1024px) {
    .pf-header-actions {
        display: none;
    }
}

/* Light preview corrections: keep image-led sections dark and restore contrast. */
body.pf-light-preview .pf-hero,
body.pf-light-preview .pf-hero-slide {
    color: #fff6dc !important;
    border-bottom-color: rgba(246, 173, 39, .22) !important;
    background:
        linear-gradient(90deg, rgba(6,7,11,.96), rgba(7,11,18,.72) 52%, rgba(8,12,18,.48)),
        var(--pf-slide-bg) center / cover !important;
}

body.pf-light-preview .pf-hero-copy h1 {
    color: #fff6dc !important;
    text-shadow: 0 5px 24px rgba(0, 0, 0, .58) !important;
}

body.pf-light-preview .pf-hero-copy p {
    color: #e4e9f5 !important;
    text-shadow: 0 2px 14px rgba(0, 0, 0, .70) !important;
}

body.pf-light-preview .pf-hero-card,
body.pf-light-preview .pf-forge-card {
    border-color: rgba(255, 211, 110, .38) !important;
    background:
        radial-gradient(circle at 22% 0%, rgba(255, 211, 110, .18), transparent 34%),
        linear-gradient(135deg, rgba(4, 7, 12, .82), rgba(10, 16, 26, .72) 58%, rgba(31, 22, 9, .58)) !important;
    box-shadow: 0 28px 70px rgba(0, 0, 0, .34) !important;
}

body.pf-light-preview .pf-category-tile.sealed {
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.88)), url("../../image/sealed/SDBT_550.png") center / contain no-repeat, #10151f !important;
}

body.pf-light-preview .pf-category-tile.singles {
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.88)), url("../../image/singles/DBGV-JP003.webp") center / contain no-repeat, #10151f !important;
}

body.pf-light-preview .pf-category-tile.bulk {
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.88)), url("../../image/bulk/IMG_20251122_181849.jpg") center / cover no-repeat !important;
}

body.pf-light-preview .pf-category-tile.accessories {
    background: linear-gradient(135deg, rgba(6,7,11,.25), rgba(6,7,11,.88)), url("../../image/accessories/card-sleeves01.jpg") center / cover no-repeat !important;
}

body.pf-light-preview .pf-category-tile strong {
    color: #fff6dc !important;
    text-shadow: 0 3px 14px rgba(0, 0, 0, .72) !important;
}

body.pf-light-preview .pf-product-card {
    border-color: rgba(246, 173, 39, .20) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)), #131722 !important;
    box-shadow: 0 22px 45px rgba(85, 54, 18, .18) !important;
}

body.pf-light-preview .pf-product-card .pf-product-info {
    background: linear-gradient(180deg, rgba(21, 26, 37, .98), rgba(17, 21, 30, 1)) !important;
}

body.pf-light-preview .pf-product-card h3,
body.pf-light-preview .pf-product-card h3 a,
body.pf-light-preview .pf-product-bottom span {
    color: #fff6dc !important;
}

body.pf-light-preview .pf-product-card p,
body.pf-light-preview .pf-product-meta {
    color: #d8deea !important;
}

body.pf-light-preview .pf-product-bottom strong {
    color: #ffc247 !important;
}

body.pf-light-preview .pf-vault-grid {
    border-color: rgba(133, 83, 14, .18) !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(255, 211, 110, .18), transparent 34%),
        rgba(255, 250, 241, .88) !important;
    box-shadow: 0 22px 54px rgba(102, 65, 20, .12) !important;
}

body.pf-light-preview .pf-vault-copy h2 {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-vault-copy p {
    color: #4d4234 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-vault-list {
    border-color: rgba(133, 83, 14, .18) !important;
    background: rgba(255, 255, 255, .48) !important;
    box-shadow: none !important;
}

body.pf-light-preview .pf-vault-list span {
    color: #35230b !important;
    background: rgba(255, 255, 255, .78) !important;
}

body.pf-light-preview .pf-footer h3,
body.pf-light-preview .pf-footer p,
body.pf-light-preview .pf-footer a {
    color: #5d503f !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-footer h3,
body.pf-light-preview .pf-footer .pf-brand strong {
    color: #21170c !important;
}

body.pf-light-preview .pf-footer a:hover {
    color: #a26300 !important;
}

/* Light preview polish for labels, links, and lower homepage sections. */
body.pf-light-preview .pf-category-section .pf-kicker,
body.pf-light-preview .pf-dark-section .pf-kicker,
body.pf-light-preview .pf-vault-section .pf-kicker,
body.pf-light-preview .pf-store-cta .pf-kicker {
    color: #a86200 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-section-heading .pf-link-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 12px 18px;
    border: 1px solid rgba(159, 93, 0, .22) !important;
    border-radius: 999px;
    color: #3a2507 !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .72), rgba(255, 255, 255, .38)),
        linear-gradient(135deg, rgba(255, 224, 151, .74), rgba(255, 183, 50, .24)) !important;
    box-shadow: 0 14px 34px rgba(102, 65, 20, .12);
    text-decoration: none;
}

body.pf-light-preview .pf-section-heading .pf-link-arrow:hover,
body.pf-light-preview .pf-section-heading .pf-link-arrow:focus-visible {
    color: #211300 !important;
    border-color: rgba(159, 93, 0, .34) !important;
    background: linear-gradient(135deg, #fff0bd 0%, #ffcb5e 52%, #f5a229 100%) !important;
    outline: 2px solid rgba(159, 93, 0, .20);
    outline-offset: 3px;
}

body.pf-light-preview .pf-vault-section {
    border-block: 1px solid rgba(143, 89, 17, .16);
    background:
        radial-gradient(circle at 18% 4%, rgba(255, 205, 97, .24), transparent 28rem),
        linear-gradient(180deg, rgba(255, 250, 241, .48), rgba(239, 229, 209, .58));
}

body.pf-light-preview .pf-vault-grid {
    position: relative;
    overflow: hidden;
    padding: clamp(28px, 4vw, 46px) !important;
    border: 1px solid rgba(143, 89, 17, .22) !important;
    border-radius: 30px;
    background:
        radial-gradient(circle at 12% 0%, rgba(255, 205, 97, .30), transparent 28%),
        linear-gradient(135deg, rgba(255, 253, 246, .94), rgba(247, 236, 216, .86)) !important;
    box-shadow: 0 28px 78px rgba(102, 65, 20, .16) !important;
}

body.pf-light-preview .pf-vault-grid::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(143, 89, 17, .08);
    border-radius: 24px;
    pointer-events: none;
}

body.pf-light-preview .pf-vault-copy,
body.pf-light-preview .pf-vault-list {
    position: relative;
    z-index: 1;
}

body.pf-light-preview .pf-vault-list {
    padding: 18px !important;
    border: 1px solid rgba(143, 89, 17, .16) !important;
    border-radius: 24px;
    background: rgba(255, 255, 255, .54) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .70) !important;
}

body.pf-light-preview .pf-vault-list span {
    color: #3a2507 !important;
    border: 1px solid rgba(143, 89, 17, .12);
    background:
        linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,248,235,.74)) !important;
    box-shadow: 0 10px 24px rgba(102, 65, 20, .08);
}

body.pf-light-preview .pf-brand-strip {
    border-block: 1px solid rgba(143, 89, 17, .15);
    background: rgba(242, 231, 211, .74) !important;
}

body.pf-light-preview .pf-brand-strip .pf-container {
    gap: 12px;
}

body.pf-light-preview .pf-brand-strip span {
    border: 1px solid rgba(143, 89, 17, .14) !important;
    border-radius: 999px;
    color: #3a2507 !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.74), rgba(255,248,235,.56)) !important;
    box-shadow: 0 10px 24px rgba(102, 65, 20, .08);
}

body.pf-light-preview .pf-store-cta {
    border-block: 1px solid rgba(143, 89, 17, .16) !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(255, 194, 71, .20), transparent 34%),
        linear-gradient(135deg, rgba(255, 253, 246, .96), rgba(244, 233, 211, .92)) !important;
}

body.pf-light-preview .pf-store-cta::before {
    border-color: rgba(143, 89, 17, .10) !important;
}

body.pf-light-preview .pf-store-cta-inner {
    padding-block: clamp(48px, 5vw, 76px) !important;
}

body.pf-light-preview .pf-store-cta h2 {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-store-cta p {
    color: #4d4234 !important;
}

body.pf-light-preview .pf-store-cta-actions .pf-button.glass {
    color: #3a2507 !important;
    border-color: rgba(143, 89, 17, .18) !important;
    background: rgba(255, 255, 255, .68) !important;
    box-shadow: 0 14px 34px rgba(102, 65, 20, .10) !important;
}

body.pf-light-preview .pf-footer {
    border-top-color: rgba(143, 89, 17, .16) !important;
    background:
        radial-gradient(circle at 16% 0%, rgba(255, 205, 97, .16), transparent 24rem),
        #f0e5ce !important;
}

body.pf-light-preview .pf-footer-grid {
    padding-block: 58px !important;
}

/* Light preview lower-section reset: cleaner brand strip, CTA, and footer transition. */
body.pf-light-preview .pf-brand-strip {
    border: 0 !important;
    background:
        linear-gradient(180deg, rgba(245, 239, 225, .22), rgba(245, 239, 225, .88)) !important;
}

body.pf-light-preview .pf-brand-strip .pf-container {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    padding: 24px 0 18px !important;
}

body.pf-light-preview .pf-brand-strip span {
    min-width: 156px;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 18px;
    border: 1px solid rgba(130, 77, 8, .16) !important;
    border-radius: 999px;
    color: #2b1b05 !important;
    background: rgba(255, 253, 246, .72) !important;
    box-shadow: 0 10px 24px rgba(102, 65, 20, .07);
    font-size: 12px;
}

body.pf-light-preview .pf-store-cta {
    padding: 0 0 52px;
    border: 0 !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 201, 79, .16), transparent 30rem),
        linear-gradient(180deg, rgba(245, 239, 225, .96), rgba(238, 227, 206, .94)) !important;
}

body.pf-light-preview .pf-store-cta::before {
    display: none !important;
    content: none !important;
}

body.pf-light-preview .pf-store-cta-inner {
    width: min(1240px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(42px, 5vw, 68px) clamp(34px, 4vw, 58px) !important;
    border: 1px solid rgba(130, 77, 8, .18) !important;
    border-radius: 34px;
    background:
        radial-gradient(circle at 10% 0%, rgba(255, 207, 95, .26), transparent 32%),
        radial-gradient(circle at 92% 100%, rgba(151, 91, 10, .10), transparent 32%),
        linear-gradient(135deg, rgba(255, 253, 246, .98), rgba(246, 236, 217, .90)) !important;
    box-shadow: 0 30px 88px rgba(102, 65, 20, .15), inset 0 1px 0 rgba(255,255,255,.78) !important;
}

body.pf-light-preview .pf-store-cta-copy {
    max-width: 780px;
}

body.pf-light-preview .pf-store-cta h2 {
    max-width: 820px;
    margin-top: 8px;
    color: #21170c !important;
    letter-spacing: -.055em;
}

body.pf-light-preview .pf-store-cta p {
    max-width: 650px;
    color: #584932 !important;
}

body.pf-light-preview .pf-store-cta-actions {
    align-self: center;
    padding: 14px;
    border: 1px solid rgba(130, 77, 8, .10);
    border-radius: 999px;
    background: rgba(255, 255, 255, .42);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.82);
}

body.pf-light-preview .pf-store-cta-actions .pf-button {
    min-width: 150px;
    box-shadow: 0 14px 32px rgba(102, 65, 20, .13) !important;
}

body.pf-light-preview .pf-footer {
    margin-top: 0;
    border-top: 1px solid rgba(130, 77, 8, .14) !important;
    background:
        radial-gradient(circle at 14% 0%, rgba(255, 207, 95, .14), transparent 24rem),
        linear-gradient(180deg, #eadfc7, #e5d8bd) !important;
}

@media (max-width: 860px) {
    body.pf-light-preview .pf-store-cta-inner {
        grid-template-columns: 1fr;
        width: min(100% - 28px, 1240px);
        border-radius: 26px;
    }

    body.pf-light-preview .pf-store-cta-actions {
        justify-content: flex-start;
        width: fit-content;
    }
}

@media (max-width: 560px) {
    body.pf-light-preview .pf-brand-strip span,
    body.pf-light-preview .pf-store-cta-actions,
    body.pf-light-preview .pf-store-cta-actions .pf-button {
        width: 100%;
    }

    body.pf-light-preview .pf-store-cta-actions {
        border-radius: 22px;
    }
}

/* Light preview button and Store Tools contrast fix. */
body.pf-light-preview .pf-button.primary,
body.pf-light-preview .pf-button.primary:visited,
body.pf-light-preview .pf-store-cta-actions .pf-button.primary,
body.pf-light-preview .pf-vault-copy .pf-button.primary {
    color: #211300 !important;
    border-color: rgba(151, 86, 0, .24) !important;
    background:
        radial-gradient(circle at 18% 8%, rgba(255,255,255,.64), transparent 24%),
        linear-gradient(135deg, #ffe08f 0%, #ffbd3f 48%, #f29a1f 100%) !important;
    box-shadow: 0 16px 34px rgba(102, 65, 20, .16), inset 0 1px 0 rgba(255,255,255,.55) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-button.primary:hover,
body.pf-light-preview .pf-button.primary:focus-visible,
body.pf-light-preview .pf-store-cta-actions .pf-button.primary:hover,
body.pf-light-preview .pf-store-cta-actions .pf-button.primary:focus-visible,
body.pf-light-preview .pf-vault-copy .pf-button.primary:hover,
body.pf-light-preview .pf-vault-copy .pf-button.primary:focus-visible {
    color: #160b00 !important;
    border-color: rgba(151, 86, 0, .36) !important;
    background:
        radial-gradient(circle at 18% 8%, rgba(255,255,255,.78), transparent 24%),
        linear-gradient(135deg, #fff0bd 0%, #ffc75a 48%, #f19a1d 100%) !important;
    box-shadow: 0 20px 42px rgba(102, 65, 20, .20), inset 0 1px 0 rgba(255,255,255,.64) !important;
    transform: translateY(-2px);
}

body.pf-light-preview .pf-button.glass,
body.pf-light-preview .pf-button.glass:visited,
body.pf-light-preview .pf-store-cta-actions .pf-button.glass {
    color: #2a1a04 !important;
    border-color: rgba(130, 77, 8, .18) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(255, 249, 239, .78)) !important;
    box-shadow: 0 14px 32px rgba(102, 65, 20, .10), inset 0 1px 0 rgba(255,255,255,.86) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-button.glass:hover,
body.pf-light-preview .pf-button.glass:focus-visible,
body.pf-light-preview .pf-store-cta-actions .pf-button.glass:hover,
body.pf-light-preview .pf-store-cta-actions .pf-button.glass:focus-visible {
    color: #160b00 !important;
    border-color: rgba(151, 86, 0, .32) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 235, 190, .82)) !important;
    box-shadow: 0 18px 38px rgba(102, 65, 20, .15), inset 0 1px 0 rgba(255,255,255,.92) !important;
    transform: translateY(-2px);
}

body.pf-light-preview .pf-store-cta-actions {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

body.pf-light-preview .pf-vault-grid {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    background:
        radial-gradient(circle at 12% 0%, rgba(255, 194, 71, .20), transparent 30%),
        linear-gradient(135deg, #fffaf0 0%, #f6ead3 100%) !important;
}

body.pf-light-preview .pf-vault-list {
    background: rgba(255, 255, 255, .58) !important;
}

body.pf-light-preview .pf-vault-list span:hover {
    color: #160b00 !important;
    border-color: rgba(151, 86, 0, .24);
    background: linear-gradient(135deg, rgba(255, 240, 189, .95), rgba(255, 255, 255, .88)) !important;
}

/* Homepage light preview mobile menu/toggle visibility. */
.pf-theme-toggle-mobile {
    display: none;
}

body.pf-light-preview .pf-menu-toggle {
    color: #211300 !important;
    border-color: rgba(130, 77, 8, .18) !important;
    background:
        radial-gradient(circle at 18% 8%, rgba(255,255,255,.64), transparent 24%),
        linear-gradient(135deg, #ffe08f 0%, #ffbd3f 48%, #f29a1f 100%) !important;
    box-shadow: 0 14px 30px rgba(102, 65, 20, .14) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-menu-toggle:hover,
body.pf-light-preview .pf-menu-toggle:focus-visible {
    color: #160b00 !important;
    background:
        radial-gradient(circle at 18% 8%, rgba(255,255,255,.78), transparent 24%),
        linear-gradient(135deg, #fff0bd 0%, #ffc75a 48%, #f19a1d 100%) !important;
}

@media (max-width: 1024px) {
    .pf-theme-toggle-mobile {
        display: inline-flex;
        width: 100%;
        margin-bottom: 4px;
    }

    .pf-theme-toggle-desktop {
        display: none !important;
    }

    body.pf-light-preview .pf-nav {
        border-color: rgba(130, 77, 8, .18) !important;
        background: rgba(255, 248, 235, .98) !important;
        box-shadow: 0 20px 52px rgba(102, 65, 20, .16);
    }

    body.pf-light-preview .pf-nav a {
        color: #3a2507 !important;
    }

    body.pf-light-preview .pf-nav a.active,
    body.pf-light-preview .pf-nav a:hover {
        color: #160b00 !important;
        background: rgba(255, 194, 71, .30) !important;
    }
}

/* Sitewide theme toggle placement and mobile menu order. */
.pf-mobile-search-action {
    display: none;
}

@media (max-width: 1024px) {
    .pf-mobile-search-action {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 48px;
        margin-top: 8px;
        border: 1px solid rgba(255, 238, 190, .62) !important;
        border-radius: 999px;
        color: #1b0d00 !important;
        background: linear-gradient(135deg, #ffe7a6 0%, #ffc247 48%, #f19a21 100%) !important;
        box-shadow: 0 16px 34px rgba(246,173,39,.22), inset 0 0 0 1px rgba(92,45,0,.14) !important;
        font-weight: 900;
    }

    .pf-theme-toggle-mobile {
        order: 999;
        margin-top: 0;
        margin-bottom: 0;
    }

    body.pf-light-preview .pf-mobile-search-action {
        color: #211300 !important;
        border-color: rgba(151, 86, 0, .24) !important;
        background:
            radial-gradient(circle at 18% 8%, rgba(255,255,255,.64), transparent 24%),
            linear-gradient(135deg, #ffe08f 0%, #ffbd3f 48%, #f29a1f 100%) !important;
        box-shadow: 0 16px 34px rgba(102, 65, 20, .16), inset 0 1px 0 rgba(255,255,255,.55) !important;
    }

    body.pf-light-preview .pf-mobile-search-action:hover,
    body.pf-light-preview .pf-mobile-search-action:focus-visible {
        color: #160b00 !important;
        background:
            radial-gradient(circle at 18% 8%, rgba(255,255,255,.78), transparent 24%),
            linear-gradient(135deg, #fff0bd 0%, #ffc75a 48%, #f19a1d 100%) !important;
    }
}

/* Sitewide light preview cleanup for search, detail, FAQ, account, and mobile-only nav. */
.pf-nav .pf-mobile-search-action {
    display: none !important;
}

body.pf-light-preview .pf-button.primary,
body.pf-light-preview .pf-search-panel button,
body.pf-light-preview .pf-header-action {
    color: #1a0b00 !important;
    border-color: rgba(130, 77, 8, .20) !important;
    background:
        radial-gradient(circle at 18% 8%, rgba(255, 255, 255, .70), transparent 24%),
        linear-gradient(135deg, #ffe397 0%, #ffc249 48%, #f39b20 100%) !important;
    box-shadow: 0 14px 32px rgba(102, 65, 20, .17), inset 0 1px 0 rgba(255, 255, 255, .55) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-button.primary:hover,
body.pf-light-preview .pf-button.primary:focus-visible,
body.pf-light-preview .pf-search-panel button:hover,
body.pf-light-preview .pf-search-panel button:focus-visible,
body.pf-light-preview .pf-header-action:hover,
body.pf-light-preview .pf-header-action:focus-visible {
    color: #160b00 !important;
    border-color: rgba(130, 77, 8, .30) !important;
    background:
        radial-gradient(circle at 18% 8%, rgba(255, 255, 255, .84), transparent 24%),
        linear-gradient(135deg, #fff1c4 0%, #ffca58 48%, #f29a1f 100%) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-button.glass {
    color: #2a1906 !important;
    border-color: rgba(112, 68, 9, .20) !important;
    background: rgba(255, 252, 245, .88) !important;
    box-shadow: 0 12px 28px rgba(102, 65, 20, .10), inset 0 1px 0 rgba(255, 255, 255, .65) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-button.glass:hover,
body.pf-light-preview .pf-button.glass:focus-visible {
    color: #160b00 !important;
    background: #fffaf0 !important;
    border-color: rgba(112, 68, 9, .30) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-search-panel {
    border-color: rgba(112, 68, 9, .18) !important;
    background:
        radial-gradient(circle at 8% 0%, rgba(255, 211, 110, .20), transparent 30%),
        linear-gradient(135deg, rgba(255, 250, 241, .96), rgba(247, 234, 211, .88)) !important;
    box-shadow: 0 22px 52px rgba(102, 65, 20, .14) !important;
}

body.pf-light-preview .pf-search-panel label {
    color: #5a3a10 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-search-panel input,
body.pf-light-preview .pf-search-panel select {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .22) !important;
    background: rgba(255, 255, 255, .88) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-search-panel input:focus,
body.pf-light-preview .pf-search-panel select:focus {
    border-color: rgba(196, 113, 0, .50) !important;
    box-shadow: 0 0 0 3px rgba(255, 194, 71, .24), inset 0 1px 0 rgba(255, 255, 255, .72) !important;
}

body.pf-light-preview .pf-search-panel input::placeholder {
    color: rgba(57, 42, 23, .54) !important;
}

body.pf-light-preview .pf-result-bar strong {
    color: #241606 !important;
    border: 1px solid rgba(112, 68, 9, .16) !important;
    border-radius: 999px;
    padding: 9px 14px;
    background: rgba(255, 252, 245, .72) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-result-bar span {
    color: #5d4a31 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-detail-copy .pf-kicker,
body.pf-light-preview .pf-singles-results-section .pf-kicker,
body.pf-light-preview .pf-section-heading .pf-kicker {
    color: #9a5d00 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-detail-copy h1 {
    color: #21170c !important;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
}

body.pf-light-preview .pf-detail-copy p {
    color: #4f4231 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-specs div {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .18) !important;
    background: rgba(255, 252, 245, .72) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .62) !important;
}

body.pf-light-preview .pf-specs dt {
    color: #5a3a10 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-specs dd {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-detail-buy strong {
    color: #d43f34 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-detail-buy span {
    color: #4f4231 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-card-reference-section .pf-section-heading h2,
body.pf-light-preview .pf-card-reference-section .pf-section-heading p {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-hero-card,
body.pf-light-preview .pf-faq-sidebar,
body.pf-light-preview .pf-faq-mini-card,
body.pf-light-preview .pf-faq-item,
body.pf-light-preview .pf-account-hero-card,
body.pf-light-preview .pf-account-card,
body.pf-light-preview .pf-account-intent {
    color: #fff6dc !important;
    border-color: rgba(255, 211, 110, .22) !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(255, 211, 110, .13), transparent 32%),
        linear-gradient(135deg, rgba(34, 38, 46, .98), rgba(18, 24, 34, .97)) !important;
    box-shadow: 0 24px 54px rgba(22, 13, 0, .18) !important;
}

body.pf-light-preview .pf-faq-hero-card strong,
body.pf-light-preview .pf-faq-sidebar h2,
body.pf-light-preview .pf-faq-mini-card strong,
body.pf-light-preview .pf-faq-flow-list strong,
body.pf-light-preview .pf-faq-item summary strong,
body.pf-light-preview .pf-account-hero-card strong,
body.pf-light-preview .pf-account-intent strong,
body.pf-light-preview .pf-account-section .pf-panel h2,
body.pf-light-preview .pf-account-section .pf-account-card h2,
body.pf-light-preview .pf-account-summary-card h2,
body.pf-light-preview .pf-history-card strong {
    color: #fff6dc !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .35) !important;
}

body.pf-light-preview .pf-faq-hero-card span,
body.pf-light-preview .pf-faq-mini-card span,
body.pf-light-preview .pf-faq-sidebar p,
body.pf-light-preview .pf-faq-flow-list p,
body.pf-light-preview .pf-faq-answer p,
body.pf-light-preview .pf-account-hero-card span,
body.pf-light-preview .pf-account-hero-card p,
body.pf-light-preview .pf-account-intent p,
body.pf-light-preview .pf-account-section .pf-account-card p,
body.pf-light-preview .pf-account-summary-card p,
body.pf-light-preview .pf-history-card p,
body.pf-light-preview .pf-history-card span,
body.pf-light-preview .pf-history-card small {
    color: #dce5f2 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-item summary span,
body.pf-light-preview .pf-faq-flow-list li > span {
    color: #211300 !important;
    border-color: rgba(255, 211, 110, .28) !important;
    background: linear-gradient(135deg, #ffe397 0%, #ffbd45 100%) !important;
    box-shadow: 0 12px 26px rgba(246, 173, 39, .20) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-item summary i {
    color: #ffbd45 !important;
    border-color: rgba(255, 211, 110, .28) !important;
    background: rgba(255, 255, 255, .08) !important;
}

body.pf-light-preview .pf-faq-item summary i::before,
body.pf-light-preview .pf-faq-item summary i::after {
    background: #ffbd45 !important;
}

body.pf-light-preview .pf-faq-answer {
    border-top-color: rgba(255, 211, 110, .15) !important;
}

body.pf-light-preview .pf-account-section label {
    color: #dbe7ff !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section input,
body.pf-light-preview .pf-account-section select,
body.pf-light-preview .pf-account-section textarea {
    color: #fff6dc !important;
    border-color: rgba(255, 194, 71, .22) !important;
    background: rgba(5, 9, 15, .86) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

body.pf-light-preview .pf-account-section input::placeholder,
body.pf-light-preview .pf-account-section textarea::placeholder {
    color: rgba(220, 229, 242, .58) !important;
}

body.pf-light-preview .pf-account-section input:focus,
body.pf-light-preview .pf-account-section select:focus,
body.pf-light-preview .pf-account-section textarea:focus {
    border-color: rgba(255, 211, 110, .58) !important;
    box-shadow: 0 0 0 3px rgba(255, 194, 71, .18), inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

body.pf-light-preview .pf-account-section .pf-kicker,
body.pf-light-preview .pf-account-card .pf-kicker,
body.pf-light-preview .pf-faq-section .pf-kicker,
body.pf-light-preview .pf-faq-sidebar .pf-kicker {
    color: #ffcb5e !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-mini-stats div,
body.pf-light-preview .pf-history-card {
    border-color: rgba(255, 211, 110, .16) !important;
    background: rgba(255, 255, 255, .06) !important;
}

body.pf-light-preview .pf-account-mini-stats span {
    color: #dce5f2 !important;
}

body.pf-light-preview .pf-account-mini-stats strong {
    color: #fff6dc !important;
}

@media (max-width: 1024px) {
    .pf-nav .pf-mobile-search-action {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 48px;
        margin-top: 8px;
        border: 1px solid rgba(255, 238, 190, .62) !important;
        border-radius: 999px;
        color: #1b0d00 !important;
        background: linear-gradient(135deg, #ffe7a6 0%, #ffc247 48%, #f19a21 100%) !important;
        box-shadow: 0 16px 34px rgba(246, 173, 39, .22), inset 0 0 0 1px rgba(92, 45, 0, .14) !important;
        font-weight: 900;
        order: 998;
    }

    .pf-theme-toggle-mobile {
        order: 999;
    }

    body.pf-light-preview .pf-nav .pf-mobile-search-action {
        color: #211300 !important;
        border-color: rgba(151, 86, 0, .24) !important;
        background:
            radial-gradient(circle at 18% 8%, rgba(255, 255, 255, .64), transparent 24%),
            linear-gradient(135deg, #ffe08f 0%, #ffbd3f 48%, #f29a1f 100%) !important;
        box-shadow: 0 16px 34px rgba(102, 65, 20, .16), inset 0 1px 0 rgba(255, 255, 255, .55) !important;
    }
}

/* Signed-in light preview cleanup: header account bar, account dashboard, and want-list pages. */
body.pf-light-preview .pf-topline-account {
    color: #5a3a10 !important;
}

body.pf-light-preview .pf-topline-account > span {
    color: #5a3a10 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-topline-account a,
body.pf-light-preview .pf-topline-account button {
    color: #2a1906 !important;
    border-color: rgba(112, 68, 9, .18) !important;
    background: rgba(255, 252, 245, .74) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .62) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-topline-account a:hover,
body.pf-light-preview .pf-topline-account button:hover,
body.pf-light-preview .pf-topline-account a:focus-visible,
body.pf-light-preview .pf-topline-account button:focus-visible {
    color: #160b00 !important;
    border-color: rgba(196, 113, 0, .34) !important;
    background: rgba(255, 236, 184, .88) !important;
}

body.pf-light-preview .pf-account-summary-card h2,
body.pf-light-preview .pf-request-history h2,
body.pf-light-preview .pf-contact-settings-card h2,
body.pf-light-preview .pf-want-list-card h2,
body.pf-light-preview .pf-request-sidebar h2,
body.pf-light-preview .pf-empty-state.inline h3 {
    color: #fff6dc !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .42) !important;
    -webkit-text-stroke: 0 !important;
}

body.pf-light-preview .pf-account-summary-card p,
body.pf-light-preview .pf-contact-settings-card p,
body.pf-light-preview .pf-want-list-card p,
body.pf-light-preview .pf-request-sidebar p,
body.pf-light-preview .pf-empty-state.inline p {
    color: #dce5f2 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-summary-card,
body.pf-light-preview .pf-request-history,
body.pf-light-preview .pf-contact-settings-card,
body.pf-light-preview .pf-want-list-card,
body.pf-light-preview .pf-request-sidebar {
    color: #fff6dc !important;
    border-color: rgba(255, 211, 110, .22) !important;
    background:
        radial-gradient(circle at 16% 0%, rgba(255, 211, 110, .13), transparent 34%),
        linear-gradient(135deg, rgba(34, 38, 46, .98), rgba(18, 24, 34, .97)) !important;
    box-shadow: 0 24px 54px rgba(22, 13, 0, .18) !important;
}

body.pf-light-preview .pf-account-mini-stats div,
body.pf-light-preview .pf-history-card,
body.pf-light-preview .pf-history-item,
body.pf-light-preview .pf-want-item,
body.pf-light-preview .pf-request-total,
body.pf-light-preview .pf-want-hero-stats div {
    color: #fff6dc !important;
    border-color: rgba(255, 211, 110, .17) !important;
    background: rgba(5, 9, 15, .32) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

body.pf-light-preview .pf-account-mini-stats span,
body.pf-light-preview .pf-want-item span,
body.pf-light-preview .pf-want-item small,
body.pf-light-preview .pf-history-card span,
body.pf-light-preview .pf-history-card small,
body.pf-light-preview .pf-history-item span,
body.pf-light-preview .pf-history-date,
body.pf-light-preview .pf-request-total span,
body.pf-light-preview .pf-want-hero-stats span {
    color: #dce5f2 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-mini-stats strong,
body.pf-light-preview .pf-want-item strong,
body.pf-light-preview .pf-history-card strong,
body.pf-light-preview .pf-history-item strong,
body.pf-light-preview .pf-request-total strong,
body.pf-light-preview .pf-want-hero-panel strong {
    color: #fff6dc !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .36) !important;
}

body.pf-light-preview .pf-request-total strong,
body.pf-light-preview .pf-want-hero-stats b {
    color: #ffbd45 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-history-card .pf-history-status,
body.pf-light-preview .pf-history-card .pf-history-status-pending {
    color: #211300 !important;
    background: linear-gradient(135deg, #ffe397 0%, #ffbd45 58%, #f29a17 100%) !important;
    border-color: rgba(255, 211, 110, .32) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-mini-action,
body.pf-light-preview .pf-request-sidebar .pf-link-arrow,
body.pf-light-preview .pf-want-list-card .pf-link-arrow {
    color: #fff6dc !important;
    border-color: rgba(255, 211, 110, .30) !important;
    background: rgba(255, 194, 71, .08) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-mini-action:hover,
body.pf-light-preview .pf-request-sidebar .pf-link-arrow:hover,
body.pf-light-preview .pf-want-list-card .pf-link-arrow:hover {
    color: #211300 !important;
    border-color: rgba(255, 211, 110, .55) !important;
    background: linear-gradient(135deg, #ffe397 0%, #ffbd45 100%) !important;
}

body.pf-light-preview .pf-request-box label,
body.pf-light-preview .pf-want-qty label,
body.pf-light-preview .pf-contact-settings-form label {
    color: #dbe7ff !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-request-box textarea,
body.pf-light-preview .pf-want-qty input,
body.pf-light-preview .pf-contact-settings-form input,
body.pf-light-preview .pf-contact-settings-form select,
body.pf-light-preview .pf-contact-settings-form textarea {
    color: #fff6dc !important;
    border-color: rgba(255, 194, 71, .22) !important;
    background: rgba(5, 9, 15, .86) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

body.pf-light-preview .pf-request-box textarea::placeholder,
body.pf-light-preview .pf-contact-settings-form input::placeholder,
body.pf-light-preview .pf-contact-settings-form textarea::placeholder {
    color: rgba(220, 229, 242, .58) !important;
}

body.pf-light-preview .pf-request-box .pf-button:disabled,
body.pf-light-preview .pf-request-box .pf-button[disabled] {
    color: rgba(255, 246, 220, .74) !important;
    border-color: rgba(255, 211, 110, .16) !important;
    background: rgba(255, 194, 71, .22) !important;
    box-shadow: none !important;
}

body.pf-light-preview .pf-want-hero-panel {
    color: #fff6dc !important;
    border-color: rgba(255, 211, 110, .30) !important;
    background:
        radial-gradient(circle at 0 0, rgba(255, 194, 71, .14), transparent 20rem),
        linear-gradient(145deg, rgba(34, 38, 46, .86), rgba(18, 24, 34, .88)) !important;
}

body.pf-light-preview .pf-want-hero-panel p {
    color: #dce5f2 !important;
    text-shadow: none !important;
}

@media (max-width: 760px) {
    body.pf-light-preview .pf-topline-inner {
        align-items: flex-start;
    }

    body.pf-light-preview .pf-topline-account {
        justify-content: flex-start;
        gap: 8px;
    }
}

/* Light preview request sidebar stat polish. */
body.pf-light-preview .pf-request-sidebar .pf-request-total {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 2px 0 0 !important;
    padding: 15px 17px !important;
    border: 1px solid rgba(255, 211, 110, .18) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 0 0, rgba(255, 211, 110, .12), transparent 72%),
        linear-gradient(135deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .025)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
}

body.pf-light-preview .pf-request-sidebar .pf-request-total span {
    color: #dce5f2 !important;
    font-size: .92rem !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.pf-light-preview .pf-request-sidebar .pf-request-total strong {
    color: #ffbd45 !important;
    font-family: var(--pf-heading) !important;
    font-size: 1.45rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-request-sidebar .pf-request-box {
    margin-top: 18px !important;
    padding-top: 18px !important;
    border-top-color: rgba(255, 211, 110, .16) !important;
}

@media (max-width: 430px) {
    body.pf-light-preview .pf-request-sidebar .pf-request-total {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 8px !important;
    }
}

/* Light mode redesign for account, want-list, FAQ, and helper panels. */
body.pf-light-preview .pf-faq-hero-card,
body.pf-light-preview .pf-account-hero-card,
body.pf-light-preview .pf-want-hero-panel {
    color: #21170c !important;
    border-color: rgba(143, 90, 18, .22) !important;
    background:
        radial-gradient(circle at 12% 0%, rgba(255, 211, 110, .28), transparent 34%),
        linear-gradient(135deg, rgba(255, 252, 245, .92), rgba(247, 234, 211, .86)) !important;
    box-shadow: 0 26px 70px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .72) !important;
    backdrop-filter: blur(16px);
}

body.pf-light-preview .pf-faq-hero-card::after,
body.pf-light-preview .pf-want-hero-panel::after {
    border-color: rgba(143, 90, 18, .18) !important;
    background: rgba(255, 211, 110, .18) !important;
}

body.pf-light-preview .pf-faq-hero-card span,
body.pf-light-preview .pf-account-hero-card span,
body.pf-light-preview .pf-want-hero-panel .pf-kicker,
body.pf-light-preview .pf-faq-hero-card .pf-kicker,
body.pf-light-preview .pf-account-hero-card .pf-kicker {
    color: #9a5d00 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-hero-card strong,
body.pf-light-preview .pf-account-hero-card strong,
body.pf-light-preview .pf-want-hero-panel strong {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-want-hero-panel p,
body.pf-light-preview .pf-faq-hero-card p,
body.pf-light-preview .pf-account-hero-card p {
    color: #4f4231 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-want-hero-stats div {
    border-color: rgba(112, 68, 9, .18) !important;
    background: rgba(255, 255, 255, .64) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .68) !important;
}

body.pf-light-preview .pf-want-hero-stats span {
    color: #6b5638 !important;
}

body.pf-light-preview .pf-want-hero-stats b {
    color: #b66b00 !important;
}

body.pf-light-preview .pf-account-summary-card,
body.pf-light-preview .pf-contact-settings-card,
body.pf-light-preview .pf-request-history,
body.pf-light-preview .pf-want-list-card,
body.pf-light-preview .pf-request-sidebar,
body.pf-light-preview .pf-faq-sidebar,
body.pf-light-preview .pf-faq-mini-card,
body.pf-light-preview .pf-faq-item {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .18) !important;
    background:
        radial-gradient(circle at 10% 0%, rgba(255, 211, 110, .24), transparent 34%),
        linear-gradient(135deg, rgba(255, 252, 245, .96), rgba(247, 234, 211, .90)) !important;
    box-shadow: 0 24px 58px rgba(102, 65, 20, .14), inset 0 1px 0 rgba(255, 255, 255, .70) !important;
}

body.pf-light-preview .pf-account-summary-card h2,
body.pf-light-preview .pf-contact-settings-card h2,
body.pf-light-preview .pf-request-history h2,
body.pf-light-preview .pf-want-list-card h2,
body.pf-light-preview .pf-request-sidebar h2,
body.pf-light-preview .pf-faq-sidebar h2,
body.pf-light-preview .pf-faq-item summary strong,
body.pf-light-preview .pf-faq-mini-card strong,
body.pf-light-preview .pf-faq-flow-list strong,
body.pf-light-preview .pf-empty-state.inline h3 {
    color: #21170c !important;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
}

body.pf-light-preview .pf-account-summary-card p,
body.pf-light-preview .pf-contact-settings-card p,
body.pf-light-preview .pf-request-history p,
body.pf-light-preview .pf-want-list-card p,
body.pf-light-preview .pf-request-sidebar p,
body.pf-light-preview .pf-faq-sidebar p,
body.pf-light-preview .pf-faq-answer p,
body.pf-light-preview .pf-faq-flow-list p,
body.pf-light-preview .pf-empty-state.inline p {
    color: #4f4231 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section .pf-kicker,
body.pf-light-preview .pf-account-card .pf-kicker,
body.pf-light-preview .pf-want-list-card .pf-kicker,
body.pf-light-preview .pf-request-sidebar .pf-kicker,
body.pf-light-preview .pf-faq-section .pf-kicker,
body.pf-light-preview .pf-faq-sidebar .pf-kicker,
body.pf-light-preview .pf-faq-mini-card .pf-kicker {
    color: #9a5d00 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-mini-stats div,
body.pf-light-preview .pf-history-card,
body.pf-light-preview .pf-history-item,
body.pf-light-preview .pf-want-item,
body.pf-light-preview .pf-request-sidebar .pf-request-total,
body.pf-light-preview .pf-faq-flow-list li,
body.pf-light-preview .pf-empty-state.inline {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .16) !important;
    background: rgba(255, 255, 255, .58) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .68) !important;
}

body.pf-light-preview .pf-empty-state.inline::after {
    color: rgba(112, 68, 9, .08) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-mini-stats span,
body.pf-light-preview .pf-want-item span,
body.pf-light-preview .pf-want-item small,
body.pf-light-preview .pf-history-card span,
body.pf-light-preview .pf-history-card small,
body.pf-light-preview .pf-history-item span,
body.pf-light-preview .pf-history-date,
body.pf-light-preview .pf-request-sidebar .pf-request-total span,
body.pf-light-preview .pf-faq-mini-card span {
    color: #6b5638 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-mini-stats strong,
body.pf-light-preview .pf-want-item strong,
body.pf-light-preview .pf-history-card strong,
body.pf-light-preview .pf-history-item strong,
body.pf-light-preview .pf-request-sidebar .pf-request-total strong {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-request-sidebar .pf-request-total strong,
body.pf-light-preview .pf-history-card-footer small {
    color: #b66b00 !important;
}

body.pf-light-preview .pf-faq-item[open],
body.pf-light-preview .pf-faq-item.is-active,
body.pf-light-preview .pf-faq-item:hover {
    border-color: rgba(177, 104, 0, .25) !important;
    background:
        radial-gradient(circle at 0 0, rgba(255, 194, 71, .24), transparent 30%),
        linear-gradient(135deg, rgba(255, 250, 241, .98), rgba(247, 234, 211, .94)) !important;
}

body.pf-light-preview .pf-faq-item summary {
    color: #21170c !important;
}

body.pf-light-preview .pf-faq-item summary span,
body.pf-light-preview .pf-faq-flow-list li > span {
    color: #211300 !important;
    border-color: rgba(177, 104, 0, .20) !important;
    background: linear-gradient(135deg, #ffe397 0%, #ffbd45 100%) !important;
    box-shadow: 0 10px 22px rgba(177, 104, 0, .15) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-item summary i {
    color: #8a5300 !important;
    border-color: rgba(112, 68, 9, .20) !important;
    background: rgba(255, 255, 255, .64) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .68) !important;
}

body.pf-light-preview .pf-faq-item summary i::before,
body.pf-light-preview .pf-faq-item summary i::after {
    background: #8a5300 !important;
}

body.pf-light-preview .pf-faq-answer {
    border-top-color: rgba(112, 68, 9, .12) !important;
}

body.pf-light-preview .pf-contact-settings-form label,
body.pf-light-preview .pf-request-box label,
body.pf-light-preview .pf-want-qty label,
body.pf-light-preview .pf-account-section label {
    color: #4a3211 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-contact-settings-form input,
body.pf-light-preview .pf-contact-settings-form select,
body.pf-light-preview .pf-contact-settings-form textarea,
body.pf-light-preview .pf-request-box textarea,
body.pf-light-preview .pf-want-qty input,
body.pf-light-preview .pf-account-section input,
body.pf-light-preview .pf-account-section select,
body.pf-light-preview .pf-account-section textarea {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .22) !important;
    background: rgba(255, 255, 255, .84) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72) !important;
}

body.pf-light-preview .pf-contact-settings-form input::placeholder,
body.pf-light-preview .pf-contact-settings-form textarea::placeholder,
body.pf-light-preview .pf-request-box textarea::placeholder,
body.pf-light-preview .pf-account-section input::placeholder,
body.pf-light-preview .pf-account-section textarea::placeholder {
    color: rgba(57, 42, 23, .52) !important;
}

body.pf-light-preview .pf-contact-settings-form input:focus,
body.pf-light-preview .pf-contact-settings-form select:focus,
body.pf-light-preview .pf-contact-settings-form textarea:focus,
body.pf-light-preview .pf-request-box textarea:focus,
body.pf-light-preview .pf-want-qty input:focus,
body.pf-light-preview .pf-account-section input:focus,
body.pf-light-preview .pf-account-section select:focus,
body.pf-light-preview .pf-account-section textarea:focus {
    border-color: rgba(196, 113, 0, .48) !important;
    box-shadow: 0 0 0 3px rgba(255, 194, 71, .22), inset 0 1px 0 rgba(255, 255, 255, .72) !important;
}

body.pf-light-preview .pf-mini-action,
body.pf-light-preview .pf-request-sidebar .pf-link-arrow,
body.pf-light-preview .pf-want-list-card .pf-link-arrow {
    color: #6a3f00 !important;
    border-color: rgba(112, 68, 9, .18) !important;
    background: rgba(255, 255, 255, .62) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-mini-action:hover,
body.pf-light-preview .pf-request-sidebar .pf-link-arrow:hover,
body.pf-light-preview .pf-want-list-card .pf-link-arrow:hover {
    color: #211300 !important;
    border-color: rgba(177, 104, 0, .30) !important;
    background: linear-gradient(135deg, #ffe397 0%, #ffbd45 100%) !important;
}

body.pf-light-preview .pf-request-box .pf-button:disabled,
body.pf-light-preview .pf-request-box .pf-button[disabled] {
    color: rgba(66, 51, 31, .72) !important;
    border-color: rgba(112, 68, 9, .14) !important;
    background: rgba(112, 68, 9, .12) !important;
    box-shadow: none !important;
}

/* Light mode contrast correction after card redesign. */
body.pf-light-preview .pf-account-section .pf-panel h2,
body.pf-light-preview .pf-account-section .pf-account-card h2,
body.pf-light-preview .pf-account-section .pf-account-summary-card h2,
body.pf-light-preview .pf-account-section .pf-request-history h2,
body.pf-light-preview .pf-account-section .pf-contact-settings-card h2,
body.pf-light-preview .pf-account-section .pf-want-list-card h2,
body.pf-light-preview .pf-account-section .pf-request-sidebar h2,
body.pf-light-preview .pf-account-section .pf-empty-state.inline h3 {
    color: #21170c !important;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
}

body.pf-light-preview .pf-account-section .pf-panel p,
body.pf-light-preview .pf-account-section .pf-account-card p,
body.pf-light-preview .pf-account-section .pf-account-summary-card p,
body.pf-light-preview .pf-account-section .pf-request-history p,
body.pf-light-preview .pf-account-section .pf-contact-settings-card p,
body.pf-light-preview .pf-account-section .pf-want-list-card p,
body.pf-light-preview .pf-account-section .pf-request-sidebar p,
body.pf-light-preview .pf-account-section .pf-empty-state.inline p {
    color: #4f4231 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section .pf-panel,
body.pf-light-preview .pf-account-section .pf-account-card,
body.pf-light-preview .pf-account-section .pf-account-summary-card,
body.pf-light-preview .pf-account-section .pf-request-history,
body.pf-light-preview .pf-account-section .pf-contact-settings-card,
body.pf-light-preview .pf-account-section .pf-want-list-card,
body.pf-light-preview .pf-account-section .pf-request-sidebar {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .18) !important;
    background:
        radial-gradient(circle at 10% 0%, rgba(255, 211, 110, .22), transparent 34%),
        linear-gradient(135deg, rgba(255, 252, 245, .97), rgba(247, 234, 211, .92)) !important;
    box-shadow: 0 22px 50px rgba(102, 65, 20, .13), inset 0 1px 0 rgba(255, 255, 255, .74) !important;
}

body.pf-light-preview .pf-account-section .pf-kicker,
body.pf-light-preview .pf-account-section .pf-panel .pf-kicker,
body.pf-light-preview .pf-account-section .pf-account-card .pf-kicker {
    color: #a05f00 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section .pf-empty-state.inline {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .16) !important;
    background: rgba(255, 255, 255, .58) !important;
}

body.pf-light-preview .pf-account-section .pf-empty-state.inline::after {
    color: rgba(112, 68, 9, .08) !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section .pf-account-mini-stats div,
body.pf-light-preview .pf-account-section .pf-history-card,
body.pf-light-preview .pf-account-section .pf-history-item,
body.pf-light-preview .pf-account-section .pf-want-item,
body.pf-light-preview .pf-account-section .pf-request-total {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .16) !important;
    background: rgba(255, 255, 255, .62) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .70) !important;
}

body.pf-light-preview .pf-account-section .pf-account-mini-stats span,
body.pf-light-preview .pf-account-section .pf-history-card span,
body.pf-light-preview .pf-account-section .pf-history-card small,
body.pf-light-preview .pf-account-section .pf-history-item span,
body.pf-light-preview .pf-account-section .pf-want-item span,
body.pf-light-preview .pf-account-section .pf-want-item small,
body.pf-light-preview .pf-account-section .pf-request-total span {
    color: #6b5638 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section .pf-account-mini-stats strong,
body.pf-light-preview .pf-account-section .pf-history-card strong,
body.pf-light-preview .pf-account-section .pf-history-item strong,
body.pf-light-preview .pf-account-section .pf-want-item strong {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section .pf-request-total strong,
body.pf-light-preview .pf-account-section .pf-history-card-footer small {
    color: #b66b00 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section label,
body.pf-light-preview .pf-account-section .pf-request-box label,
body.pf-light-preview .pf-account-section .pf-want-qty label,
body.pf-light-preview .pf-account-section .pf-contact-settings-form label {
    color: #4a3211 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-account-section input,
body.pf-light-preview .pf-account-section select,
body.pf-light-preview .pf-account-section textarea,
body.pf-light-preview .pf-account-section .pf-request-box textarea,
body.pf-light-preview .pf-account-section .pf-want-qty input,
body.pf-light-preview .pf-account-section .pf-contact-settings-form input,
body.pf-light-preview .pf-account-section .pf-contact-settings-form select,
body.pf-light-preview .pf-account-section .pf-contact-settings-form textarea {
    color: #21170c !important;
    border-color: rgba(112, 68, 9, .22) !important;
    background: rgba(255, 255, 255, .86) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72) !important;
}

body.pf-light-preview .pf-account-section input::placeholder,
body.pf-light-preview .pf-account-section textarea::placeholder,
body.pf-light-preview .pf-account-section .pf-request-box textarea::placeholder,
body.pf-light-preview .pf-account-section .pf-contact-settings-form input::placeholder,
body.pf-light-preview .pf-account-section .pf-contact-settings-form textarea::placeholder {
    color: rgba(57, 42, 23, .52) !important;
}

body.pf-light-preview .pf-faq-section .pf-faq-sidebar h2,
body.pf-light-preview .pf-faq-section .pf-faq-item summary strong,
body.pf-light-preview .pf-faq-section .pf-faq-mini-card strong,
body.pf-light-preview .pf-faq-section .pf-faq-flow-list strong {
    color: #21170c !important;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
}

body.pf-light-preview .pf-faq-section .pf-faq-sidebar p,
body.pf-light-preview .pf-faq-section .pf-faq-answer p,
body.pf-light-preview .pf-faq-section .pf-faq-flow-list p {
    color: #4f4231 !important;
    text-shadow: none !important;
}

/* Remove empty-state PF watermark in both modes. */
.pf-account-section .pf-empty-state.inline::after {
    content: none !important;
    display: none !important;
}

/* Light mode request sidebar footer polish. */
body.pf-light-preview .pf-account-section .pf-request-sidebar .pf-request-box .pf-button:disabled,
body.pf-light-preview .pf-account-section .pf-request-sidebar .pf-request-box .pf-button[disabled] {
    opacity: 1 !important;
    filter: none !important;
    color: #806f58 !important;
    border: 1px solid rgba(112, 68, 9, .16) !important;
    background: linear-gradient(135deg, rgba(235, 224, 204, .88), rgba(224, 211, 188, .76)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .56) !important;
    text-shadow: none !important;
    cursor: not-allowed !important;
}

body.pf-light-preview .pf-account-section .pf-request-sidebar > .pf-link-arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: start !important;
    min-height: 38px !important;
    margin-top: 2px !important;
    padding: 8px 14px !important;
    border: 1px solid rgba(112, 68, 9, .18) !important;
    border-radius: 999px !important;
    color: #5a390c !important;
    background: rgba(255, 255, 255, .62) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .64) !important;
    text-decoration: none !important;
    text-shadow: none !important;
    line-height: 1 !important;
}

body.pf-light-preview .pf-account-section .pf-request-sidebar > .pf-link-arrow:hover,
body.pf-light-preview .pf-account-section .pf-request-sidebar > .pf-link-arrow:focus-visible {
    color: #211300 !important;
    border-color: rgba(177, 104, 0, .30) !important;
    background: linear-gradient(135deg, #fff1c4 0%, #ffd36e 100%) !important;
    outline: none !important;
}

/* Premium FAQ light mode redesign. */
body.pf-light-preview .pf-faq-section {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 5%, rgba(255, 194, 71, .22), transparent 24rem),
        radial-gradient(circle at 94% 18%, rgba(128, 180, 138, .16), transparent 30rem),
        linear-gradient(180deg, #f7f0df 0%, #f4ead6 100%) !important;
}

body.pf-light-preview .pf-faq-section::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(138, 83, 0, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(138, 83, 0, .035) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: radial-gradient(circle at 50% 24%, rgba(0,0,0,.72), transparent 70%);
}

body.pf-light-preview .pf-faq-section .pf-container {
    position: relative;
    z-index: 1;
}

body.pf-light-preview .pf-faq-layout {
    gap: clamp(28px, 4vw, 42px) !important;
    grid-template-columns: minmax(300px, 390px) minmax(0, 1fr) !important;
}

body.pf-light-preview .pf-faq-sidebar {
    overflow: hidden;
    gap: 20px !important;
    border: 1px solid rgba(126, 78, 13, .18) !important;
    border-radius: 30px !important;
    padding: clamp(26px, 3vw, 36px) !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(255, 202, 82, .28), transparent 28%),
        linear-gradient(145deg, rgba(255, 255, 255, .94), rgba(255, 246, 231, .86)) !important;
    box-shadow:
        0 34px 90px rgba(105, 67, 19, .16),
        inset 0 1px 0 rgba(255, 255, 255, .82) !important;
}

body.pf-light-preview .pf-faq-sidebar::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 7px;
    background: linear-gradient(90deg, #ffb72f, #ffe08f, rgba(255, 183, 47, .15));
}

body.pf-light-preview .pf-faq-sidebar .pf-kicker {
    color: #a15f00 !important;
    letter-spacing: .08em !important;
}

body.pf-light-preview .pf-faq-sidebar h2 {
    color: #1e1408 !important;
    max-width: 10ch;
    font-size: clamp(2.2rem, 3.6vw, 3.8rem) !important;
    line-height: .91 !important;
    letter-spacing: -.06em !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-sidebar > p {
    color: #5a4934 !important;
    max-width: 31ch;
    font-size: .98rem;
    line-height: 1.7 !important;
}

body.pf-light-preview .pf-faq-flow-list {
    gap: 14px !important;
    margin-top: 4px !important;
}

body.pf-light-preview .pf-faq-flow-list li {
    position: relative;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 14px !important;
    border: 1px solid rgba(126, 78, 13, .14) !important;
    border-radius: 20px !important;
    padding: 15px !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(255, 250, 241, .72)) !important;
    box-shadow: 0 14px 30px rgba(105, 67, 19, .08), inset 0 1px 0 rgba(255,255,255,.85) !important;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

body.pf-light-preview .pf-faq-flow-list li:hover {
    transform: translateY(-2px);
    border-color: rgba(190, 112, 0, .26) !important;
    box-shadow: 0 18px 36px rgba(105, 67, 19, .12), inset 0 1px 0 rgba(255,255,255,.9) !important;
}

body.pf-light-preview .pf-faq-flow-list li::after {
    content: "";
    position: absolute;
    left: 36px;
    top: 52px;
    bottom: -15px;
    width: 2px;
    background: linear-gradient(180deg, rgba(255, 183, 47, .35), rgba(255, 183, 47, 0));
}

body.pf-light-preview .pf-faq-flow-list li:last-child::after {
    display: none;
}

body.pf-light-preview .pf-faq-flow-list li > span,
body.pf-light-preview .pf-faq-item summary span {
    color: #211300 !important;
    border: 1px solid rgba(183, 106, 0, .18) !important;
    background:
        radial-gradient(circle at 26% 18%, rgba(255,255,255,.75), transparent 28%),
        linear-gradient(135deg, #ffe79f 0%, #ffbf3f 58%, #f39a18 100%) !important;
    box-shadow: 0 14px 28px rgba(181, 104, 0, .18), inset 0 1px 0 rgba(255,255,255,.65) !important;
}

body.pf-light-preview .pf-faq-flow-list strong {
    color: #21170c !important;
    font-size: 1rem !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-flow-list p {
    color: #5a4934 !important;
    line-height: 1.5 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-mini-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(183, 106, 0, .18) !important;
    border-radius: 22px !important;
    padding: 18px !important;
    background:
        radial-gradient(circle at 0 0, rgba(255, 194, 71, .23), transparent 70%),
        linear-gradient(135deg, #fff9ee, #f7e9d0) !important;
    box-shadow: 0 18px 38px rgba(105, 67, 19, .10), inset 0 1px 0 rgba(255,255,255,.78) !important;
}

body.pf-light-preview .pf-faq-mini-card::before {
    content: "";
    position: absolute;
    inset: 14px auto 14px 0;
    width: 4px;
    border-radius: 999px;
    background: linear-gradient(180deg, #ffbd45, #f39a18);
}

body.pf-light-preview .pf-faq-mini-card strong {
    color: #21170c !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-mini-card span {
    color: #5a4934 !important;
}

body.pf-light-preview .pf-faq-accordion {
    gap: 16px !important;
}

body.pf-light-preview .pf-faq-item {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(126, 78, 13, .14) !important;
    border-radius: 28px !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(255, 248, 235, .86)) !important;
    box-shadow: 0 18px 46px rgba(105, 67, 19, .10), inset 0 1px 0 rgba(255, 255, 255, .82) !important;
    transform: none !important;
}

body.pf-light-preview .pf-faq-item::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 0;
    background: linear-gradient(180deg, #ffbd45, #f39a18);
    transition: width 180ms ease;
}

body.pf-light-preview .pf-faq-item:hover {
    border-color: rgba(190, 112, 0, .26) !important;
    box-shadow: 0 24px 56px rgba(105, 67, 19, .14), inset 0 1px 0 rgba(255,255,255,.9) !important;
}

body.pf-light-preview .pf-faq-item[open],
body.pf-light-preview .pf-faq-item.is-active {
    border-color: rgba(190, 112, 0, .28) !important;
    background:
        radial-gradient(circle at 0 0, rgba(255, 194, 71, .24), transparent 24rem),
        linear-gradient(135deg, rgba(255, 252, 245, .98), rgba(249, 236, 211, .95)) !important;
    box-shadow: 0 28px 68px rgba(105, 67, 19, .18), inset 0 1px 0 rgba(255,255,255,.88) !important;
}

body.pf-light-preview .pf-faq-item[open]::before,
body.pf-light-preview .pf-faq-item.is-active::before {
    width: 7px;
}

body.pf-light-preview .pf-faq-item summary {
    min-height: 88px !important;
    padding: 18px clamp(18px, 2.6vw, 30px) !important;
    grid-template-columns: 54px minmax(0, 1fr) 40px !important;
    gap: 18px !important;
}

body.pf-light-preview .pf-faq-item summary strong {
    color: #21170c !important;
    font-size: clamp(1.08rem, 1.7vw, 1.45rem) !important;
    letter-spacing: -.03em !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-item summary i {
    width: 38px !important;
    height: 38px !important;
    border: 1px solid rgba(126, 78, 13, .16) !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,246,229,.84)) !important;
    box-shadow: 0 12px 26px rgba(105, 67, 19, .10), inset 0 1px 0 rgba(255,255,255,.9) !important;
}

body.pf-light-preview .pf-faq-item summary i::before,
body.pf-light-preview .pf-faq-item summary i::after {
    background: #9a5d00 !important;
}

body.pf-light-preview .pf-faq-answer {
    margin: 0 clamp(18px, 2.6vw, 30px) 22px 90px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.pf-light-preview .pf-faq-answer p {
    position: relative;
    margin: 0 !important;
    max-width: 780px;
    border: 1px solid rgba(126, 78, 13, .12) !important;
    border-radius: 18px !important;
    padding: 18px 20px 18px 24px !important;
    color: #4f4231 !important;
    background: rgba(255, 255, 255, .62) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.78) !important;
    line-height: 1.65 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-faq-answer p::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 18px !important;
    bottom: 18px !important;
    width: 4px !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #ffbd45, #f39a18) !important;
}

body.pf-light-preview .pf-faq-hero-card {
    border-radius: 28px !important;
    background:
        radial-gradient(circle at 0 0, rgba(255, 194, 71, .25), transparent 18rem),
        linear-gradient(145deg, rgba(255, 255, 255, .92), rgba(255, 246, 231, .84)) !important;
}

body.pf-light-preview .pf-faq-hero-card span {
    color: #6b5638 !important;
}

body.pf-light-preview .pf-faq-hero-card strong {
    color: #21170c !important;
    text-shadow: none !important;
}

@media (max-width: 980px) {
    body.pf-light-preview .pf-faq-layout {
        grid-template-columns: 1fr !important;
    }

    body.pf-light-preview .pf-faq-sidebar {
        position: relative !important;
        top: auto !important;
    }
}

@media (max-width: 620px) {
    body.pf-light-preview .pf-faq-item summary {
        grid-template-columns: 44px minmax(0, 1fr) 36px !important;
        gap: 12px !important;
        min-height: 74px !important;
        padding: 16px !important;
    }

    body.pf-light-preview .pf-faq-item summary span {
        width: 38px !important;
        height: 38px !important;
    }

    body.pf-light-preview .pf-faq-item summary strong {
        font-size: 1rem !important;
    }

    body.pf-light-preview .pf-faq-answer {
        margin: 0 16px 18px 16px !important;
    }

    body.pf-light-preview .pf-faq-answer p {
        padding: 16px 16px 16px 20px !important;
    }
}

/* Signed-in customer actions inside the mobile menu. */
.pf-mobile-account-actions {
    display: none;
}

@media (max-width: 1024px) {
    .pf-mobile-account-actions {
        order: 997;
        display: grid;
        gap: 9px;
        margin-top: 8px;
        padding-top: 12px;
        border-top: 1px solid rgba(255, 255, 255, .10);
    }

    .pf-mobile-account-actions span {
        color: #aebdd5;
        font-size: .84rem;
        font-weight: 800;
        text-align: center;
    }

    .pf-mobile-account-actions a,
    .pf-mobile-account-actions button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 46px;
        border: 1px solid rgba(255, 211, 110, .24);
        border-radius: 999px;
        color: #fff6dc;
        background: rgba(255, 255, 255, .07);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
        font: inherit;
        font-weight: 900;
        line-height: 1;
        text-decoration: none;
        cursor: pointer;
    }

    .pf-mobile-account-actions form {
        margin: 0;
    }

    .pf-mobile-account-actions button {
        color: #ffd4ce;
        border-color: rgba(255, 110, 95, .28);
        background: rgba(255, 80, 63, .10);
    }

    .pf-mobile-account-actions a:hover,
    .pf-mobile-account-actions a:focus-visible,
    .pf-mobile-account-actions button:hover,
    .pf-mobile-account-actions button:focus-visible {
        color: #1a0b00;
        background: linear-gradient(135deg, #fff0bd 0%, #ffcb5e 48%, #f4a02a 100%);
        outline: none;
    }

    body.pf-light-preview .pf-mobile-account-actions {
        border-top-color: rgba(130, 77, 8, .16);
    }

    body.pf-light-preview .pf-mobile-account-actions span {
        color: #5a3a10;
    }

    body.pf-light-preview .pf-mobile-account-actions a,
    body.pf-light-preview .pf-mobile-account-actions button {
        color: #2a1906;
        border-color: rgba(112, 68, 9, .18);
        background: rgba(255, 252, 245, .78);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .62);
        text-shadow: none;
    }

    body.pf-light-preview .pf-mobile-account-actions button {
        color: #7b261c;
        border-color: rgba(155, 46, 35, .20);
        background: rgba(255, 237, 232, .82);
    }

    body.pf-light-preview .pf-mobile-account-actions a:hover,
    body.pf-light-preview .pf-mobile-account-actions a:focus-visible,
    body.pf-light-preview .pf-mobile-account-actions button:hover,
    body.pf-light-preview .pf-mobile-account-actions button:focus-visible {
        color: #160b00;
        border-color: rgba(177, 104, 0, .30);
        background: linear-gradient(135deg, #fff1c4 0%, #ffd36e 100%);
    }
}

/* Mobile signed-in menu spacing refinement. */
@media (max-width: 1024px) {
    .pf-nav.open {
        gap: 10px;
    }

    .pf-mobile-account-actions {
        gap: 8px !important;
        margin: 8px 0 12px !important;
        padding: 10px 0 16px !important;
        border-top: 1px solid rgba(255, 255, 255, .10) !important;
        border-bottom: 1px solid rgba(255, 255, 255, .10) !important;
    }

    .pf-mobile-account-actions span {
        margin-bottom: 2px;
        line-height: 1.25;
    }

    .pf-mobile-account-actions a,
    .pf-mobile-account-actions button,
    .pf-nav .pf-mobile-search-action,
    .pf-theme-toggle-mobile {
        min-height: 48px !important;
    }

    .pf-nav .pf-mobile-search-action,
    .pf-theme-toggle-mobile {
        margin-top: 0 !important;
    }

    .pf-theme-toggle-mobile {
        margin-bottom: 0 !important;
    }

    body.pf-light-preview .pf-mobile-account-actions {
        border-top-color: rgba(130, 77, 8, .15) !important;
        border-bottom-color: rgba(130, 77, 8, .15) !important;
    }
}

/* Solid light-mode mobile menu panel. */
@media (max-width: 1024px) {
    body.pf-light-preview .pf-nav,
    body.pf-light-preview .pf-nav.open {
        background: #fff7e8 !important;
        background-image: none !important;
        opacity: 1 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        box-shadow: 0 22px 52px rgba(102, 65, 20, .22) !important;
    }

    body.pf-light-preview .pf-nav a:not(.pf-mobile-search-action),
    body.pf-light-preview .pf-theme-toggle-mobile,
    body.pf-light-preview .pf-mobile-account-actions a,
    body.pf-light-preview .pf-mobile-account-actions button {
        background-color: #fffaf0 !important;
        background-image: none !important;
        opacity: 1 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    body.pf-light-preview .pf-nav a:not(.pf-mobile-search-action):hover,
    body.pf-light-preview .pf-nav a:not(.pf-mobile-search-action).active,
    body.pf-light-preview .pf-theme-toggle-mobile:hover,
    body.pf-light-preview .pf-theme-toggle-mobile:focus-visible {
        background: #ffe4a5 !important;
    }
}

/* Keep light mobile menu solid without pill backgrounds on standard nav links. */
@media (max-width: 1024px) {
    body.pf-light-preview .pf-nav > a:not(.pf-mobile-search-action):not(.active) {
        background: transparent !important;
        background-image: none !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    body.pf-light-preview .pf-nav > a:not(.pf-mobile-search-action):not(.active):hover,
    body.pf-light-preview .pf-nav > a:not(.pf-mobile-search-action):not(.active):focus-visible {
        color: #160b00 !important;
        background: rgba(255, 194, 71, .20) !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }
}

/* Final light mobile nav cleanup: no pills on standard menu rows. */
@media (max-width: 1024px) {
    body.pf-light-preview .pf-nav > a:not(.pf-mobile-search-action):not(.active),
    body.pf-light-preview .pf-nav > a:not(.pf-mobile-search-action):not(.active):hover,
    body.pf-light-preview .pf-nav > a:not(.pf-mobile-search-action):not(.active):focus-visible {
        color: #2b1a07 !important;
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        border-color: transparent !important;
        box-shadow: none !important;
        outline: none !important;
    }
}


/* Facebook top header and footer links. */
.pf-topline-meta {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
    flex-wrap: wrap;
    text-align: right;
}

.pf-topline-social,
.pf-footer-social {
    color: #ffd16b !important;
    font-weight: 900;
    text-decoration: none;
}

.pf-topline-social {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    border: 1px solid rgba(255, 194, 71, .28);
    border-radius: 999px;
    padding: 5px 12px;
    background: rgba(255, 194, 71, .08);
    font-size: 12px;
    line-height: 1;
}

.pf-topline-social:hover,
.pf-topline-social:focus-visible,
.pf-footer-social:hover,
.pf-footer-social:focus-visible {
    color: #fff6dc !important;
    border-color: rgba(255, 194, 71, .68);
    outline: none;
}

.pf-footer-social {
    display: inline-flex !important;
    align-items: center;
    width: fit-content;
    margin-top: 18px !important;
}

body.pf-light-preview .pf-topline-social,
body.pf-light-preview .pf-footer-social {
    color: #8c5500 !important;
    text-shadow: none !important;
}

body.pf-light-preview .pf-topline-social {
    border-color: rgba(133, 83, 14, .24);
    background: rgba(255, 255, 255, .64);
}

body.pf-light-preview .pf-topline-social:hover,
body.pf-light-preview .pf-topline-social:focus-visible,
body.pf-light-preview .pf-footer-social:hover,
body.pf-light-preview .pf-footer-social:focus-visible {
    color: #160b00 !important;
}

@media (max-width: 760px) {
    .pf-topline-meta {
        justify-content: flex-start;
        text-align: left;
    }
}

/* Facebook icon treatment for header and footer links. */
.pf-topline-social,
.pf-footer-social {
    gap: 8px;
}

.pf-topline-social::before,
.pf-footer-social::before {
    content: "f";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    color: #ffffff;
    background: #1877f2;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 900;
    line-height: 1;
    text-transform: lowercase;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .16), 0 8px 18px rgba(24, 119, 242, .22);
}

.pf-topline-social::before {
    width: 16px;
    height: 16px;
    font-size: 13px;
}

body.pf-light-preview .pf-topline-social::before,
body.pf-light-preview .pf-footer-social::before {
    box-shadow: 0 0 0 1px rgba(24, 119, 242, .18), 0 8px 18px rgba(24, 119, 242, .16);
}

/* Desktop header anti-wrap fixes for live hosting rendering. */
.pf-header-inner {
    flex-wrap: nowrap;
}

.pf-brand,
.pf-brand-wordmark,
.pf-brand strong,
.pf-brand small,
.pf-nav a,
.pf-header-actions,
.pf-theme-toggle,
.pf-header-action,
.pf-topline-inner > span,
.pf-topline-meta,
.pf-topline-account,
.pf-topline-account > span,
.pf-topline-account a,
.pf-topline-account button {
    white-space: nowrap;
}

.pf-brand {
    flex: 0 0 auto;
    min-width: max-content;
}

.pf-brand-wordmark {
    display: grid;
    gap: 2px;
    min-width: max-content;
}

.pf-brand small {
    display: block;
    line-height: 1.15;
}

.pf-nav {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: center;
}

.pf-nav a {
    flex: 0 0 auto;
    text-align: center;
}

.pf-header-actions {
    min-width: max-content;
}

.pf-topline-meta,
.pf-topline-account {
    flex: 0 1 auto;
    min-width: 0;
}

@media (min-width: 1025px) and (max-width: 1320px) {
    .pf-container {
        width: min(1280px, calc(100% - 24px));
    }

    .pf-header-inner {
        gap: 12px;
    }

    .pf-brand {
        gap: 10px;
    }

    .pf-brand-logo {
        width: 54px;
        height: 54px;
    }

    .pf-brand strong {
        font-size: clamp(20px, 1.8vw, 24px);
    }

    .pf-brand small {
        font-size: 11px;
        letter-spacing: .06em;
    }

    .pf-nav {
        gap: 2px;
    }

    .pf-nav a {
        padding-inline: 12px;
        font-size: .94rem;
    }

    .pf-header-actions {
        gap: 8px;
    }

    .pf-theme-toggle,
    .pf-header-action {
        padding-inline: 14px;
        font-size: .94rem;
    }
}

@media (max-width: 760px) {
    .pf-topline-inner > span,
    .pf-topline-meta,
    .pf-topline-account,
    .pf-topline-account > span,
    .pf-topline-account a,
    .pf-topline-account button {
        white-space: normal;
    }

    .pf-brand,
    .pf-brand-wordmark,
    .pf-brand strong,
    .pf-brand small {
        min-width: 0;
    }
}


/* Formatted product descriptions copied from vendor listings. */
.pf-product-description {
    max-width: 720px;
    margin: 18px 0 24px;
    color: #dce5f2;
    font-size: 1rem;
    line-height: 1.65;
}

.pf-product-description p,
.pf-product-description ul {
    margin: 0 0 14px;
}

.pf-product-description p:last-child,
.pf-product-description ul:last-child {
    margin-bottom: 0;
}

.pf-product-description ul {
    display: grid;
    gap: 7px;
    padding-left: 1.25rem;
}

.pf-product-description li {
    padding-left: 2px;
}

.pf-product-description strong {
    color: #fff6dc;
    font-weight: 900;
}

.pf-product-description em {
    color: #f3dfad;
    font-style: italic;
}

body.pf-light-preview .pf-product-description {
    color: #3f3324;
}

body.pf-light-preview .pf-product-description strong {
    color: #1e1307;
}

body.pf-light-preview .pf-product-description em {
    color: #7c4b05;
}

/* Mobile storefront hero focus and sizing polish. */
.pf-hero-slide {
    --pf-slide-position: center center;
    --pf-slide-mobile-position: var(--pf-slide-position);
}

.pf-hero-slide.slide-ygo {
    --pf-slide-position: 44% center;
    --pf-slide-mobile-position: 41% center;
}

.pf-hero-slide.slide-pokemon {
    --pf-slide-position: 50% center;
    --pf-slide-mobile-position: 47% center;
}

.pf-hero-slide.slide-mlbb {
    --pf-slide-position: 50% center;
    --pf-slide-mobile-position: 49% center;
}

.pf-hero-forged,
.pf-hero-slide {
    background:
        linear-gradient(90deg, rgba(6,7,11,.96), rgba(7,11,18,.72) 52%, rgba(8,12,18,.48)),
        var(--pf-slide-bg) var(--pf-slide-position, center center) / cover no-repeat;
}

body.pf-light-preview .pf-hero,
body.pf-light-preview .pf-hero-slide {
    background:
        linear-gradient(90deg, rgba(6,7,11,.96), rgba(7,11,18,.72) 52%, rgba(8,12,18,.48)),
        var(--pf-slide-bg) var(--pf-slide-position, center center) / cover no-repeat !important;
}

@media (max-width: 760px) {
    .pf-header,
    .pf-hero-slider,
    .pf-hero-slide,
    .pf-hero-grid,
    .pf-hero-copy {
        max-width: 100vw !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    .pf-hero-slider {
        min-height: 0;
    }

    .pf-hero-forged,
    .pf-hero-slide,
    body.pf-light-preview .pf-hero,
    body.pf-light-preview .pf-hero-slide {
        background:
            linear-gradient(180deg, rgba(5,7,11,.72) 0%, rgba(5,7,11,.66) 42%, rgba(5,7,11,.90) 100%),
            linear-gradient(90deg, rgba(5,7,11,.88), rgba(5,7,11,.44) 58%, rgba(5,7,11,.20)),
            var(--pf-slide-bg) var(--pf-slide-mobile-position, center center) / cover no-repeat !important;
    }

    .pf-hero-forged::before {
        background:
            radial-gradient(circle at 18% 10%, rgba(246,173,39,.24), transparent 34%),
            radial-gradient(circle at 90% 18%, rgba(0,169,220,.18), transparent 32%);
    }

    .pf-hero-grid {
        min-height: auto !important;
        gap: 22px !important;
        padding: 38px 0 70px !important;
        align-items: start !important;
    }

    .pf-hero-copy,
    .pf-hero-copy h1,
    .pf-hero-copy p,
    .pf-actions {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .pf-hero-copy h1 {
        margin-bottom: 14px !important;
        font-size: clamp(32px, 9.6vw, 42px) !important;
        line-height: 1.03 !important;
        letter-spacing: -.055em !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        text-wrap: balance;
    }

    .pf-hero-copy p {
        font-size: clamp(16px, 4.35vw, 19px) !important;
        line-height: 1.45 !important;
    }

    .pf-actions {
        margin-top: 22px !important;
        gap: 12px !important;
    }

    .pf-actions .pf-button {
        width: min(100%, 254px);
        max-width: 100% !important;
        min-height: 52px;
        justify-content: center;
        padding-inline: 20px;
        font-size: .98rem;
    }

    .pf-hero-card.pf-forge-card {
        width: min(100%, 286px) !important;
        max-width: 286px !important;
        justify-self: center !important;
        margin: 2px auto 0 !important;
        padding: 12px !important;
        border-radius: 20px !important;
        background:
            linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.05)),
            linear-gradient(135deg, rgba(255,194,71,.18), rgba(0,169,220,.08)) !important;
        backdrop-filter: blur(4px) !important;
    }

    .pf-hero-card .pf-hero-card-link img,
    .pf-hero-card > a > img,
    .pf-hero-card img {
        height: 306px !important;
        max-height: 42vh !important;
        object-fit: contain !important;
    }

    .pf-hero-card > .pf-hero-card-caption,
    .pf-hero-card > div:last-child,
    .pf-forge-card > .pf-hero-card-caption,
    .pf-forge-card > div:last-child {
        margin: 0 -12px -12px !important;
        padding: 14px 16px 17px !important;
        border-radius: 0 0 20px 20px !important;
    }

    .pf-hero-card > div:last-child h2,
    .pf-hero-card > div:last-child h2 a,
    .pf-forge-card > div:last-child h2,
    .pf-forge-card > div:last-child h2 a {
        font-size: 21px !important;
    }

    .pf-hero-card > div:last-child p,
    .pf-forge-card > div:last-child p {
        font-size: 12px !important;
    }

    .pf-slider-controls {
        bottom: 22px;
    }
}

@media (max-width: 430px) {
    .pf-hero-grid {
        padding-top: 34px !important;
    }

    .pf-hero-copy h1 {
        font-size: clamp(30px, 9.15vw, 38px) !important;
    }

    .pf-hero-copy p {
        font-size: clamp(15px, 4.1vw, 17px) !important;
    }

    .pf-actions .pf-button {
        width: min(100%, 238px);
    }

    .pf-hero-card.pf-forge-card {
        max-width: 260px !important;
    }

    .pf-hero-card .pf-hero-card-link img,
    .pf-hero-card > a > img,
    .pf-hero-card img {
        height: 278px !important;
        max-height: 39vh !important;
    }
}
/* End mobile storefront hero focus and sizing polish. */
/* Final mobile header fit: keep brand and Menu button visible together. */
@media (max-width: 760px) {
    .pf-header-inner {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        min-height: 86px !important;
        width: min(100% - 24px, 1240px) !important;
        max-width: calc(100vw - 24px) !important;
        overflow: hidden !important;
    }

    .pf-brand {
        flex: 1 1 calc(100% - 100px) !important;
        min-width: 0 !important;
        max-width: calc(100% - 100px) !important;
        overflow: hidden !important;
        gap: 10px !important;
    }

    .pf-brand-logo {
        flex: 0 0 auto !important;
        width: 50px !important;
        height: 50px !important;
    }

    .pf-brand-wordmark {
        min-width: 0 !important;
        overflow: hidden !important;
    }

    .pf-brand strong {
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: clamp(22px, 7vw, 30px) !important;
    }

    .pf-brand small {
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: clamp(10px, 3.1vw, 12px) !important;
        letter-spacing: .08em !important;
    }

    .pf-menu-toggle {
        display: inline-flex !important;
        flex: 0 0 88px !important;
        width: 88px !important;
        max-width: 88px !important;
        color: #160b00 !important;
        border-color: rgba(255, 211, 110, .48) !important;
        background:
            radial-gradient(circle at 20% 10%, rgba(255,255,255,.72), transparent 24%),
            linear-gradient(135deg, #ffe49a 0%, #ffc14a 48%, #f29a1f 100%) !important;
        box-shadow: 0 14px 32px rgba(246, 173, 39, .22) !important;
        text-shadow: none !important;
    }

    .pf-nav {
        top: calc(100% + 8px) !important;
        right: 14px !important;
        left: 14px !important;
    }
}

@media (max-width: 380px) {
    .pf-header-inner {
        width: min(100% - 18px, 1240px) !important;
        max-width: calc(100vw - 18px) !important;
        gap: 8px !important;
    }

    .pf-brand {
        flex-basis: calc(100% - 86px) !important;
        max-width: calc(100% - 86px) !important;
        gap: 8px !important;
    }

    .pf-brand-logo {
        width: 44px !important;
        height: 44px !important;
    }

    .pf-brand strong {
        font-size: clamp(20px, 6.6vw, 26px) !important;
    }

    .pf-brand small {
        font-size: 10px !important;
        letter-spacing: .055em !important;
    }

    .pf-menu-toggle {
        flex-basis: 78px !important;
        width: 78px !important;
        max-width: 78px !important;
        padding-inline: 12px !important;
    }
}
/* Final phone clipping guard for header and hero copy. */
@media (max-width: 760px) {
    .pf-header-inner {
        position: relative !important;
        padding-right: 102px !important;
    }

    .pf-brand {
        max-width: calc(100vw - 126px) !important;
    }

    .pf-menu-toggle {
        position: absolute !important;
        top: 50% !important;
        right: 0 !important;
        transform: translateY(-50%) !important;
        z-index: 2 !important;
    }

    .pf-hero-copy h1 {
        max-width: min(100%, 318px) !important;
        text-wrap: auto !important;
        white-space: normal !important;
    }

    .pf-hero-copy p {
        max-width: min(100%, 336px) !important;
        white-space: normal !important;
    }
}

@media (max-width: 430px) {
    .pf-hero-copy h1 {
        max-width: min(100%, 304px) !important;
    }

    .pf-hero-copy p {
        max-width: min(100%, 316px) !important;
    }
}
/* Final mobile viewport containment for menu and section headings. */
@media (max-width: 760px) {
    .pf-menu-toggle {
        position: fixed !important;
        top: 20px !important;
        right: 14px !important;
        transform: none !important;
    }

    .pf-section-heading,
    .pf-section-heading > div,
    .pf-section-heading h2,
    .pf-heading-copy {
        width: 100% !important;
        min-width: 0 !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .pf-section-heading h2 {
        max-width: min(100%, 330px) !important;
        font-size: clamp(30px, 9.6vw, 42px) !important;
        line-height: 1.04 !important;
        letter-spacing: -.055em !important;
        text-wrap: auto !important;
    }

    .pf-heading-copy {
        max-width: min(100%, 336px) !important;
        font-size: clamp(15px, 4.2vw, 18px) !important;
        line-height: 1.5 !important;
    }
}

@media (max-width: 430px) {
    .pf-menu-toggle {
        top: 18px !important;
        right: 10px !important;
    }

    .pf-section-heading h2 {
        max-width: min(100%, 306px) !important;
        font-size: clamp(28px, 9vw, 36px) !important;
    }

    .pf-heading-copy {
        max-width: min(100%, 312px) !important;
    }
}
/* Final functional mobile menu drawer fix. */
@media (max-width: 1024px) {
    .pf-header,
    .pf-header-inner {
        overflow: visible !important;
    }

    .pf-menu-toggle {
        z-index: 1002 !important;
        pointer-events: auto !important;
    }

    .pf-nav {
        position: fixed !important;
        z-index: 1001 !important;
        top: 96px !important;
        right: 14px !important;
        left: 14px !important;
        display: none !important;
        max-height: calc(100vh - 116px) !important;
        overflow-y: auto !important;
        overscroll-behavior: contain !important;
        border-radius: 20px !important;
        box-shadow: 0 24px 70px rgba(0, 0, 0, .48) !important;
    }

    .pf-nav.open {
        display: flex !important;
    }
}

@media (max-width: 430px) {
    .pf-nav {
        top: 90px !important;
        right: 10px !important;
        left: 10px !important;
        max-height: calc(100vh - 104px) !important;
    }
}
