/**
 * Pargas Platform — Homepage
 * Hero (dark industrial) → trust row (overlap) → industries → categories →
 * smart finder band → featured rail → why-pargas → documents → knowledge → CTA bands.
 */

/* ===== Hero ===== */
.pg-hero {
        background: linear-gradient(135deg, #072F3B 0%, var(--pg-ink-2) 58%, #0A5C74 100%);
        color: #fff;
        position: relative;
        overflow: hidden;
}
.pg-hero::before {
        content: "";
        position: absolute;
        width: 520px;
        height: 520px;
        border-radius: 50%;
        background: radial-gradient(circle, rgba(23, 96, 153, 0.35) 0%, transparent 65%);
        top: -220px;
        inset-inline-end: -160px;
        pointer-events: none;
}
.pg-hero::after {
        content: "";
        position: absolute;
        width: 420px;
        height: 420px;
        border-radius: 50%;
        background: radial-gradient(circle, rgba(242, 164, 19, 0.13) 0%, transparent 65%);
        bottom: -200px;
        inset-inline-start: -140px;
        pointer-events: none;
}
.pg-hero .pg-container {
        position: relative;
        z-index: 1;
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--pg-space-8);
        padding-block: var(--pg-space-10) var(--pg-space-12);
}
@media (min-width: 1024px) {
        .pg-hero .pg-container { grid-template-columns: 1.05fr 0.95fr; padding-block: var(--pg-space-11) calc(var(--pg-space-12) + 24px); }
}
.pg-hero__badge {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: var(--pg-accent);
        color: var(--pg-accent-ink);
        font-size: 0.71875rem;
        font-weight: 900;
        border-radius: var(--pg-round);
        padding: 5px 14px;
        margin-bottom: var(--pg-space-4);
}
.pg-hero__badge .pg-ico { width: 14px; height: 14px; }
.pg-hero__title { color: #fff; }
.pg-hero__title em {
        font-style: normal;
        color: var(--pg-accent-bright);
        position: relative;
        white-space: nowrap;
}
.pg-hero__desc {
        margin-top: var(--pg-space-4);
        color: var(--pg-on-ink-muted);
        font-size: 0.9375rem;
        line-height: 2.1;
        max-width: 540px;
}
.pg-hero__ctas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: var(--pg-space-6); }
.pg-hero__stats {
        display: flex;
        flex-wrap: wrap;
        gap: var(--pg-space-5) var(--pg-space-7);
        margin-top: var(--pg-space-7);
        padding-top: var(--pg-space-5);
        border-top: 1px solid var(--pg-on-ink-line);
}
.pg-hero__stat { display: flex; align-items: center; gap: 10px; }
.pg-hero__stat .pg-ico { color: var(--pg-accent-bright); width: 22px; height: 22px; }
.pg-hero__stat b { display: block; font-size: 0.9375rem; font-weight: 900; color: #fff; line-height: 1.5; }
.pg-hero__stat span { font-size: 0.6875rem; color: var(--pg-on-ink-soft); }

/* Hero visual — framed product card + floating chips */
.pg-hero__visual { display: none; position: relative; }
@media (min-width: 1024px) { .pg-hero__visual { display: block; } }
.pg-hero__frame-back {
        position: absolute;
        inset: -14px -14px auto auto;
        width: 86%;
        height: 86%;
        border-radius: 26px;
        background: rgba(255, 255, 255, 0.07);
        border: 1px solid rgba(255, 255, 255, 0.12);
        transform: rotate(-2deg);
}
.pg-hero__frame {
        position: relative;
        border-radius: 26px;
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.18);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        padding: var(--pg-space-6);
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: var(--pg-space-4);
}
.pg-hero__imgbox {
        grid-column: span 2;
        background: linear-gradient(140deg, #FFFFFF 0%, #ECFEFF 100%);
        border-radius: 18px;
        aspect-ratio: 16 / 10;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        position: relative;
}
.pg-hero__imgbox img { width: 100%; height: 100%; object-fit: cover; }
.pg-hero__imgbox .pg-dot-pattern { opacity: 0.08; }
.pg-hero__mini {
        background: rgba(255, 255, 255, 0.94);
        border-radius: 14px;
        padding: 12px 14px;
        display: flex;
        align-items: center;
        gap: 10px;
        color: var(--pg-fg);
}
.pg-hero__mini .pg-tile { width: 38px; height: 38px; }
.pg-hero__mini b { font-size: 0.75rem; font-weight: 900; display: block; line-height: 1.6; }
.pg-hero__mini span { font-size: 0.625rem; color: var(--pg-fg-soft); }
.pg-hero__chip {
        position: absolute;
        background: var(--pg-surface);
        color: var(--pg-fg);
        border-radius: 14px;
        padding: 10px 16px;
        font-size: 0.75rem;
        font-weight: 900;
        box-shadow: var(--pg-shadow-soft);
        display: flex;
        align-items: center;
        gap: 8px;
}
.pg-hero__chip .pg-ico { width: 16px; height: 16px; color: var(--pg-success); }
.pg-hero__chip--1 { top: -16px; inset-inline-start: -12px; transform: rotate(2deg); }
.pg-hero__chip--2 { bottom: -14px; inset-inline-end: 6px; transform: rotate(-2deg); background: var(--pg-accent); color: var(--pg-accent-ink); }

/* ===== Trust row (overlaps hero) ===== */
.pg-trustrow { position: relative; z-index: 2; margin-top: calc(var(--pg-space-7) * -1); }
.pg-trustrow__grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: var(--pg-space-3);
}
@media (min-width: 1024px) { .pg-trustrow__grid { grid-template-columns: repeat(4, 1fr); gap: var(--pg-space-4); } }
.pg-trustrow__card {
        background: var(--pg-surface);
        border: 1px solid var(--pg-border);
        border-radius: var(--pg-radius-lg);
        padding: var(--pg-space-4);
        display: flex;
        align-items: flex-start;
        gap: 12px;
        box-shadow: var(--pg-shadow-soft);
        transition: all var(--pg-dur) var(--pg-ease);
}
.pg-trustrow__card:hover { transform: translateY(-2px); border-color: #A5F3FC; }
.pg-trustrow__card .pg-tile { width: 40px; height: 40px; }
.pg-trustrow__card b { font-size: 0.8125rem; font-weight: 900; display: block; line-height: 1.7; }
.pg-trustrow__card span { font-size: 0.71875rem; color: var(--pg-fg-soft); line-height: 1.7; }

/* ===== Industries ===== */
.pg-ind-card {
        display: flex;
        flex-direction: column;
        gap: var(--pg-space-2);
        padding: var(--pg-space-5);
        position: relative;
        overflow: hidden;
}
.pg-ind-card::after {
        content: "";
        position: absolute;
        top: -34px;
        inset-inline-end: -34px;
        width: 96px;
        height: 96px;
        border-radius: 50%;
        background: var(--pg-primary-soft);
        transition: transform var(--pg-dur-slow) var(--pg-ease);
}
.pg-ind-card:hover::after { transform: scale(1.35); }
.pg-ind-card > * { position: relative; z-index: 1; }
.pg-ind-card h3 { font-size: 0.9375rem; font-weight: 900; }
.pg-ind-card p { font-size: 0.75rem; color: var(--pg-fg-soft); line-height: 1.9; flex: 1; }
.pg-ind-card__link {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        font-size: 0.75rem;
        font-weight: 700;
        color: var(--pg-primary);
}
.pg-ind-card__link .pg-ico { width: 14px; height: 14px; transition: transform var(--pg-dur) var(--pg-ease); }
.pg-ind-card:hover .pg-ind-card__link .pg-ico { transform: translateX(-3px); }

/* ===== Category cards ===== */
.pg-cat-card {
        display: flex;
        flex-direction: column;
        padding: var(--pg-space-5);
        gap: 6px;
}
.pg-cat-card__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--pg-space-2); }
.pg-cat-card h3 { font-size: 0.875rem; font-weight: 900; line-height: 1.7; }
.pg-cat-card p { font-size: 0.71875rem; color: var(--pg-fg-soft); line-height: 1.8; flex: 1; }
.pg-cat-card__count {
        margin-top: var(--pg-space-3);
        padding-top: var(--pg-space-3);
        border-top: 1px solid var(--pg-border);
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-size: 0.75rem;
        color: var(--pg-fg-muted);
        font-weight: 700;
}
.pg-cat-card__count .pg-ico { width: 15px; height: 15px; color: var(--pg-primary); transition: transform var(--pg-dur) var(--pg-ease); }
.pg-cat-card:hover .pg-cat-card__count .pg-ico { transform: translateX(-3px); }

/* ===== Smart finder band ===== */
.pg-finder-band {
        background: linear-gradient(135deg, var(--pg-primary-strong) 0%, var(--pg-primary) 55%, #06B6D4 100%);
        border-radius: var(--pg-radius-xl);
        color: #fff;
        padding: var(--pg-space-7);
        position: relative;
        overflow: hidden;
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--pg-space-6);
}
@media (min-width: 1024px) {
        .pg-finder-band { grid-template-columns: 1fr 1.1fr; padding: var(--pg-space-9); }
}
.pg-finder-band .pg-dot-pattern { opacity: 0.12; }
.pg-finder-band__copy { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; }
.pg-finder-band__copy h2 { color: #fff; }
.pg-finder-band__copy p { color: rgba(255, 255, 255, 0.78); font-size: 0.875rem; line-height: 2; margin-top: var(--pg-space-2); max-width: 420px; }
.pg-finder-band__pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: var(--pg-space-4); }
.pg-finder-band__pills span {
        background: rgba(255, 255, 255, 0.12);
        border: 1px solid rgba(255, 255, 255, 0.14);
        border-radius: var(--pg-round);
        padding: 5px 14px;
        font-size: 0.71875rem;
        color: rgba(255, 255, 255, 0.9);
}
.pg-finder {
        position: relative;
        z-index: 1;
        background: var(--pg-surface);
        border-radius: var(--pg-radius-lg);
        padding: var(--pg-space-5);
        color: var(--pg-fg);
        box-shadow: var(--pg-shadow-pop);
}
.pg-finder__steps { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: var(--pg-space-4); }
.pg-finder__q { font-weight: 900; font-size: 0.9375rem; margin-bottom: var(--pg-space-3); display: flex; align-items: center; gap: 8px; }
.pg-finder__q .pg-finder__stepnum {
        width: 26px;
        height: 26px;
        border-radius: var(--pg-round);
        background: var(--pg-primary-soft);
        color: var(--pg-primary);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 0.75rem;
        font-weight: 900;
}
.pg-finder__opts { display: flex; flex-wrap: wrap; gap: 8px; }
.pg-finder__opts .pg-chip { background: var(--pg-surface); }
.pg-finder__opts .pg-chip.is-active { background: var(--pg-primary); border-color: var(--pg-primary); color: #fff; }
.pg-finder__nav { display: flex; align-items: center; justify-content: space-between; gap: var(--pg-space-3); margin-top: var(--pg-space-5); padding-top: var(--pg-space-4); border-top: 1px solid var(--pg-border); }
.pg-finder__progress { flex: 1; height: 5px; border-radius: var(--pg-round); background: var(--pg-surface-2); overflow: hidden; }
.pg-finder__progress i { display: block; height: 100%; background: var(--pg-primary); border-radius: var(--pg-round); transition: width 0.5s var(--pg-ease); }
.pg-finder__results { margin-top: var(--pg-space-4); }
.pg-finder__result {
        display: flex;
        gap: 12px;
        align-items: flex-start;
        padding: var(--pg-space-3);
        border: 1px solid var(--pg-border);
        border-radius: var(--pg-radius);
        margin-bottom: 8px;
        background: var(--pg-surface);
        transition: all var(--pg-dur) var(--pg-ease);
}
.pg-finder__result:hover { border-color: #A5F3FC; box-shadow: var(--pg-shadow-soft); }
.pg-finder__result img { width: 56px; height: 56px; object-fit: contain; border-radius: 10px; background: var(--pg-surface-2); flex: none; }
.pg-finder__result h4 { font-size: 0.8125rem; font-weight: 900; }
.pg-finder__reason { font-size: 0.71875rem; color: var(--pg-success); display: flex; align-items: center; gap: 4px; margin-top: 2px; }
.pg-finder__result .pg-btn { margin-inline-start: auto; flex: none; }
.pg-finder__loading { display: flex; align-items: center; gap: 10px; padding: var(--pg-space-4); color: var(--pg-fg-muted); font-size: 0.8125rem; }
.pg-finder__spinner {
        width: 20px;
        height: 20px;
        border: 2.5px solid var(--pg-surface-2);
        border-top-color: var(--pg-primary);
        border-radius: 50%;
        animation: pg-spin 0.8s linear infinite;
}

/* ===== Why Pargas ===== */
.pg-why-card { padding: var(--pg-space-6); display: flex; flex-direction: column; gap: var(--pg-space-3); }
.pg-why-card p { font-size: 0.8125rem; color: var(--pg-fg-muted); line-height: 2; flex: 1; }
.pg-why-card__stat {
        border-top: 1px solid var(--pg-border);
        padding-top: var(--pg-space-3);
        display: flex;
        align-items: baseline;
        gap: 8px;
}
.pg-why-card__stat b { font-size: 1.375rem; font-weight: 900; color: var(--pg-primary); }
.pg-why-card__stat span { font-size: 0.71875rem; color: var(--pg-fg-soft); }

/* ===== Documents hub teaser ===== */
.pg-doc-card { padding: var(--pg-space-5); display: flex; flex-direction: column; gap: 8px; }
.pg-doc-card h3 { font-size: 0.875rem; font-weight: 900; }
.pg-doc-card p { font-size: 0.75rem; color: var(--pg-fg-soft); line-height: 1.9; flex: 1; }
.pg-doc-card__meta { display: flex; align-items: center; gap: 6px; font-size: 0.6875rem; color: var(--pg-fg-soft); padding-top: var(--pg-space-3); border-top: 1px solid var(--pg-border); }

/* ===== Knowledge cards ===== */
.pg-post-card { display: flex; flex-direction: column; overflow: hidden; }
.pg-post-card__thumb {
        aspect-ratio: 16 / 9;
        background: linear-gradient(135deg, var(--pg-primary-strong), #06B6D4);
        display: flex;
        align-items: center;
        justify-content: center;
        color: rgba(255, 255, 255, 0.85);
        position: relative;
        overflow: hidden;
}
.pg-post-card__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s var(--pg-ease); }
.pg-post-card:hover .pg-post-card__thumb img { transform: scale(1.05); }
.pg-post-card__thumb .pg-badge { position: absolute; top: 12px; inset-inline-start: 12px; }
.pg-post-card__body { padding: var(--pg-space-4) var(--pg-space-5) var(--pg-space-5); display: flex; flex-direction: column; gap: 8px; flex: 1; }
.pg-post-card h3 { font-size: 0.875rem; font-weight: 900; line-height: 1.8; }
.pg-post-card h3 a { color: var(--pg-fg); }
.pg-post-card h3 a:hover { color: var(--pg-primary); }
.pg-post-card__excerpt { font-size: 0.75rem; color: var(--pg-fg-muted); line-height: 1.9; flex: 1; }
.pg-post-card__meta { display: flex; align-items: center; justify-content: space-between; font-size: 0.6875rem; color: var(--pg-fg-soft); padding-top: var(--pg-space-3); border-top: 1px solid var(--pg-border); }

/* ===== CTA bands ===== */
.pg-cta-band {
        border-radius: var(--pg-radius-xl);
        border: 1px solid #A5F3FC;
        background: linear-gradient(105deg, var(--pg-primary-soft) 0%, #FFFFFF 45%, var(--pg-accent-soft) 100%);
        padding: var(--pg-space-7);
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--pg-space-5);
        align-items: center;
}
@media (min-width: 768px) { .pg-cta-band { grid-template-columns: auto 1fr auto; } }
.pg-cta-band__tile {
        width: 64px;
        height: 64px;
        border-radius: var(--pg-radius-xl);
        background: var(--pg-primary);
        color: #fff;
        display: none;
        align-items: center;
        justify-content: center;
        box-shadow: var(--pg-shadow-btn);
}
.pg-cta-band__tile .pg-ico { width: 30px; height: 30px; }
@media (min-width: 768px) { .pg-cta-band__tile { display: inline-flex; } }
.pg-cta-band h2 { font-size: 1.125rem; font-weight: 900; }
.pg-cta-band p { font-size: 0.8125rem; color: var(--pg-fg-muted); margin-top: 4px; line-height: 1.9; }
.pg-cta-band__actions { display: flex; flex-wrap: wrap; gap: 10px; }
@media (min-width: 768px) { .pg-cta-band__actions { justify-content: flex-end; } }

/* Dark final CTA */
.pg-final-cta {
        border-radius: var(--pg-radius-xl);
        background: linear-gradient(135deg, var(--pg-ink) 0%, var(--pg-ink-2) 100%);
        color: #fff;
        padding: var(--pg-space-9) var(--pg-space-6);
        text-align: center;
        position: relative;
        overflow: hidden;
}
.pg-final-cta .pg-ico--deco {
        position: absolute;
        width: 120px;
        height: 120px;
        color: rgba(255, 255, 255, 0.05);
        top: -20px;
        inset-inline-end: -20px;
}
.pg-final-cta h2 { color: #fff; font-size: 1.375rem; margin-bottom: var(--pg-space-2); position: relative; z-index: 1; }
.pg-final-cta p { color: var(--pg-on-ink-muted); font-size: 0.875rem; max-width: 520px; margin-inline: auto; position: relative; z-index: 1; }
.pg-final-cta__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: var(--pg-space-5); position: relative; z-index: 1; }
.pg-final-cta__phone { margin-top: var(--pg-space-5); font-size: 0.75rem; color: var(--pg-on-ink-soft); position: relative; z-index: 1; }

/* ===== Motion v2 — conceptual animations (RTL sweep direction) ===== */
@keyframes pg-float-y {
        0%, 100% { translate: 0 0; }
        50% { translate: 0 -9px; }
}
.pg-hero__chip { animation: pg-float-y 5.2s ease-in-out infinite; }
.pg-hero__chip--2 { animation-duration: 6.4s; animation-delay: 1.1s; }
.pg-hero__mini { animation: pg-float-y 7s ease-in-out infinite; }
.pg-hero__mini:nth-of-type(3) { animation-delay: 1.4s; animation-duration: 7.8s; }
.pg-cta-band__tile { animation: pg-float-y 6s ease-in-out infinite; }

/* drifting radial glows on dark hero */
.pg-hero::before { animation: pg-glow-a 14s ease-in-out infinite alternate; }
.pg-hero::after { animation: pg-glow-b 17s ease-in-out infinite alternate; }
@keyframes pg-glow-a {
        from { translate: 0 0; }
        to { translate: -70px 46px; }
}
@keyframes pg-glow-b {
        from { translate: 0 0; }
        to { translate: 60px -36px; }
}

/* Smart-finder band — light sweep + sequentially lit step pills */
.pg-finder-band::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        inset-inline-start: 0;
        width: 34%;
        background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.09) 45%, rgba(34, 211, 238, 0.16) 55%, transparent);
        transform: skewX(-14deg);
        animation: pg-scan 6.5s ease-in-out infinite;
        pointer-events: none;
}
@keyframes pg-scan {
        0% { translate: 30% 0; opacity: 0; }
        12% { opacity: 1; }
        55% { translate: -320% 0; opacity: 1; }
        100% { translate: -320% 0; opacity: 0; }
}
.pg-finder-band__pills span { animation: pg-pill-flow 7.5s ease-in-out infinite; }
.pg-finder-band__pills span:nth-child(2) { animation-delay: 1.2s; }
.pg-finder-band__pills span:nth-child(3) { animation-delay: 2.4s; }
@keyframes pg-pill-flow {
        0%, 55%, 100% { background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.14); }
        12%, 30% { background: rgba(6, 182, 212, 0.38); border-color: rgba(34, 211, 238, 0.65); }
}

@media (prefers-reduced-motion: reduce) {
        .pg-hero__chip, .pg-hero__mini, .pg-cta-band__tile, .pg-finder-band__pills span,
        .pg-hero::before, .pg-hero::after, .pg-finder-band::after { animation: none !important; }
}

/* ===== Hero v3 — «چرخه بهداشت پرگاس» stage chips (9s sync with hero.svg) ===== */
.pg-hero__imgbox { position: relative; }
.pg-hero__stages { position: absolute; inset: 0; pointer-events: none; }
.pg-hstage {
        position: absolute;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        background: var(--pg-surface);
        border: 1.5px solid var(--pg-border);
        border-radius: var(--pg-round);
        padding: 6px 14px;
        font-size: 0.6875rem;
        font-weight: 800;
        color: var(--pg-fg-muted);
        box-shadow: var(--pg-shadow-soft);
        opacity: 0.55;
        white-space: nowrap;
}
.pg-hstage i { width: 8px; height: 8px; border-radius: 50%; background: var(--pg-border-strong); flex: none; }
.pg-hstage--1 { top: 6%; inset-inline-start: 3%; animation: pg-stage-1 9s linear infinite; }
.pg-hstage--2 { top: 40%; inset-inline-end: 3%; animation: pg-stage-2 9s linear infinite; }
.pg-hstage--3 { bottom: 4%; inset-inline-start: 22%; animation: pg-stage-3 9s linear infinite; }
@keyframes pg-stage-1 {
        0% { opacity: 0.55; transform: translateY(0); }
        4% { opacity: 1; transform: translateY(-2px); color: var(--pg-danger); border-color: #FECACA; background: #FEF2F2; }
        28% { opacity: 1; color: var(--pg-danger); border-color: #FECACA; background: #FEF2F2; }
        34% { opacity: 0.55; transform: none; color: var(--pg-fg-muted); border-color: var(--pg-border); background: var(--pg-surface); }
        100% { opacity: 0.55; }
}
@keyframes pg-stage-2 {
        0%, 30% { opacity: 0.55; transform: translateY(0); }
        33% { opacity: 1; transform: translateY(-2px); color: var(--pg-primary-strong); border-color: #A5F3FC; background: #ECFEFF; }
        52% { opacity: 1; color: var(--pg-primary-strong); border-color: #A5F3FC; background: #ECFEFF; }
        58% { opacity: 0.55; transform: none; color: var(--pg-fg-muted); border-color: var(--pg-border); background: var(--pg-surface); }
        100% { opacity: 0.55; }
}
@keyframes pg-stage-3 {
        0%, 55% { opacity: 0.55; transform: translateY(0); }
        58% { opacity: 1; transform: translateY(-2px); color: var(--pg-success); border-color: #A7F3D0; background: #ECFDF5; }
        90% { opacity: 1; color: var(--pg-success); border-color: #A7F3D0; background: #ECFDF5; }
        96% { opacity: 0.55; transform: none; color: var(--pg-fg-muted); border-color: var(--pg-border); background: var(--pg-surface); }
        100% { opacity: 0.55; }
}
.pg-hstage--1 i { animation: pg-stage-dot-1 9s linear infinite; }
.pg-hstage--2 i { animation: pg-stage-dot-2 9s linear infinite; }
.pg-hstage--3 i { animation: pg-stage-dot-3 9s linear infinite; }
@keyframes pg-stage-dot-1 {
        0%, 3% { background: var(--pg-border-strong); transform: scale(1); }
        6%, 30% { background: var(--pg-danger); transform: scale(1.25); }
        36%, 100% { background: var(--pg-border-strong); transform: scale(1); }
}
@keyframes pg-stage-dot-2 {
        0%, 32% { background: var(--pg-border-strong); transform: scale(1); }
        36%, 52% { background: var(--pg-primary); transform: scale(1.25); }
        58%, 100% { background: var(--pg-border-strong); transform: scale(1); }
}
@keyframes pg-stage-dot-3 {
        0%, 57% { background: var(--pg-border-strong); transform: scale(1); }
        60%, 90% { background: var(--pg-success); transform: scale(1.25); }
        96%, 100% { background: var(--pg-border-strong); transform: scale(1); }
}
.pg-hero__concept {
        position: absolute;
        bottom: 12px;
        inset-inline-end: 12px;
        background: rgba(15, 23, 42, 0.78);
        color: #fff;
        font-size: 0.625rem;
        font-weight: 700;
        border-radius: var(--pg-round);
        padding: 5px 12px;
        backdrop-filter: blur(4px);
        -webkit-backdrop-filter: blur(4px);
}
@media (prefers-reduced-motion: reduce) {
        .pg-hstage, .pg-hstage i { animation: none !important; }
}

/* ================================================================
   v4 additions — partners marquee + certificates band
   ================================================================ */

/* ---- Partners (همکاران ما در صنایع غذایی ایران) ---- */
.pg-partners { margin-top: var(--pg-space-10); padding-block: var(--pg-space-8); background: linear-gradient(180deg, var(--pg-surface) 0%, var(--pg-primary-softer) 100%); border-block: 1px solid var(--pg-border); overflow: hidden; }
.pg-partners__head { text-align: center; margin-bottom: var(--pg-space-6); }
.pg-partners__head .pg-h2 { position: relative; display: inline-block; padding-bottom: 12px; }
.pg-partners__head .pg-h2::after { content: ""; position: absolute; inset-inline: 50%; translate: 50% 0; bottom: 0; width: 56px; height: 3px; border-radius: 2px; background: var(--pg-grad-cool); }
.pg-partners__sub { margin-top: 8px; font-size: var(--pg-fs-small); color: var(--pg-fg-muted); }
.pg-partners__marquee { position: relative; }
.pg-partners__marquee::before, .pg-partners__marquee::after { content: ""; position: absolute; top: 0; bottom: 0; width: 72px; z-index: 2; pointer-events: none; }
.pg-partners__marquee::before { inset-inline-start: 0; background: linear-gradient(90deg, var(--pg-primary-softer), transparent); }
.pg-partners__marquee::after { inset-inline-end: 0; background: linear-gradient(-90deg, var(--pg-primary-softer), transparent); }
.pg-partners__track { display: flex; gap: 14px; width: max-content; animation: pgMarquee 36s linear infinite; }
.pg-partners__marquee:hover .pg-partners__track { animation-play-state: paused; }
@keyframes pgMarquee { from { transform: translateX(0); } to { transform: translateX(50%); } }
.pg-partner { display: inline-flex; align-items: center; gap: 10px; padding: 14px 26px; background: var(--pg-surface); border: 1px solid var(--pg-border); border-radius: 14px; box-shadow: var(--pg-shadow-soft); transition: all var(--pg-dur) var(--pg-ease); }
.pg-partner:hover { border-color: var(--pg-primary); box-shadow: var(--pg-shadow-pop); translate: 0 -3px; }
.pg-partner b { font-size: 1rem; font-weight: 900; color: var(--pg-fg-muted); transition: color var(--pg-dur); white-space: nowrap; }
.pg-partner:hover b { color: var(--pg-primary-strong); }
.pg-partner__glyph { width: 22px; height: 22px; color: var(--pg-fg-soft); transition: all var(--pg-dur) var(--pg-ease); }
.pg-partner:hover .pg-partner__glyph { color: var(--pg-accent); rotate: -8deg; scale: 1.15; }

/* ---- Certificates band (گواهی‌نامه‌ها و تأییدیه‌های معتبر) ---- */
.pg-certs { position: relative; margin-block: var(--pg-section-gap); padding-block: var(--pg-section-pad); background: linear-gradient(135deg, var(--pg-ink) 0%, var(--pg-ink-2) 60%, #0E7490 130%); color: var(--pg-on-ink); overflow: hidden; }
.pg-certs .pg-container { position: relative; z-index: 1; text-align: center; }
.pg-certs .pg-dot-pattern { position: absolute; inset: 0; opacity: .5; }
.pg-certs__kicker { display: inline-flex; align-items: center; gap: 8px; padding: 6px 16px; border-radius: var(--pg-round); background: rgba(255,255,255,.08); border: 1px solid var(--pg-on-ink-line); font-size: var(--pg-fs-meta); font-weight: 700; color: var(--pg-on-ink-muted); }
.pg-certs__kicker .pg-ico { width: 15px; height: 15px; color: var(--pg-accent-bright); }
.pg-certs h2 { margin-top: 14px; color: #fff; }
.pg-certs__sub { margin-top: 8px; font-size: var(--pg-fs-small); color: var(--pg-on-ink-muted); }
.pg-certs__grid { margin-top: var(--pg-space-8); display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
.pg-cert { position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 22px 10px 18px; border-radius: 16px; background: rgba(255,255,255,.05); border: 1px solid var(--pg-on-ink-line); transition: all var(--pg-dur) var(--pg-ease); --cert: #34D399; }
.pg-cert:hover { translate: 0 -4px; background: rgba(255,255,255,.09); border-color: var(--cert); box-shadow: 0 16px 34px -14px rgba(0,0,0,.4); }
.pg-cert__ring { position: absolute; top: 10px; width: 58px; height: 58px; border-radius: 50%; border: 1.5px dashed color-mix(in srgb, var(--cert) 55%, transparent); animation: pgCertRing 14s linear infinite; }
@keyframes pgCertRing { to { rotate: 360deg; } }
.pg-cert__seal { position: relative; width: 58px; height: 58px; border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle at 32% 28%, color-mix(in srgb, var(--cert) 34%, transparent), rgba(255,255,255,.04) 70%); border: 1.5px solid var(--cert); color: var(--cert); transition: scale var(--pg-dur) var(--pg-ease); }
.pg-cert:hover .pg-cert__seal { scale: 1.08; }
.pg-cert__seal .pg-ico, .pg-cert__seal svg { width: 26px; height: 26px; }
.pg-cert b { font-size: .875rem; font-weight: 900; color: #fff; direction: ltr; }
.pg-cert--fda-ir b, .pg-cert--fda-ir ~ .pg-cert b { direction: inherit; }
.pg-cert span { font-size: .71875rem; color: var(--pg-on-ink-muted); }
.pg-cert--green { --cert: #34D399; }
.pg-cert--blue { --cert: #60A5FA; }
.pg-cert--teal { --cert: #2DD4BF; }
.pg-cert--amber { --cert: #FBBF24; }
.pg-cert--cyan { --cert: #22D3EE; }
.pg-cert--rose { --cert: #FB7185; }
.pg-certs__note { margin-top: var(--pg-space-7); display: inline-flex; align-items: center; gap: 8px; padding: 10px 22px; border-radius: var(--pg-round); background: rgba(255,255,255,.08); border: 1px solid var(--pg-on-ink-line); color: var(--pg-on-ink); font-size: var(--pg-fs-small); font-weight: 700; transition: all var(--pg-dur) var(--pg-ease); }
.pg-certs__note:hover { background: var(--pg-accent); border-color: var(--pg-accent); color: #fff; box-shadow: var(--pg-shadow-btn-accent); }
.pg-certs .pg-cert b { direction: ltr; unicode-bidi: plaintext; }

@media (max-width: 1023.98px) { .pg-certs__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 560px) {
        .pg-certs__grid { grid-template-columns: repeat(2, 1fr); }
        .pg-partners__track { animation-duration: 24s; }
        .pg-partner { padding: 11px 18px; }
        .pg-partner b { font-size: .875rem; }
}
@media (prefers-reduced-motion: reduce) {
        .pg-partners__track, .pg-cert__ring { animation: none; }
}

/* MP04 §20 — weighted finder results enrichment */
.pg-finder__score { display: inline-block; margin-inline-end: 6px; }
.pg-finder__price { font-size: 12px; color: var(--pg-accent, #0e7490); font-weight: 600; margin-inline-end: 8px; }
.pg-finder__spec { display: inline-block; font-size: 11px; color: var(--pg-muted, #64748b); margin-inline-end: 8px; }
.pg-finder__docs { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: var(--pg-muted, #64748b); margin-top: 2px; }
