/* Black Friday 2025 — Prostobox. 1:1 по Figma + тексты из Tilda. */

html, body { background: #f6f6f6 !important; }
main, .main, .layout, .layout-content, .content, .page, .page-content { background: #f6f6f6 !important; }
body > footer, footer.footer, footer[class*="footer"] { background: #f6f6f6 !important; }

div.p-black-friday-2025-pb {
    --bf-black: #0f0f0f;
    --bf-yellow: #ffc200;
    --bf-purple: #6c52ff;
    --bf-purple-border: #9a88ff;
    --bf-white: #ffffff;
    --bf-bg: #f6f6f6;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
    color: var(--bf-black);
    line-height: 1.3;
    background: var(--bf-bg);
    overflow-x: hidden;
}
.p-black-friday-2025-pb *,
.p-black-friday-2025-pb *::before,
.p-black-friday-2025-pb *::after { box-sizing: border-box; }
.p-black-friday-2025-pb a { -webkit-tap-highlight-color: transparent; }
.p-black-friday-2025-pb a:focus,
.p-black-friday-2025-pb a:focus-visible,
.p-black-friday-2025-pb button:focus,
.p-black-friday-2025-pb button:focus-visible { outline: none; }
.p-black-friday-2025-pb img { display: block; max-width: 100%; }
.p-black-friday-2025-pb a { color: inherit; text-decoration: none; }

/* ============ Block 1 — Hero (Figma 2:543) ============ */
.p-black-friday-2025-pb__hero {
    position: relative;
    width: 100%;
    max-width: 1400px;
    height: 600px;
    margin: 25px auto 0;
    border-radius: 30px;
    background: #000000;
    overflow: hidden;
    isolation: isolate;
}
.p-black-friday-2025-pb__hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    border-radius: 30px;
    overflow: hidden;
}
.p-black-friday-2025-pb__hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    mix-blend-mode: lighten;
    opacity: 0.1;
}
.p-black-friday-2025-pb__hero-glow {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    border-radius: 30px;
    background: radial-gradient(
        ellipse 60% 45% at 78% 32%,
        rgba(163, 147, 255, 0.7) 0%,
        rgba(108, 82, 255, 0.7) 7%,
        rgba(80, 50, 255, 0.7) 10%,
        rgba(53, 17, 255, 0.7) 13%,
        rgba(49, 12, 255, 0.3) 46%,
        rgba(29, 6, 160, 0.25) 69%,
        rgba(10, 0, 65, 0.2) 91%,
        rgba(10, 0, 65, 0.2) 100%
    );
    mix-blend-mode: plus-lighter;
}
.p-black-friday-2025-pb__hero-content {
    position: absolute;
    top: 111px;
    left: 100px;
    width: 628px;
    z-index: 3;
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: var(--bf-white);
}
.p-black-friday-2025-pb__hero-pill {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    padding: 7px;
    background: var(--bf-white);
    border: 0.75px solid var(--bf-yellow);
    border-radius: 7px;
    color: var(--bf-black);
    font-size: 18.36px;
    font-weight: 700;
    line-height: 0.8;
    text-transform: uppercase;
    white-space: nowrap;
}
.p-black-friday-2025-pb__hero-title {
    margin: 0;
    font-size: 60px;
    font-weight: 700;
    line-height: 0.8;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: var(--bf-white);
}
.p-black-friday-2025-pb__hero-subtitle {
    margin: 0;
    width: 369px;
    max-width: 100%;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: var(--bf-white);
}
.p-black-friday-2025-pb__hero-lead {
    margin: 10px 0 0;
    max-width: 595px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: var(--bf-white);
}
.p-black-friday-2025-pb__hero-cta {
    margin-top: 10px;
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    white-space: nowrap;
    transition: background .2s;
}
.p-black-friday-2025-pb__hero-cta:link,
.p-black-friday-2025-pb__hero-cta:visited,
.p-black-friday-2025-pb__hero-cta:hover,
.p-black-friday-2025-pb__hero-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-black-friday-2025-pb__hero-cta:hover { background: #e6ae00; }

.p-black-friday-2025-pb__hero-visual {
    position: absolute;
    top: 0;
    right: 60px;
    width: 662px;
    height: 625px;
    z-index: 2;
    pointer-events: none;
}
.p-black-friday-2025-pb__hero-boxes {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: right top;
}

/* Hero — адаптив */
@media (max-width: 1400px) {
    .p-black-friday-2025-pb__hero {
        width: auto;
        max-width: none;
        margin: 20px 20px 0;
    }
    .p-black-friday-2025-pb__hero-content { left: 40px; width: auto; right: 540px; }
    .p-black-friday-2025-pb__hero-visual { width: 540px; height: 510px; right: 20px; }
}
@media (max-width: 1000px) {
    .p-black-friday-2025-pb__hero { height: auto; min-height: 560px; }
    .p-black-friday-2025-pb__hero-content { right: 340px; }
    .p-black-friday-2025-pb__hero-title { font-size: 44px; }
    .p-black-friday-2025-pb__hero-subtitle { font-size: 20px; }
    .p-black-friday-2025-pb__hero-lead { font-size: 15px; }
    .p-black-friday-2025-pb__hero-visual { width: 340px; height: 320px; }
}
@media (max-width: 700px) {
    .p-black-friday-2025-pb__hero {
        height: auto;
        min-height: auto;
        border-radius: 24px;
        padding: 0;
        display: flex;
        flex-direction: column;
    }
    .p-black-friday-2025-pb__hero-content {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        padding: 40px 24px 32px;
        width: auto;
        gap: 16px;
        z-index: 3;
    }
    .p-black-friday-2025-pb__hero-visual {
        position: relative;
        top: auto;
        right: auto;
        left: auto;
        width: 100%;
        height: auto;
        aspect-ratio: 662 / 625;
        z-index: 2;
    }
    .p-black-friday-2025-pb__hero-boxes {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center bottom;
    }
    .p-black-friday-2025-pb__hero-title { font-size: 48px; }
    .p-black-friday-2025-pb__hero-subtitle { font-size: 18px; }
    .p-black-friday-2025-pb__hero-lead { font-size: 14px; }
    .p-black-friday-2025-pb__hero-cta { padding: 18px 40px; font-size: 18px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-black-friday-2025-pb__hero { margin: 20px 16px 0; border-radius: 20px; }
    .p-black-friday-2025-pb__hero-content { padding: 32px 20px 24px; }
    .p-black-friday-2025-pb__hero-title { font-size: 40px; }
    .p-black-friday-2025-pb__hero-subtitle { font-size: 16px; }
    .p-black-friday-2025-pb__hero-lead { font-size: 13px; }
    .p-black-friday-2025-pb__hero-pill { font-size: 14px; padding: 6px 10px; }
}

/* ============ Block 1.5 — Regions (Беларусь / Казахстан) ============ */
.p-bf-pb__regions {
    max-width: 1400px;
    margin: 20px auto 0;
    padding: 0 20px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__regions-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px 40px;
    border: 2px solid var(--bf-yellow);
    border-radius: 20px;
    background: transparent;
    color: #000 !important;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    transition: background .2s, color .2s;
}
.p-bf-pb__regions-btn:link,
.p-bf-pb__regions-btn:visited,
.p-bf-pb__regions-btn:hover,
.p-bf-pb__regions-btn:active { color: #000 !important; text-decoration: none; }
.p-bf-pb__regions-btn:hover { background: var(--bf-yellow); }

@media (max-width: 720px) {
    .p-bf-pb__regions { padding: 0 16px; gap: 12px; }
    .p-bf-pb__regions-btn { padding: 18px 20px; font-size: 16px; }
}
@media (max-width: 480px) {
    .p-bf-pb__regions { grid-template-columns: 1fr; gap: 10px; }
}

/* ============ Block 2 — Countdown timer (Figma 3:1057) ============ */
.p-bf-pb__timer {
    max-width: 1200px;
    margin: 100px auto 0;
    padding: 0 20px;
    text-align: center;
    font-family: 'Futura PT', 'Futura', 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__timer-heading {
    margin: 0 0 30px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 0.8;
    text-transform: uppercase;
    color: #000;
}
.p-bf-pb__timer-grid {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
}
.p-bf-pb__timer-group {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 162px;
}
.p-bf-pb__timer-tiles {
    display: flex;
    align-items: center;
    gap: 2px;
    width: 100%;
    justify-content: center;
}
.p-bf-pb__timer-tile {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 145px;
    padding: 20px 15px;
    border-radius: 10px;
    background: linear-gradient(180deg, #2c25e9 0%, #000 44.7%, #000 54.3%, #2a23dc 98.6%);
    color: #fff;
    font-family: inherit;
    font-size: 105px;
    font-weight: 500;
    line-height: 0.8;
    text-transform: uppercase;
    text-align: center;
    font-variant-numeric: tabular-nums;
}
.p-bf-pb__timer-label {
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.1;
    color: #000;
    text-align: center;
}

@media (max-width: 720px) {
    .p-bf-pb__timer { margin: 60px auto 0; }
    .p-bf-pb__timer-heading { font-size: 22px; margin-bottom: 20px; }
    .p-bf-pb__timer-grid { gap: 10px; }
    .p-bf-pb__timer-group { width: auto; gap: 6px; }
    .p-bf-pb__timer-tiles { gap: 2px; }
    .p-bf-pb__timer-tile {
        width: 42px;
        height: 76px;
        padding: 10px 6px;
        font-size: 54px;
        border-radius: 7px;
    }
    .p-bf-pb__timer-label { font-size: 14px; }
}
@media (max-width: 380px) {
    .p-bf-pb__timer-heading { font-size: 18px; }
    .p-bf-pb__timer-tile { width: 34px; height: 62px; font-size: 42px; }
    .p-bf-pb__timer-label { font-size: 12px; }
}

/* ============ Block 3 — Start banner (Figma 3:1089) ============ */
.p-bf-pb__start { margin-top: 100px; padding: 0 20px; }
.p-bf-pb__start-card {
    position: relative;
    max-width: 1400px;
    height: 382px;
    margin: 0 auto;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__start-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    border-radius: 30px;
    overflow: hidden;
    background: #000;
}
.p-bf-pb__start-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    mix-blend-mode: hard-light;
    display: block;
}
.p-bf-pb__start-bg::after {
    /* центральный чёрный «прожектор» — затемняет центр, оставляя края с бэком */
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(0,0,0,0) 0%, #000 50%, rgba(0,0,0,0) 100%);
}
.p-bf-pb__start-paw {
    position: absolute;
    z-index: 2;
    width: 443px;
    height: auto;
    pointer-events: none;
    user-select: none;
}
.p-bf-pb__start-paw--l { left: -40px; top: -40px; }
.p-bf-pb__start-paw--r { right: -40px; top: -10px; }
.p-bf-pb__start-content {
    position: absolute;
    z-index: 3;
    top: 38px;
    left: 50%;
    transform: translateX(-50%);
    width: 515px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    color: #fff;
    text-align: center;
}
.p-bf-pb__start-title {
    margin: 0;
    width: 369px;
    max-width: 100%;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: #fff;
}
.p-bf-pb__start-title-b { font-weight: 700; }
.p-bf-pb__start-text {
    width: 503px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #fff;
    text-align: left;
}
.p-bf-pb__start-text p { margin: 0; }
.p-bf-pb__start-cta {
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__start-cta:link,
.p-bf-pb__start-cta:visited,
.p-bf-pb__start-cta:hover,
.p-bf-pb__start-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__start-cta:hover { background: #e6ae00; }

@media (max-width: 1200px) {
    .p-bf-pb__start-paw { width: 360px; }
    .p-bf-pb__start-paw--l { left: -30px; top: -30px; }
    .p-bf-pb__start-paw--r { right: -30px; top: -10px; }
}
@media (max-width: 900px) {
    .p-bf-pb__start-paw { width: 280px; }
    .p-bf-pb__start-content { width: 60%; }
    .p-bf-pb__start-title { font-size: 22px; width: 100%; }
    .p-bf-pb__start-text { font-size: 16px; width: 100%; }
    .p-bf-pb__start-cta { padding: 20px 40px; font-size: 18px; }
}
@media (max-width: 720px) {
    .p-bf-pb__start { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__start-card { height: auto; padding: 220px 20px 32px; border-radius: 24px; }
    .p-bf-pb__start-paw { width: 190px; }
    .p-bf-pb__start-paw--l { top: 10px; left: -30px; }
    .p-bf-pb__start-paw--r { top: 10px; right: -30px; }
    .p-bf-pb__start-content {
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        width: 100%;
        gap: 16px;
    }
    .p-bf-pb__start-title { font-size: 20px; width: 100%; }
    .p-bf-pb__start-text { font-size: 15px; text-align: center; }
    .p-bf-pb__start-cta { padding: 16px 24px; font-size: 18px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-bf-pb__start-card { padding: 190px 16px 28px; border-radius: 20px; }
    .p-bf-pb__start-paw { width: 160px; }
    .p-bf-pb__start-paw--l { top: 20px; left: -20px; }
    .p-bf-pb__start-paw--r { top: 20px; right: -20px; }
    .p-bf-pb__start-title { font-size: 18px; }
    .p-bf-pb__start-text { font-size: 14px; }
}

/* ============ Block 4 — Cyber Monday (Figma 3:1137) ============ */
.p-bf-pb__cyber {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__cyber-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 60px;
}
.p-bf-pb__cyber-media {
    flex: 0 0 auto;
    width: 617px;
    height: auto;
    display: block;
    max-width: 100%;
}
.p-bf-pb__cyber-content {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    color: #000;
}
.p-bf-pb__cyber-pill {
    display: inline-flex;
    align-items: center;
    padding: 7.34px 10px;
    background-image: linear-gradient(33.07deg, #000 74.7%, #6e55ff 98.5%);
    border-radius: 7.34px;
    color: #fff;
    font-size: 28.36px;
    font-weight: 700;
    line-height: 0.8;
    text-transform: uppercase;
    white-space: nowrap;
}
.p-bf-pb__cyber-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: #000;
}
.p-bf-pb__cyber-text {
    margin: 0;
    max-width: 503px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
}

@media (max-width: 1100px) {
    .p-bf-pb__cyber-inner { gap: 40px; }
    .p-bf-pb__cyber-media { width: 500px; }
    .p-bf-pb__cyber-title { font-size: 26px; }
    .p-bf-pb__cyber-pill { font-size: 22px; }
}
@media (max-width: 900px) {
    .p-bf-pb__cyber-inner { gap: 30px; }
    .p-bf-pb__cyber-media { width: 42%; }
    .p-bf-pb__cyber-title { font-size: 22px; }
    .p-bf-pb__cyber-pill { font-size: 20px; }
    .p-bf-pb__cyber-text { font-size: 16px; }
}
@media (max-width: 720px) {
    .p-bf-pb__cyber { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__cyber-inner {
        flex-direction: column;
        align-items: center;
        gap: 24px;
    }
    .p-bf-pb__cyber-media { width: 100%; max-width: 460px; }
    .p-bf-pb__cyber-content { align-items: center; text-align: center; }
    .p-bf-pb__cyber-title { font-size: 22px; text-align: center; }
    .p-bf-pb__cyber-text { font-size: 15px; text-align: center; }
    .p-bf-pb__cyber-pill { font-size: 20px; padding: 7px 10px; }
}
@media (max-width: 480px) {
    .p-bf-pb__cyber-title { font-size: 18px; }
    .p-bf-pb__cyber-text { font-size: 14px; }
    .p-bf-pb__cyber-pill { font-size: 18px; }
}

/* ============ Block 5–6 — Deals (Figma 3:1164) ============ */
.p-bf-pb__deals {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__deals-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}
.p-bf-pb__deals-header {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    color: #000;
}
.p-bf-pb__deals-title {
    margin: 0;
    flex: 1 1 auto;
    max-width: 671px;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    color: #000;
}
.p-bf-pb__deals-title-hl { color: #310cff; }
.p-bf-pb__deals-lead {
    margin: 0;
    flex: 0 0 auto;
    width: 520px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
}
.p-bf-pb__deals-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    width: 100%;
}
.p-bf-pb__deals-card {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.p-bf-pb__deals-img {
    aspect-ratio: 270 / 321;
    border-radius: 20px;
    background: #e1e1e1;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.p-bf-pb__deals-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__deals-name {
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    color: #000;
}
.p-bf-pb__deals-price {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4;
    color: #310cff;
}
.p-bf-pb__deals-buy {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 20px;
    border: 2px solid #000;
    border-radius: 20px;
    background: transparent;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    color: #000 !important;
    text-decoration: none;
    text-align: center;
    transition: background .2s, color .2s;
    white-space: nowrap;
}
.p-bf-pb__deals-buy:link,
.p-bf-pb__deals-buy:visited,
.p-bf-pb__deals-buy:hover,
.p-bf-pb__deals-buy:active { color: #000 !important; text-decoration: none; }
.p-bf-pb__deals-buy:hover { background: #000; color: #fff !important; }
.p-bf-pb__deals-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__deals-cta:link,
.p-bf-pb__deals-cta:visited,
.p-bf-pb__deals-cta:hover,
.p-bf-pb__deals-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__deals-cta:hover { background: #e6ae00; }

@media (max-width: 1100px) {
    .p-bf-pb__deals-grid { gap: 24px; }
    .p-bf-pb__deals-title { font-size: 32px; }
    .p-bf-pb__deals-lead { width: 40%; font-size: 16px; }
    .p-bf-pb__deals-price { font-size: 26px; }
}
@media (max-width: 900px) {
    .p-bf-pb__deals-header { flex-direction: column; gap: 16px; }
    .p-bf-pb__deals-lead { width: 100%; }
    .p-bf-pb__deals-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .p-bf-pb__deals-name { font-size: 18px; }
    .p-bf-pb__deals-buy { font-size: 18px; padding: 14px 16px; }
}
@media (max-width: 720px) {
    .p-bf-pb__deals { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__deals-title { font-size: 24px; }
    .p-bf-pb__deals-lead { font-size: 15px; }
    .p-bf-pb__deals-cta { padding: 18px 30px; font-size: 18px; align-self: stretch; }
    .p-bf-pb__deals-card { gap: 14px; }
    .p-bf-pb__deals-price { font-size: 22px; }
    .p-bf-pb__deals-buy { font-size: 16px; padding: 12px 14px; }
}
@media (max-width: 480px) {
    .p-bf-pb__deals-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .p-bf-pb__deals-title { font-size: 22px; }
    .p-bf-pb__deals-name { font-size: 15px; }
    .p-bf-pb__deals-price { font-size: 18px; }
    .p-bf-pb__deals-buy { font-size: 14px; padding: 10px 8px; }
}

/* ============ Block 7 — Bot helper (Figma 3:1213) ============ */
.p-bf-pb__bot { margin-top: 100px; padding: 0 20px; }
.p-bf-pb__bot-card {
    position: relative;
    max-width: 1400px;
    height: 382px;
    margin: 0 auto;
    border-radius: 30px;
    overflow: hidden;
    isolation: isolate;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__bot-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: 30px;
    overflow: hidden;
    pointer-events: none;
}
.p-bf-pb__bot-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__bot-figure {
    position: absolute;
    z-index: 1;
    top: -40px;
    left: 40px;
    width: 620px;
    height: 460px;
    object-fit: contain;
    object-position: left center;
    pointer-events: none;
    user-select: none;
}
.p-bf-pb__bot-content {
    position: absolute;
    z-index: 2;
    top: 85px;
    left: calc(50% + 82px);
    width: 518px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    color: #000;
}
.p-bf-pb__bot-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: #000;
}
.p-bf-pb__bot-text {
    margin: 0;
    max-width: 503px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
}
.p-bf-pb__bot-cta {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__bot-cta:link,
.p-bf-pb__bot-cta:visited,
.p-bf-pb__bot-cta:hover,
.p-bf-pb__bot-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__bot-cta:hover { background: #e6ae00; }

@media (max-width: 1200px) {
    .p-bf-pb__bot-figure { width: 500px; height: 380px; top: -20px; left: 20px; }
    .p-bf-pb__bot-content { left: 540px; width: auto; right: 40px; }
}
@media (max-width: 900px) {
    .p-bf-pb__bot-figure { width: 360px; height: 300px; top: 20px; }
    .p-bf-pb__bot-content { left: 390px; right: 24px; top: 60px; }
    .p-bf-pb__bot-title { font-size: 22px; }
    .p-bf-pb__bot-text { font-size: 15px; }
    .p-bf-pb__bot-cta { padding: 18px 40px; font-size: 18px; }
}
@media (max-width: 720px) {
    .p-bf-pb__bot { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__bot-card {
        height: auto;
        border-radius: 24px;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        padding: 0;
    }
    .p-bf-pb__bot-figure {
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        width: 100%;
        height: 380px;
        margin-top: 0;
        object-fit: cover;
        object-position: center top;
        order: 2;
    }
    .p-bf-pb__bot-content {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        width: 100%;
        align-items: flex-start;
        text-align: left;
        gap: 12px;
        padding: 40px 24px 20px;
        order: 1;
    }
    .p-bf-pb__bot-title { font-size: 22px; text-align: left; }
    .p-bf-pb__bot-text { font-size: 15px; text-align: left; }
    .p-bf-pb__bot-cta { align-self: stretch; padding: 16px 24px; font-size: 18px; }
}
@media (max-width: 480px) {
    .p-bf-pb__bot-card { border-radius: 20px; }
    .p-bf-pb__bot-figure { height: 280px; }
    .p-bf-pb__bot-title { font-size: 18px; }
}

/* ============ Block 8 — Promo RP-BF2025 (Figma 3:1264) ============ */
.p-bf-pb__promo { margin-top: 100px; padding: 0 20px; }
.p-bf-pb__promo-card {
    position: relative;
    max-width: 1400px;
    height: 382px;
    margin: 0 auto;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__promo-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: 30px;
    overflow: hidden;
    pointer-events: none;
}
.p-bf-pb__promo-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__promo-content {
    position: absolute;
    z-index: 2;
    top: 122px;
    left: 112px;
    width: 518px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: #fff;
}
.p-bf-pb__promo-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: #fff;
}
.p-bf-pb__promo-text {
    margin: 0;
    max-width: 503px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #fff;
}
.p-bf-pb__promo-note {
    margin: 6px 0 0;
    max-width: 503px;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.55);
}
.p-bf-pb__promo-ticket {
    position: absolute;
    z-index: 3;
    top: 101px;
    right: 40px;
    width: 518px;
    height: 179px;
}
.p-bf-pb__promo-ticket svg {
    width: 100%;
    height: 100%;
    display: block;
    filter: drop-shadow(0 10px 30px rgba(0,0,0,.35));
}
.p-bf-pb__promo-code-label {
    position: absolute;
    top: 34px;
    left: 46px;
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3;
    color: #000;
    white-space: nowrap;
}
.p-bf-pb__promo-code {
    position: absolute;
    top: 64px;
    left: 46px;
    margin: 0;
    font-size: 70px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #000;
    white-space: nowrap;
}
.p-bf-pb__promo-paw {
    position: absolute;
    z-index: 2; /* ЗА билетом (билет z-index:3) — когти видны только там, где не перекрыты билетом */
    top: 20px;
    left: 46%;
    width: 250px;
    height: auto;
    pointer-events: none;
    user-select: none;
    transform: rotate(-15deg);
    transform-origin: center top;
}
.p-bf-pb__promo-badge {
    position: absolute;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.1);
    border: 3px solid #9a88ff;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 0.8;
    text-transform: uppercase;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    background-image: radial-gradient(circle at 30% 30%,
        rgba(154,136,255,0.35) 0%,
        rgba(80,50,255,0.15) 60%,
        rgba(20,0,100,0.1) 100%);
}
.p-bf-pb__promo-badge--tr {
    top: 42px;
    right: 40px;
    width: 160px;
    height: 96px;
    border-radius: 24px;
    font-size: 49px;
    transform: rotate(14.4deg);
}
.p-bf-pb__promo-badge--bl {
    top: 226px;
    left: 690px;
    width: 227px;
    height: 137px;
    border-radius: 35px;
    font-size: 70px;
    transform: rotate(-9.6deg);
}

@media (max-width: 1200px) {
    .p-bf-pb__promo-content { left: 40px; width: auto; right: 55%; }
    .p-bf-pb__promo-ticket { width: 44%; right: 40px; }
    .p-bf-pb__promo-code { font-size: 56px; top: 56px; left: 36px; }
    .p-bf-pb__promo-code-label { top: 26px; left: 36px; font-size: 16px; }
    .p-bf-pb__promo-paw { left: 50%; width: 240px; }
    .p-bf-pb__promo-badge--tr { width: 130px; height: 78px; font-size: 40px; }
    .p-bf-pb__promo-badge--bl { top: 220px; left: 50%; width: 180px; height: 108px; font-size: 54px; }
}
@media (max-width: 900px) {
    .p-bf-pb__promo-card {
        height: auto;
        padding: 40px 0 40px;
        display: flex;
        flex-direction: column;
        gap: 40px;
    }
    .p-bf-pb__promo-content {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        width: auto;
        padding: 0 24px;
        max-width: 100%;
    }
    .p-bf-pb__promo-title { font-size: 22px; }
    .p-bf-pb__promo-text { font-size: 15px; }
    .p-bf-pb__promo-note { font-size: 12px; }
    .p-bf-pb__promo-ticket {
        position: relative;
        top: auto;
        right: auto;
        margin: 0 auto;
        width: calc(100% - 48px);
        max-width: 480px;
        height: 150px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 30px;
    }
    .p-bf-pb__promo-ticket svg {
        position: absolute;
        inset: 0;
        z-index: 0;
    }
    .p-bf-pb__promo-code-wrap {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 2px;
    }
    .p-bf-pb__promo-code-label {
        position: relative;
        top: auto;
        left: auto;
        width: auto;
        margin: 0;
        font-size: 14px;
    }
    .p-bf-pb__promo-code {
        position: relative;
        top: auto;
        left: auto;
        margin: 0;
        font-size: 44px;
    }
    .p-bf-pb__promo-paw {
        position: absolute;
        left: 10px;
        top: auto;
        bottom: 130px;
        width: 170px;
        transform: rotate(20deg);
    }
    .p-bf-pb__promo-badge--tr {
        position: absolute;
        top: auto;
        bottom: 130px;
        right: 30px;
        width: 110px;
        height: 66px;
        border-radius: 18px;
        font-size: 34px;
    }
    .p-bf-pb__promo-badge--bl {
        position: absolute;
        top: auto;
        bottom: 20px;
        left: 20px;
        width: 110px;
        height: 66px;
        border-radius: 18px;
        font-size: 34px;
    }
}
@media (max-width: 720px) {
    .p-bf-pb__promo { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__promo-card { border-radius: 24px; }
    .p-bf-pb__promo-title { font-size: 20px; }
    .p-bf-pb__promo-text { font-size: 14px; }
    .p-bf-pb__promo-ticket { height: 130px; padding: 0 24px; }
    .p-bf-pb__promo-code { font-size: 36px; }
    .p-bf-pb__promo-code-label { font-size: 12px; }
    .p-bf-pb__promo-paw { width: 140px; bottom: 115px; }
    .p-bf-pb__promo-badge--tr { width: 90px; height: 54px; font-size: 28px; bottom: 110px; }
    .p-bf-pb__promo-badge--bl { width: 90px; height: 54px; font-size: 28px; }
}
@media (max-width: 480px) {
    .p-bf-pb__promo-card { border-radius: 20px; }
    .p-bf-pb__promo-content { padding: 0 20px; }
    .p-bf-pb__promo-title { font-size: 18px; }
    .p-bf-pb__promo-ticket { height: 110px; padding: 0 20px; }
    .p-bf-pb__promo-code { font-size: 30px; }
    .p-bf-pb__promo-code-label { font-size: 11px; }
    .p-bf-pb__promo-paw { width: 120px; bottom: 95px; }
}

/* ============ Block 9 — How to order (Figma 10:1328) ============ */
.p-bf-pb__howto {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__howto-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}
.p-bf-pb__howto-title {
    margin: 0;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    text-align: center;
    color: #000;
}
.p-bf-pb__howto-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    width: 100%;
}
.p-bf-pb__howto-step {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}
.p-bf-pb__howto-num {
    width: 100px;
    height: 100px;
    border-radius: 25px;
    border: 2.5px solid #9a88ff;
    background:
        radial-gradient(circle at 30% 25%, rgba(154,136,255,0.35) 0%, rgba(80,50,255,0.15) 55%, rgba(38,22,127,0.08) 100%),
        rgba(255, 255, 255, 0.1);
    color: #26167f;
    font-size: 50px;
    font-weight: 700;
    line-height: 0.8;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset -4px -6px 24px rgba(38, 22, 127, 0.3);
    text-transform: uppercase;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.p-bf-pb__howto-text {
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
}
.p-bf-pb__howto-text b { font-weight: 600; }

@media (max-width: 1100px) {
    .p-bf-pb__howto-grid { gap: 24px; }
    .p-bf-pb__howto-title { font-size: 32px; }
}
@media (max-width: 900px) {
    .p-bf-pb__howto-grid { grid-template-columns: repeat(2, 1fr); gap: 28px 24px; }
    .p-bf-pb__howto-title { font-size: 28px; }
}
@media (max-width: 720px) {
    .p-bf-pb__howto { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__howto-title { font-size: 22px; }
    .p-bf-pb__howto-num { width: 84px; height: 84px; font-size: 42px; border-radius: 21px; }
    .p-bf-pb__howto-text { font-size: 15px; }
}
@media (max-width: 480px) {
    .p-bf-pb__howto-grid { grid-template-columns: 1fr; gap: 20px; }
    .p-bf-pb__howto-title { font-size: 20px; }
    .p-bf-pb__howto-step { flex-direction: row; align-items: flex-start; gap: 16px; }
    .p-bf-pb__howto-num { flex: 0 0 auto; width: 72px; height: 72px; font-size: 36px; border-radius: 18px; }
}

/* ============ Block 10 — Cards foreign/RU bank (Figma 10:1379) ============ */
.p-bf-pb__cards {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__cards-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}
.p-bf-pb__cards-card {
    position: relative;
    aspect-ratio: 580 / 556;
    border-radius: 30px;
    overflow: hidden;
    isolation: isolate;
}
.p-bf-pb__cards-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}
.p-bf-pb__cards-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__cards-content {
    position: absolute;
    z-index: 2;
    top: 50px;
    left: 50px;
    right: 50px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: #000;
}
.p-bf-pb__cards-content--white { color: #fff; }
.p-bf-pb__cards-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: inherit;
}
.p-bf-pb__cards-text {
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: inherit;
}
.p-bf-pb__cards-hare {
    position: absolute;
    z-index: 1;
    left: 50%;
    bottom: -8%;
    width: 70%;
    height: auto;
    object-fit: contain;
    transform: translateX(-50%);
    pointer-events: none;
    user-select: none;
}

@media (max-width: 900px) {
    .p-bf-pb__cards-inner { gap: 24px; }
    .p-bf-pb__cards-content { top: 32px; left: 28px; right: 28px; }
    .p-bf-pb__cards-title { font-size: 22px; }
    .p-bf-pb__cards-text { font-size: 16px; }
}
@media (max-width: 720px) {
    .p-bf-pb__cards { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__cards-inner { grid-template-columns: 1fr; gap: 20px; }
    .p-bf-pb__cards-card { aspect-ratio: 1 / 1; }
    .p-bf-pb__cards-content { top: 32px; left: 28px; right: 28px; }
    .p-bf-pb__cards-title { font-size: 22px; }
    .p-bf-pb__cards-text { font-size: 15px; }
    .p-bf-pb__cards-hare { width: 62%; bottom: -6%; }
}
@media (max-width: 480px) {
    .p-bf-pb__cards-card { border-radius: 24px; }
    .p-bf-pb__cards-title { font-size: 18px; }
    .p-bf-pb__cards-text { font-size: 14px; }
}

/* ============ Block 10.5 — Promo BF2025 (Figma 23:1557) ============ */
.p-bf-pb__promo2 {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__promo2-card {
    position: relative;
    max-width: 1400px;
    height: 466px;
    margin: 0 auto;
}
.p-bf-pb__promo2-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: 30px;
    overflow: hidden;
    background: #000;
}
.p-bf-pb__promo2-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__promo2-pct {
    position: absolute;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 190px;
    height: 180px;
    padding: 18px;
    border-radius: 42px;
    border: 1.5px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 140px;
    line-height: 0.8;
    color: rgba(255, 255, 255, 0.11);
    text-transform: uppercase;
    pointer-events: none;
    user-select: none;
    box-shadow: inset 0 0 0 0.5px rgba(255, 255, 255, 0.15);
}
.p-bf-pb__promo2-pct--tr { top: 70px; right: 70px; transform: rotate(14.55deg); }
.p-bf-pb__promo2-pct--bl { top: 240px; left: 640px; transform: rotate(-15.87deg); }
.p-bf-pb__promo2-content {
    position: absolute;
    z-index: 3;
    top: 82px;
    left: 100px;
    max-width: 560px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: #fff;
}
.p-bf-pb__promo2-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: #fff;
}
.p-bf-pb__promo2-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #fff;
}
.p-bf-pb__promo2-list li {
    position: relative;
    padding-left: 22px;
}
.p-bf-pb__promo2-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 1px;
    color: var(--bf-yellow);
    font-weight: 700;
    font-size: 16px;
}
.p-bf-pb__promo2-cta {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__promo2-cta:link,
.p-bf-pb__promo2-cta:visited,
.p-bf-pb__promo2-cta:hover,
.p-bf-pb__promo2-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__promo2-cta:hover { background: #e6ae00; }
.p-bf-pb__promo2-ticket {
    position: absolute;
    z-index: 4;
    top: 82px; /* по верху заголовка */
    right: 120px;
    width: 518px;
    height: 179px;
}
.p-bf-pb__promo2-hare {
    position: absolute;
    z-index: 5; /* ПОВЕРХ билета */
    bottom: -10px;
    right: 0;
    width: 440px;
    height: auto;
    pointer-events: none;
    user-select: none;
}
.p-bf-pb__promo2-ticket svg {
    width: 100%;
    height: 100%;
    display: block;
    filter: drop-shadow(0 10px 30px rgba(0,0,0,.35));
}
.p-bf-pb__promo2-code-label {
    position: absolute;
    top: 44px;
    left: 46px;
    margin: 0;
    width: 135px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3;
    color: #000;
}
.p-bf-pb__promo2-code {
    position: absolute;
    top: 60px;
    left: 200px;
    margin: 0;
    font-size: 70px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #000;
    white-space: nowrap;
}

@media (max-width: 1200px) {
    .p-bf-pb__promo2-content { left: 40px; max-width: 45%; }
    .p-bf-pb__promo2-ticket { width: 46%; right: 30px; }
    .p-bf-pb__promo2-code { font-size: 56px; top: 60px; left: 40%; }
    .p-bf-pb__promo2-code-label { left: 30px; font-size: 16px; top: 40px; }
    .p-bf-pb__promo2-hare { width: 240px; right: 20px; }
    .p-bf-pb__promo2-pct { font-size: 130px; }
    .p-bf-pb__promo2-pct--tr { right: 20px; top: 30px; }
    .p-bf-pb__promo2-pct--bl { left: 50%; top: 200px; }
}
@media (max-width: 900px) {
    .p-bf-pb__promo2-card {
        height: auto;
        padding: 0 0 20px;
        display: flex;
        flex-direction: column;
    }
    .p-bf-pb__promo2-content {
        position: relative;
        top: auto;
        left: auto;
        padding: 40px 24px 24px;
        max-width: 100%;
        z-index: 3;
    }
    .p-bf-pb__promo2-title { font-size: 24px; }
    .p-bf-pb__promo2-list { font-size: 15px; }
    .p-bf-pb__promo2-cta { padding: 18px 40px; font-size: 18px; align-self: stretch; margin: 0 24px; }
    .p-bf-pb__promo2-ticket {
        position: relative;
        top: auto;
        right: auto;
        margin: 0 24px 40px;
        width: auto;
        max-width: none;
        height: 150px;
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        padding: 0 24px;
    }
    .p-bf-pb__promo2-ticket svg {
        position: absolute;
        inset: 0;
        z-index: 0;
    }
    .p-bf-pb__promo2-code-label {
        position: relative;
        top: auto;
        left: auto;
        z-index: 1;
        width: 130px;
        font-size: 14px;
        line-height: 1.2;
    }
    .p-bf-pb__promo2-code {
        position: relative;
        top: auto;
        left: auto;
        z-index: 1;
        margin-left: 16px;
        font-size: 44px;
    }
    .p-bf-pb__promo2-hare {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 260px;
        z-index: 4;
    }
    .p-bf-pb__promo2-pct--tr {
        top: auto;
        bottom: -18px;
        right: 40%;
        transform: rotate(14.55deg);
        font-size: 120px;
        width: 150px;
        height: 140px;
        padding: 16px;
        border-radius: 34px;
    }
    .p-bf-pb__promo2-pct--bl { display: none; }
}
@media (max-width: 720px) {
    .p-bf-pb__promo2 { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__promo2-card { border-radius: 24px; }
    .p-bf-pb__promo2-title { font-size: 22px; }
    .p-bf-pb__promo2-list { font-size: 14px; }
    .p-bf-pb__promo2-ticket { height: 130px; padding: 0 20px; }
    .p-bf-pb__promo2-code { font-size: 38px; }
    .p-bf-pb__promo2-hare { width: 180px; }
    .p-bf-pb__promo2-pct--tr { width: 120px; height: 110px; font-size: 100px; border-radius: 28px; }
}
@media (max-width: 480px) {
    .p-bf-pb__promo2-title { font-size: 20px; }
    .p-bf-pb__promo2-code { font-size: 32px; }
    .p-bf-pb__promo2-code-label { font-size: 12px; width: 110px; }
    .p-bf-pb__promo2-hare { width: 150px; }
    .p-bf-pb__promo2-pct--tr { width: 100px; height: 92px; font-size: 82px; }
}

/* ============ Block 11 — Where to buy tabs (Figma 16:1449) ============ */
.p-bf-pb__shops {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__shops-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}
.p-bf-pb__shops-title {
    margin: 0;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    text-align: center;
    color: #000;
}
.p-bf-pb__shops-tabs {
    display: flex;
    width: 100%;
    height: 60px;
    border-radius: 10px;
    overflow: hidden;
}
.p-bf-pb__shops-tab {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    border: 2px solid #000;
    border-left-width: 0;
    background: #f6f6f6;
    color: #000;
    font-family: inherit;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s, color .15s;
}
.p-bf-pb__shops-tab:first-child { border-left-width: 2px; border-top-left-radius: 10px; border-bottom-left-radius: 10px; }
.p-bf-pb__shops-tab:last-child { border-top-right-radius: 10px; border-bottom-right-radius: 10px; }
.p-bf-pb__shops-tab--active {
    background: #000;
    color: #fff;
    font-weight: 700;
    border-color: #000;
}
.p-bf-pb__shops-tab:hover:not(.p-bf-pb__shops-tab--active) {
    background: #000;
    color: #fff;
}
.p-bf-pb__shops-panes { width: 100%; }
.p-bf-pb__shops-pane {
    display: none;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}
.p-bf-pb__shops-pane--active { display: grid; }
.p-bf-pb__shops-card {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 130px;
    border-radius: 30px;
    background: #000 url("/p/black-friday-2025-pb/asset/assets/img/shops-card-bg.webp") center/cover no-repeat;
    color: #fff !important;
    text-decoration: none;
    overflow: hidden;
    isolation: isolate;
    transition: transform .2s;
}
.p-bf-pb__shops-card:link,
.p-bf-pb__shops-card:visited,
.p-bf-pb__shops-card:hover,
.p-bf-pb__shops-card:active { color: #fff !important; text-decoration: none; }
.p-bf-pb__shops-card:hover { transform: translateY(-2px); }
.p-bf-pb__shops-name {
    font-family: 'Futura PT', 'Futura', 'Montserrat', sans-serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 0.8;
    color: #fff;
    text-align: center;
    z-index: 2;
    padding: 0 12px;
}
.p-bf-pb__shops-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
    margin-top: 10px;
}
.p-bf-pb__shops-cta:link,
.p-bf-pb__shops-cta:visited,
.p-bf-pb__shops-cta:hover,
.p-bf-pb__shops-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__shops-cta:hover { background: #e6ae00; }

@media (max-width: 1100px) {
    .p-bf-pb__shops-tab { font-size: 15px; }
    .p-bf-pb__shops-pane { gap: 20px; }
    .p-bf-pb__shops-name { font-size: 26px; }
}
@media (max-width: 900px) {
    .p-bf-pb__shops-title { font-size: 28px; }
    .p-bf-pb__shops-tabs {
        flex-wrap: wrap;
        height: auto;
        border-radius: 0;
    }
    .p-bf-pb__shops-tab {
        flex: 1 1 50%;
        border-radius: 0 !important;
        border-left-width: 2px;
    }
    .p-bf-pb__shops-tab:nth-child(2n) { border-left-width: 0; }
    .p-bf-pb__shops-tab:not(:first-child):not(:nth-child(2)) { border-top-width: 0; }
    .p-bf-pb__shops-pane { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
    .p-bf-pb__shops { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__shops-title { font-size: 22px; }
    .p-bf-pb__shops-tab { font-size: 14px; padding: 12px 8px; }
    .p-bf-pb__shops-name { font-size: 22px; }
    .p-bf-pb__shops-card { height: 100px; border-radius: 20px; }
    .p-bf-pb__shops-cta { padding: 18px 30px; font-size: 18px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-bf-pb__shops-pane { grid-template-columns: 1fr; gap: 14px; }
    .p-bf-pb__shops-tab { flex: 1 1 100%; }
    .p-bf-pb__shops-tab:not(:first-child) { border-top-width: 0; border-left-width: 2px; }
}

/* ============ Block 13 — Size helper (Figma 23:1663) ============ */
.p-bf-pb__size {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__size-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 40px;
}
.p-bf-pb__size-paws {
    flex: 0 0 auto;
    width: 570px;
    height: auto;
    display: block;
    max-width: 100%;
    pointer-events: none;
    user-select: none;
}
.p-bf-pb__size-content {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    color: #000;
}
.p-bf-pb__size-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: #000;
}
.p-bf-pb__size-text {
    margin: 0;
    max-width: 503px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
}
.p-bf-pb__size-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__size-cta:link,
.p-bf-pb__size-cta:visited,
.p-bf-pb__size-cta:hover,
.p-bf-pb__size-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__size-cta:hover { background: #e6ae00; }

@media (max-width: 1100px) {
    .p-bf-pb__size-inner { gap: 30px; }
    .p-bf-pb__size-paws { width: 460px; }
    .p-bf-pb__size-title { font-size: 26px; }
}
@media (max-width: 900px) {
    .p-bf-pb__size-paws { width: 46%; }
    .p-bf-pb__size-title { font-size: 22px; }
    .p-bf-pb__size-text { font-size: 16px; }
    .p-bf-pb__size-cta { padding: 20px 40px; font-size: 18px; }
}
@media (max-width: 720px) {
    .p-bf-pb__size { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__size-inner {
        flex-direction: column;
        align-items: center;
        gap: 24px;
    }
    .p-bf-pb__size-paws { width: 100%; max-width: 420px; }
    .p-bf-pb__size-content { align-items: center; text-align: center; }
    .p-bf-pb__size-title { font-size: 22px; text-align: center; }
    .p-bf-pb__size-text { font-size: 15px; text-align: center; }
    .p-bf-pb__size-cta { padding: 16px 24px; font-size: 18px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-bf-pb__size-title { font-size: 20px; }
    .p-bf-pb__size-text { font-size: 14px; }
}

/* ============ Block 14 — Final CTA «Хватайте скидки заранее» (Figma 24:1702) ============ */
.p-bf-pb__catch {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__catch-inner {
    max-width: 720px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    text-align: center;
}
.p-bf-pb__catch-title {
    margin: 0;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    color: #000;
}
.p-bf-pb__catch-text {
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
}
.p-bf-pb__catch-text b { font-weight: 700; }
.p-bf-pb__catch-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__catch-cta:link,
.p-bf-pb__catch-cta:visited,
.p-bf-pb__catch-cta:hover,
.p-bf-pb__catch-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__catch-cta:hover { background: #e6ae00; }

@media (max-width: 900px) {
    .p-bf-pb__catch-title { font-size: 28px; }
}
@media (max-width: 720px) {
    .p-bf-pb__catch { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__catch-title { font-size: 22px; }
    .p-bf-pb__catch-text { font-size: 15px; }
    .p-bf-pb__catch-cta { padding: 16px 24px; font-size: 18px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-bf-pb__catch-title { font-size: 20px; }
    .p-bf-pb__catch-text { font-size: 14px; }
}

/* ============ Block 16 — Signup «Не пропустите главные скидки» (Figma 32:1846) ============ */
.p-bf-pb__signup {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__signup-card {
    position: relative;
    max-width: 1400px;
    height: 466px;
    margin: 0 auto;
}
.p-bf-pb__signup-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: 30px;
    overflow: hidden;
    background: #000;
}
.p-bf-pb__signup-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__signup-content {
    position: absolute;
    z-index: 3;
    top: 82px;
    left: 100px;
    max-width: 520px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: #fff;
}
.p-bf-pb__signup-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: #fff;
}
.p-bf-pb__signup-subtitle {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    color: #fff;
}
.p-bf-pb__signup-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #fff;
}
.p-bf-pb__signup-list li {
    position: relative;
    padding-left: 22px;
}
.p-bf-pb__signup-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 1px;
    color: var(--bf-yellow);
    font-weight: 700;
    font-size: 16px;
}
.p-bf-pb__signup-cta {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__signup-cta:link,
.p-bf-pb__signup-cta:visited,
.p-bf-pb__signup-cta:hover,
.p-bf-pb__signup-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__signup-cta:hover { background: #e6ae00; }
.p-bf-pb__signup-balloons {
    position: absolute;
    z-index: 4;
    bottom: 0;
    right: 20px;
    width: 900px;
    height: auto;
    pointer-events: none;
    user-select: none;
}

@media (max-width: 1200px) {
    .p-bf-pb__signup-content { left: 40px; max-width: 45%; }
    .p-bf-pb__signup-balloons { width: 65%; right: 10px; }
}
@media (max-width: 900px) {
    .p-bf-pb__signup-card { height: auto; padding-bottom: 0; }
    .p-bf-pb__signup-content { position: relative; top: auto; left: auto; padding: 40px 24px 20px; max-width: 100%; }
    .p-bf-pb__signup-title { font-size: 22px; }
    .p-bf-pb__signup-subtitle { font-size: 16px; }
    .p-bf-pb__signup-list { font-size: 15px; }
    .p-bf-pb__signup-cta { padding: 18px 40px; font-size: 18px; }
    .p-bf-pb__signup-balloons { position: relative; top: auto; right: auto; margin: 30px auto 0; display: block; width: 100%; max-width: none; }
}
@media (max-width: 720px) {
    .p-bf-pb__signup { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__signup-card { border-radius: 24px; }
    .p-bf-pb__signup-title { font-size: 20px; }
    .p-bf-pb__signup-cta { align-self: stretch; padding: 16px 24px; }
}
@media (max-width: 480px) {
    .p-bf-pb__signup-title { font-size: 18px; }
}

/* ============ Block 21 — Stats «Мы в цифрах» (Figma 37:2038) — full-bleed dark ============ */
.p-bf-pb__stats {
    margin-top: 100px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 100px 20px;
    background: #000;
    color: #fff;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
    overflow: hidden;
    border-top-left-radius: 60px;
    border-top-right-radius: 60px;
}
.p-bf-pb__stats-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}
.p-bf-pb__stats-title {
    margin: 0;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
}
.p-bf-pb__stats-grid {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    gap: 24px;
    flex-wrap: wrap;
}
.p-bf-pb__stats-cell {
    flex: 1 1 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    text-align: center;
}
.p-bf-pb__stats-num {
    margin: 0;
    font-size: 90px;
    font-weight: 500;
    line-height: 0.8;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: var(--bf-yellow);
    white-space: nowrap;
}
.p-bf-pb__stats-text {
    margin: 0;
    max-width: 340px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    color: #fff;
}
.p-bf-pb__stats-note {
    margin: 0;
    max-width: 861px;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.3;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
}
.p-bf-pb__stats-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 40px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__stats-cta:link,
.p-bf-pb__stats-cta:visited,
.p-bf-pb__stats-cta:hover,
.p-bf-pb__stats-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__stats-cta:hover { background: #e6ae00; }

@media (max-width: 900px) {
    .p-bf-pb__stats { padding: 60px 20px; }
    .p-bf-pb__stats-title { font-size: 28px; }
    .p-bf-pb__stats-num { font-size: 64px; }
    .p-bf-pb__stats-text { font-size: 16px; }
    .p-bf-pb__stats-note { font-size: 20px; }
}
@media (max-width: 720px) {
    .p-bf-pb__stats { margin-top: 60px; padding: 50px 16px; }
    .p-bf-pb__stats-title { font-size: 22px; }
    .p-bf-pb__stats-grid { flex-direction: column; align-items: center; gap: 32px; }
    .p-bf-pb__stats-cell { flex: 0 0 auto; }
    .p-bf-pb__stats-num { font-size: 54px; }
    .p-bf-pb__stats-note { font-size: 17px; }
    .p-bf-pb__stats-cta { padding: 18px 24px; font-size: 16px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-bf-pb__stats-num { font-size: 46px; }
    .p-bf-pb__stats-text { font-size: 15px; }
    .p-bf-pb__stats-note { font-size: 15px; }
    .p-bf-pb__stats-cta { padding: 16px 20px; font-size: 15px; }
}

/* ============ Block 22 — Social «Подписывайтесь» (Figma 37:2079) — тёмная секция ============ */
.p-bf-pb__social {
    margin-top: 0;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 0 20px 70px;
    background: #000;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__social-card {
    position: relative;
    max-width: 1400px;
    height: 333px;
    margin: 0 auto;
    isolation: isolate;
}
.p-bf-pb__social-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: #04001b;
    border-radius: 30px;
    overflow: hidden;
    pointer-events: none;
}
.p-bf-pb__social-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__social-pct {
    position: absolute;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    border: 1.5px solid rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 0.8;
    color: rgba(255, 255, 255, 0.14);
    text-transform: uppercase;
    pointer-events: none;
    user-select: none;
    box-shadow: inset 0 0 0 0.5px rgba(255, 255, 255, 0.15);
}
.p-bf-pb__social-pct--big {
    top: 130px;
    left: 62%;
    width: 165px;
    height: 155px;
    border-radius: 43px;
    font-size: 143px;
    padding: 18px;
    transform: rotate(-15.73deg);
}
.p-bf-pb__social-pct--mid {
    top: 60px;
    left: 55%;
    width: 105px;
    height: 100px;
    border-radius: 30px;
    font-size: 100px;
    padding: 12px;
    transform: rotate(9.57deg);
}
.p-bf-pb__social-pct--small {
    top: 40px;
    right: 40px;
    width: 105px;
    height: 100px;
    border-radius: 30px;
    font-size: 100px;
    padding: 12px;
    transform: rotate(9.57deg);
}
.p-bf-pb__social-content {
    position: absolute;
    z-index: 3;
    top: 60px;
    left: 100px;
    max-width: 520px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: #fff;
}
.p-bf-pb__social-title {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    color: #fff;
}
.p-bf-pb__social-text {
    margin: 0;
    max-width: 503px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    color: #fff;
}
.p-bf-pb__social-links {
    display: flex;
    gap: 10px;
    align-items: center;
}
.p-bf-pb__social-link {
    display: inline-flex;
    width: 68px;
    height: 68px;
    border-radius: 14px;
    overflow: hidden;
    transition: transform .15s;
}
.p-bf-pb__social-link:hover { transform: translateY(-2px); }
.p-bf-pb__social-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__social-hare {
    position: absolute;
    z-index: 4;
    bottom: 0;
    right: 0;
    width: 820px;
    height: auto;
    pointer-events: none;
    user-select: none;
}
.p-bf-pb__social-pct-img {
    position: absolute;
    z-index: 5;
    height: auto;
    pointer-events: none;
    user-select: none;
}
.p-bf-pb__social-pct-img--tl {
    top: 40px;
    left: 42%;
    width: 170px;
    transform: rotate(-4deg);
}
.p-bf-pb__social-pct-img--bl {
    bottom: -20px;
    left: 40%;
    width: 200px;
    transform: rotate(-8deg);
}
.p-bf-pb__social-pct-img--tr {
    top: 70px;
    right: -70px;
    width: 190px;
    transform: rotate(6deg);
}
@media (max-width: 1100px) {
    .p-bf-pb__social-pct-img--tl { width: 130px; top: 30px; left: 38%; }
    .p-bf-pb__social-pct-img--bl { width: 150px; bottom: -12px; left: 36%; }
    .p-bf-pb__social-pct-img--tr { width: 140px; top: 50px; right: -40px; }
}
@media (max-width: 900px) {
    .p-bf-pb__social-pct-img { display: none; }
}

@media (max-width: 1100px) {
    .p-bf-pb__social-content { left: 40px; max-width: 46%; }
    .p-bf-pb__social-hare { width: 300px; right: 20px; }
    .p-bf-pb__social-pct--big { width: 130px; height: 122px; font-size: 110px; }
}
@media (max-width: 900px) {
    .p-bf-pb__social-card { height: auto; padding-bottom: 0; }
    .p-bf-pb__social-content { position: relative; top: auto; left: auto; padding: 40px 24px 0; max-width: 100%; }
    .p-bf-pb__social-title { font-size: 22px; }
    .p-bf-pb__social-text { font-size: 15px; }
    .p-bf-pb__social-hare {
        position: relative;
        top: auto;
        right: auto;
        margin: 20px 0 0;
        display: block;
        width: 100%;
        max-width: none;
    }
    .p-bf-pb__social-pct--big { top: auto; bottom: 40px; left: 20px; }
    .p-bf-pb__social-pct--mid { display: none; }
    .p-bf-pb__social-pct--small { display: none; }
    .p-bf-pb__social-pct-img--bl { width: 90px; bottom: 24px; left: 24px; }
}
@media (max-width: 720px) {
    .p-bf-pb__social { padding: 0 16px 40px; }
    .p-bf-pb__social-card { border-radius: 24px; }
    .p-bf-pb__social-title { font-size: 20px; }
    .p-bf-pb__social-pct--big { width: 100px; height: 94px; font-size: 88px; padding: 12px; border-radius: 28px; }
    .p-bf-pb__social-pct-img--bl { width: 70px; }
}
@media (max-width: 480px) {
    .p-bf-pb__social-title { font-size: 18px; }
    .p-bf-pb__social-link { width: 56px; height: 56px; border-radius: 12px; }
    .p-bf-pb__social-pct-img--bl { width: 60px; }
}

/* ============ Block FAQ (Figma 37:2112) — тёмная секция ============ */
.p-bf-pb__faq {
    margin-top: 0;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 60px 20px 100px;
    background: #000;
    color: #fff;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__faq-inner {
    max-width: 982px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 30px;
}
.p-bf-pb__faq-title {
    margin: 0;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
}
.p-bf-pb__faq-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.p-bf-pb__faq-item {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
}
.p-bf-pb__faq-q {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 30px;
    cursor: pointer;
    color: #000;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    -webkit-user-select: none;
    user-select: none;
}
.p-bf-pb__faq-q::-webkit-details-marker { display: none; }
.p-bf-pb__faq-q::marker { content: ""; }
.p-bf-pb__faq-q-text { flex: 1 1 auto; }
.p-bf-pb__faq-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    position: relative;
    transition: transform .25s;
}
.p-bf-pb__faq-icon::before,
.p-bf-pb__faq-icon::after {
    content: "";
    position: absolute;
    background: #310cff;
    border-radius: 2px;
}
.p-bf-pb__faq-icon::before {
    left: 4px;
    right: 4px;
    top: 50%;
    height: 2.5px;
    margin-top: -1.25px;
}
.p-bf-pb__faq-icon::after {
    top: 4px;
    bottom: 4px;
    left: 50%;
    width: 2.5px;
    margin-left: -1.25px;
    transition: transform .25s;
}
.p-bf-pb__faq-item[open] .p-bf-pb__faq-icon::after { transform: scaleY(0); }
.p-bf-pb__faq-a {
    margin: 0;
    padding: 0 30px 24px;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
}

@media (max-width: 900px) {
    .p-bf-pb__faq { padding: 40px 20px 80px; }
    .p-bf-pb__faq-title { font-size: 28px; }
    .p-bf-pb__faq-q { font-size: 17px; padding: 18px 24px; gap: 14px; }
    .p-bf-pb__faq-icon { width: 32px; height: 32px; }
    .p-bf-pb__faq-a { padding: 0 24px 20px; font-size: 15px; }
}
@media (max-width: 720px) {
    .p-bf-pb__faq { padding: 32px 16px 60px; }
    .p-bf-pb__faq-title { font-size: 22px; }
    .p-bf-pb__faq-q { font-size: 15px; padding: 16px 20px; gap: 12px; }
    .p-bf-pb__faq-icon { width: 28px; height: 28px; }
    .p-bf-pb__faq-a { padding: 0 20px 18px; font-size: 14px; }
}
@media (max-width: 480px) {
    .p-bf-pb__faq-title { font-size: 20px; }
    .p-bf-pb__faq-q { font-size: 14px; padding: 14px 16px; }
}

/* ============ Slider «Хотите выгоднее?» ============ */
.p-bf-pb__slider {
    max-width: 1200px;
    margin: 100px auto 0;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__slider-title {
    margin: 0 0 30px;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    text-align: center;
    color: #000;
}
.p-bf-pb__slider-track {
    position: relative;
    width: 100%;
    aspect-ratio: 1740 / 900;
}
.p-bf-pb__slider-slide,
.p-bf-pb__slider-slide:link,
.p-bf-pb__slider-slide:visited,
.p-bf-pb__slider-slide:hover,
.p-bf-pb__slider-slide:active {
    position: absolute;
    inset: 0;
    display: none;
    border-radius: 30px;
    overflow: hidden;
    text-decoration: none;
}
.p-bf-pb__slider-slide--active,
.p-bf-pb__slider-slide--active:link,
.p-bf-pb__slider-slide--active:visited,
.p-bf-pb__slider-slide--active:hover,
.p-bf-pb__slider-slide--active:active { display: block; }
.p-bf-pb__slider-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.p-bf-pb__slider-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 20px;
}
.p-bf-pb__slider-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: none;
    background: rgba(0, 0, 0, 0.2);
    cursor: pointer;
    padding: 0;
    transition: background .2s;
}
.p-bf-pb__slider-dot--active { background: #000; }

@media (max-width: 720px) {
    .p-bf-pb__slider { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__slider-title { font-size: 24px; margin-bottom: 20px; }
    .p-bf-pb__slider-slide { border-radius: 24px; }
}
@media (max-width: 480px) {
    .p-bf-pb__slider-title { font-size: 20px; }
    .p-bf-pb__slider-slide { border-radius: 20px; }
}

/* ============ Block 18–20 — Why Prostobox + CTA (Figma 35:1987) ============ */
.p-bf-pb__why {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__why-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}
.p-bf-pb__why-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    text-align: center;
}
.p-bf-pb__why-title {
    margin: 0;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    color: #000;
}
.p-bf-pb__why-lead {
    margin: 0;
    max-width: 946px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
    text-align: center;
}
.p-bf-pb__why-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    width: 100%;
}
.p-bf-pb__why-card {
    display: flex;
    align-items: center;
    gap: 20px;
    min-height: 228px;
    padding: 22px 40px 22px 22px;
    border-radius: 40px;
    border: 1px solid #000;
    background: transparent;
    color: #263238;
}
.p-bf-pb__why-card--accent {
    background: var(--bf-yellow);
    border-color: var(--bf-yellow);
    color: #000;
}
.p-bf-pb__why-icon {
    flex: 0 0 auto;
    width: 220px;
    height: 220px;
    object-fit: contain;
}
.p-bf-pb__why-text {
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    color: inherit;
}
.p-bf-pb__why-link {
    display: inline;
    color: inherit !important;
    font-weight: 700;
    text-decoration: none;
}
.p-bf-pb__why-link:link,
.p-bf-pb__why-link:visited,
.p-bf-pb__why-link:hover,
.p-bf-pb__why-link:active { color: inherit !important; text-decoration: none; }
.p-bf-pb__why-link:hover { text-decoration: underline; }
.p-bf-pb__why-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__why-cta:link,
.p-bf-pb__why-cta:visited,
.p-bf-pb__why-cta:hover,
.p-bf-pb__why-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__why-cta:hover { background: #e6ae00; }

@media (max-width: 1100px) {
    .p-bf-pb__why-grid { gap: 24px; }
    .p-bf-pb__why-icon { width: 180px; height: 180px; }
    .p-bf-pb__why-card { padding: 20px 30px 20px 20px; min-height: 200px; }
    .p-bf-pb__why-text { font-size: 18px; }
}
@media (max-width: 900px) {
    .p-bf-pb__why-title { font-size: 30px; }
    .p-bf-pb__why-icon { width: 140px; height: 140px; }
    .p-bf-pb__why-card { min-height: 180px; padding: 16px 20px 16px 16px; gap: 14px; border-radius: 32px; }
    .p-bf-pb__why-text { font-size: 16px; }
}
@media (max-width: 720px) {
    .p-bf-pb__why { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__why-inner { gap: 24px; }
    .p-bf-pb__why-header { gap: 16px; }
    .p-bf-pb__why-title { font-size: 24px; }
    .p-bf-pb__why-lead { font-size: 15px; }
    .p-bf-pb__why-grid { grid-template-columns: 1fr; gap: 12px; }
    .p-bf-pb__why-card {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding: 24px 24px 24px 24px;
        min-height: auto;
        border-radius: 28px;
    }
    .p-bf-pb__why-icon { width: 130px; height: 130px; margin-left: -8px; }
    .p-bf-pb__why-text { font-size: 17px; margin-top: 4px; }
    .p-bf-pb__why-link { display: inline-block; margin-top: 8px; }
    .p-bf-pb__why-cta { padding: 18px 30px; font-size: 18px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-bf-pb__why-icon { width: 110px; height: 110px; }
    .p-bf-pb__why-text { font-size: 16px; }
    .p-bf-pb__why-title { font-size: 22px; }
}

/* ============ Block 15 — Deals catalog (Figma 24:1711) ============ */
.p-bf-pb__deals-grid-wrap {
    margin-top: 100px;
    padding: 0 20px;
    font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.p-bf-pb__dg-inner {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}
.p-bf-pb__dg-paw {
    position: absolute;
    z-index: 1; /* ПОД карточками — карточки перекрывают нижнюю часть лапы */
    height: auto;
    pointer-events: none;
    user-select: none;
}
.p-bf-pb__dg-paw--l {
    top: -110px;
    left: -80px;
    width: 250px;
}
.p-bf-pb__dg-paw--r {
    top: -110px;
    right: -80px;
    width: 250px;
    /* файл правая 2.png уже с когтями внутрь — без flip */
}
.p-bf-pb__dg-grid { position: relative; z-index: 2; }
.p-bf-pb__dg-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
    width: 100%;
    position: relative;
    z-index: 2;
}
.p-bf-pb__dg-card {
    position: relative;
    aspect-ratio: 233 / 170;
    border-radius: 26px;
    background: #310cff url("/p/black-friday-2025-pb/asset/assets/img/deals-card-bg.webp") center/cover no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 22px 12px 20px;
    overflow: hidden;
    isolation: isolate;
    color: #fff;
}
.p-bf-pb__dg-name {
    font-family: 'Futura PT', 'Futura', 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.1;
    color: #fff;
    text-align: center;
    max-width: 90%;
}
.p-bf-pb__dg-off {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    padding: 14px 20px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 10px;
    font-family: 'Futura PT', 'Futura', 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 0.8;
    color: #fff;
    white-space: nowrap;
    font-size: 30px;
}
.p-bf-pb__dg-off-num { font-size: 38px; }
.p-bf-pb__dg-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 24px 70px;
    background: var(--bf-yellow);
    color: var(--bf-black) !important;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 0.8;
    text-decoration: none;
    text-align: center;
    transition: background .2s;
}
.p-bf-pb__dg-cta:link,
.p-bf-pb__dg-cta:visited,
.p-bf-pb__dg-cta:hover,
.p-bf-pb__dg-cta:active { color: var(--bf-black) !important; text-decoration: none; }
.p-bf-pb__dg-cta:hover { background: #e6ae00; }

@media (max-width: 1100px) {
    .p-bf-pb__dg-grid { gap: 16px; }
    .p-bf-pb__dg-paw { width: 180px; }
    .p-bf-pb__dg-name { font-size: 18px; }
    .p-bf-pb__dg-off { padding: 12px 16px; }
    .p-bf-pb__dg-off-num { font-size: 32px; }
}
@media (max-width: 900px) {
    .p-bf-pb__dg-grid { grid-template-columns: repeat(3, 1fr); gap: 14px; }
    .p-bf-pb__dg-paw--l { width: 170px; top: -80px; left: -40px; }
    .p-bf-pb__dg-paw--r { width: 170px; top: -80px; right: -40px; }
}
@media (max-width: 720px) {
    .p-bf-pb__deals-grid-wrap { margin-top: 60px; padding: 0 16px; }
    .p-bf-pb__dg-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .p-bf-pb__dg-paw--l { width: 130px; top: -60px; left: -20px; }
    .p-bf-pb__dg-paw--r { width: 130px; top: -60px; right: -20px; }
    .p-bf-pb__dg-name { font-size: 16px; }
    .p-bf-pb__dg-off { padding: 10px 12px; font-size: 24px; }
    .p-bf-pb__dg-off-num { font-size: 28px; }
    .p-bf-pb__dg-cta { padding: 16px 24px; font-size: 18px; align-self: stretch; }
}
@media (max-width: 480px) {
    .p-bf-pb__dg-paw--l { width: 100px; top: -40px; left: 0; }
    .p-bf-pb__dg-paw--r { width: 100px; top: -40px; right: 0; }
    .p-bf-pb__dg-name { font-size: 14px; }
    .p-bf-pb__dg-off { padding: 8px 10px; font-size: 20px; }
    .p-bf-pb__dg-off-num { font-size: 24px; }
    .p-bf-pb__dg-card { padding: 16px 8px; border-radius: 20px; }
}