/* ==========================================================
   RADIO PARTY MIX
   REKLAMA — NIGHT PULSE
   ----------------------------------------------------------
   VISUAL LAYER ONLY.
   Original text, FAQ, images, social blocks and iframes
   remain untouched.
   ========================================================== */


/* ---------- ROOT ---------- */

.np-reklama-shell {
    --np-pink: #ff248a;
    --np-pink-2: #ff63ad;
    --np-pink-soft: rgba(255, 36, 138, .11);

    --np-bg: #08070a;
    --np-panel: #100c12;
    --np-panel-2: #151017;

    --np-border: rgba(255, 255, 255, .075);
    --np-border-pink: rgba(255, 36, 138, .28);

    --np-white: #ffffff;
    --np-text: #d8d1da;
    --np-muted: #99909d;

    width: min(1180px, calc(100% - 32px)) !important;
    max-width: 1180px !important;

    margin: 72px auto 36px !important;
    padding: 0 !important;

    overflow: visible !important;

    background: transparent !important;
    color: var(--np-text) !important;

    font-family: "Montserrat", Arial, sans-serif !important;
}

.np-reklama-shell,
.np-reklama-shell *,
.np-reklama-shell *::before,
.np-reklama-shell *::after {
    box-sizing: border-box;
}


/* ---------- TWO COLUMN PAGE ---------- */

.np-reklama-shell > .lasted-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 300px !important;
    align-items: start !important;

    gap: 18px !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.np-reklama-shell .lasted-item {
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    color: var(--np-text) !important;
}


/* ==========================================================
   MAIN LARGE ADVERTISING TEXT
   ========================================================== */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child {

    position: relative !important;
    isolation: isolate;

    display: block !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 0 18px !important;
    padding: 38px 40px 36px !important;

    overflow: hidden !important;

    border: 1px solid var(--np-border-pink) !important;
    border-radius: 22px !important;

    background:
        radial-gradient(
            circle at 4% 0%,
            rgba(255, 36, 138, .17),
            transparent 30%
        ),
        radial-gradient(
            circle at 96% 100%,
            rgba(114, 0, 68, .15),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(22, 15, 23, .99),
            rgba(7, 6, 9, .99)
        ) !important;

    color: var(--np-text) !important;

    box-shadow:
        0 26px 65px rgba(0, 0, 0, .28),
        inset 0 1px 0 rgba(255,255,255,.025) !important;
}


/* decorative radio rings */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child::after {

    content: "";

    position: absolute;
    z-index: -1;

    top: -145px;
    right: -95px;

    width: 355px;
    height: 355px;

    border: 1px solid rgba(255,36,138,.13);
    border-radius: 50%;

    box-shadow:
        0 0 0 38px rgba(255,36,138,.024),
        0 0 0 76px rgba(255,36,138,.015);
}


/* visual kicker; adds no page-content deletion */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child::before {

    content: "РЕКЛАМА  •  RADIO PARTY MIX";

    display: block;

    margin-bottom: 13px;

    color: var(--np-pink-2);

    font-size: 10px;
    font-weight: 850;
    line-height: 1.3;

    letter-spacing: .17em;
    text-transform: uppercase;
}


/* Original main heading */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> center:first-of-type {

    position: relative;
    z-index: 1;

    margin: 0 0 27px !important;

    text-align: left !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> center:first-of-type h2 {

    margin: 0 !important;

    color: #fff !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: clamp(31px, 4vw, 48px) !important;
    font-weight: 820 !important;

    line-height: 1.06 !important;
    letter-spacing: -.035em !important;

    text-align: left !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> center:first-of-type h2 i {

    color: inherit !important;
    font-style: normal !important;
}


/* ALL original large text blocks */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> span {

    color: var(--np-text) !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: 13px !important;
    font-weight: 450 !important;

    line-height: 1.82 !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> span:not(b span) {

    position: relative;
}


/* Direct original paragraphs get modern separated layout */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> span {

    text-shadow: none !important;
}


/* old BRs remain untouched but are visually compact */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child br {

    line-height: .82 !important;
}


/* final existing slogan */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> center:not(:first-of-type) {

    margin: 25px 0 15px !important;

    text-align: left !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> center:not(:first-of-type) h2 {

    margin: 0 !important;

    color: var(--np-pink-2) !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: clamp(21px, 2.8vw, 30px) !important;
    font-weight: 820 !important;

    line-height: 1.18 !important;
    letter-spacing: -.02em !important;

    text-align: left !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> center:not(:first-of-type) h2 i {

    color: inherit !important;
    font-style: normal !important;
}


/* existing final call-to-action text */

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> b {

    display: block !important;

    margin-top: 15px !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> b > i {

    display: block !important;

    font-style: normal !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:first-child
> .content:first-child
> b > i > span {

    display: block !important;

    padding: 18px 20px !important;

    border: 1px solid rgba(255,36,138,.35) !important;
    border-radius: 14px !important;

    background:
        linear-gradient(
            135deg,
            rgba(255,36,138,.11),
            rgba(255,36,138,.035)
        ) !important;

    color: #fff !important;

    font-weight: 720 !important;
    line-height: 1.65 !important;
}


/* ==========================================================
   FAQ — ORIGINAL ITEMS / ORIGINAL SCRIPT
   ========================================================== */

.np-reklama-shell .accordion {

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 27px !important;

    overflow: hidden !important;

    border: 1px solid var(--np-border-pink) !important;
    border-radius: 20px !important;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(255,36,138,.07),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            rgba(18,13,19,.99),
            rgba(8,7,10,.99)
        ) !important;

    box-shadow:
        0 20px 50px rgba(0,0,0,.19),
        inset 0 1px 0 rgba(255,255,255,.022) !important;

    cursor: default !important;
}

.np-reklama-shell .accordion > h3.title {

    display: block !important;

    margin: 0 0 19px !important;
    padding: 0 !important;

    color: #fff !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: clamp(22px, 2.7vw, 30px) !important;
    font-weight: 820 !important;

    line-height: 1.15 !important;

    text-align: left !important;
}

.np-reklama-shell .accordion > h3.title::before {
    content: "FAQ";

    display: block !important;

    width: auto !important;
    height: auto !important;

    margin: 0 0 6px !important;

    background: none !important;
    box-shadow: none !important;

    color: var(--np-pink-2);

    font-size: 9px;
    font-weight: 850;

    line-height: 1.2;

    letter-spacing: .18em;
}

.np-reklama-shell .accordion > h3.title::after {
    display: none !important;
}

.np-reklama-shell .accordion-item {

    margin: 0 0 8px !important;

    overflow: hidden !important;

    border: 1px solid rgba(255,255,255,.07) !important;
    border-radius: 13px !important;

    background: rgba(255,255,255,.018) !important;

    transition:
        border-color .17s ease,
        background .17s ease !important;
}

.np-reklama-shell .accordion-item:last-child {
    margin-bottom: 0 !important;
}

.np-reklama-shell .accordion-item:hover {
    border-color: rgba(255,36,138,.24) !important;
}

.np-reklama-shell .accordion-header {

    display: flex !important;
    align-items: center !important;

    width: 100% !important;
    min-height: 58px !important;

    margin: 0 !important;
    padding: 13px 15px !important;

    border: 0 !important;

    background: transparent !important;
    color: #f0e9f1 !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: 12px !important;
    font-weight: 720 !important;

    line-height: 1.45 !important;
    text-align: left !important;

    cursor: pointer !important;
}

.np-reklama-shell .accordion-header:hover {
    background: rgba(255,36,138,.055) !important;
    color: #fff !important;
}

.np-reklama-shell .accordion-header i {

    flex: 0 0 auto !important;

    display: inline-grid !important;
    place-items: center !important;

    width: 30px !important;
    height: 30px !important;

    margin: 0 11px 0 0 !important;

    border: 1px solid rgba(255,36,138,.27) !important;
    border-radius: 8px !important;

    background: rgba(255,36,138,.07) !important;
    color: var(--np-pink-2) !important;

    font-size: 10px !important;
}

.np-reklama-shell .accordion-content {

    display: none;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-top: 1px solid rgba(255,255,255,.055) !important;

    background: rgba(0,0,0,.16) !important;

    color: var(--np-text) !important;
}

.np-reklama-shell .accordion-content p {

    margin: 0 !important;
    padding: 16px 18px !important;

    color: var(--np-text) !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: 11px !important;
    font-weight: 450 !important;

    line-height: 1.75 !important;
}


/* ==========================================================
   RIGHT SIDEBAR
   ========================================================== */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2) {

    display: flex !important;
    flex-direction: column !important;

    gap: 13px !important;
}


/* original advertising image */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> center:first-child {

    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;

    border: 1px solid var(--np-border-pink) !important;
    border-radius: 19px !important;

    background: #0b090c !important;

    box-shadow:
        0 18px 42px rgba(0,0,0,.21),
        inset 0 1px 0 rgba(255,255,255,.02) !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> center:first-child img {

    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    object-fit: cover !important;
}


/* ---------- "Последвай ни" ---------- */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> h1.title {

    display: block !important;

    margin: 0 !important;
    padding: 19px 19px 5px !important;

    border: 1px solid var(--np-border-pink) !important;
    border-bottom: 0 !important;

    border-radius: 18px 18px 0 0 !important;

    background:
        linear-gradient(
            145deg,
            rgba(18,13,19,.99),
            rgba(8,7,10,.99)
        ) !important;

    color: #fff !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: 18px !important;
    font-weight: 820 !important;

    line-height: 1.2 !important;

    text-align: left !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> h1.title::before {

    content: "SOCIAL";

    display: block !important;

    width: auto !important;
    height: auto !important;

    margin: 0 0 5px !important;

    background: none !important;
    box-shadow: none !important;

    color: var(--np-pink-2);

    font-size: 8px;
    font-weight: 850;

    letter-spacing: .17em;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> h1.title::after {

    display: none !important;
}


/* social original content block */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> h1.title + .content {

    margin: -13px 0 0 !important;
    padding: 43px 16px 16px !important;

    overflow: hidden !important;

    border: 1px solid var(--np-border-pink) !important;
    border-top: 0 !important;

    border-radius: 0 0 18px 18px !important;

    background:
        linear-gradient(
            145deg,
            rgba(18,13,19,.99),
            rgba(8,7,10,.99)
        ) !important;

    color: #fff !important;

    box-shadow:
        0 17px 40px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.02) !important;
}

.np-reklama-shell .fb-page {

    width: 100% !important;
    max-width: 100% !important;

    overflow: hidden !important;

    border-radius: 10px !important;
}

.np-reklama-shell a[href*="tiktok.com"] {

    display: block !important;

    margin-top: 12px !important;

    overflow: hidden !important;

    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 11px !important;

    background: #09080b !important;

    transition:
        transform .17s ease,
        border-color .17s ease !important;
}

.np-reklama-shell a[href*="tiktok.com"]:hover {

    transform: translateY(-2px);

    border-color: rgba(255,36,138,.32) !important;
}

.np-reklama-shell a[href*="tiktok.com"] img {

    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 !important;
}


/* ==========================================================
   LUCKY — EXISTING IFRAME, NEW WRAPPER DESIGN
   ========================================================== */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> .content[style*="linear-gradient"] {

    position: relative;

    margin: 0 !important;
    padding: 18px 14px 14px !important;

    overflow: hidden !important;

    border: 1px solid var(--np-border-pink) !important;
    border-radius: 18px !important;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(255,36,138,.10),
            transparent 36%
        ),
        linear-gradient(
            145deg,
            rgba(18,13,19,.99),
            rgba(8,7,10,.99)
        ) !important;

    box-shadow:
        0 17px 40px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.02) !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> .content[style*="linear-gradient"]::before {

    content: "КЪСМЕТ";

    display: block;

    margin: 0 0 10px 4px;

    color: var(--np-pink-2);

    font-size: 9px;
    font-weight: 850;

    letter-spacing: .16em;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> .content[style*="linear-gradient"]
iframe {

    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    border: 0 !important;
    border-radius: 11px !important;

    background: #09080b !important;
}


/* remove ONLY old visual separators; content is untouched */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> hr {

    display: none !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> br {

    display: none !important;
}


/* ==========================================================
   "ПОСЛЕДНО ДОБАВЕНО"
   ========================================================== */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> center:not(:first-child) {

    display: block !important;

    margin: 0 !important;
    padding: 0 !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> center:not(:first-child)
h2 {

    margin: 0 !important;
    padding: 19px 18px 7px !important;

    border: 1px solid var(--np-border-pink) !important;
    border-bottom: 0 !important;

    border-radius: 18px 18px 0 0 !important;

    background:
        linear-gradient(
            145deg,
            rgba(18,13,19,.99),
            rgba(8,7,10,.99)
        ) !important;

    color: #fff !important;

    font-family: "Montserrat", Arial, sans-serif !important;

    font-size: 17px !important;
    font-weight: 820 !important;

    line-height: 1.2 !important;

    text-align: left !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> center:not(:first-child)
h2::before {

    content: "VIDEO";

    display: block;

    margin-bottom: 5px;

    color: var(--np-pink-2);

    font-size: 8px;
    font-weight: 850;

    letter-spacing: .16em;
}


/* video content is the last ordinary content div */

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> .content:last-of-type {

    margin: -13px 0 0 !important;
    padding: 43px 12px 12px !important;

    overflow: hidden !important;

    border: 1px solid var(--np-border-pink) !important;
    border-top: 0 !important;

    border-radius: 0 0 18px 18px !important;

    background:
        linear-gradient(
            145deg,
            rgba(18,13,19,.99),
            rgba(8,7,10,.99)
        ) !important;

    box-shadow:
        0 17px 40px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.02) !important;
}

.np-reklama-shell
> .lasted-grid
> .lasted-item:nth-child(2)
> .content:last-of-type
iframe {

    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    border: 0 !important;
    border-radius: 11px !important;

    background: #09080b !important;
}


/* ==========================================================
   CONTRAST HARDENING
   ========================================================== */

.np-reklama-shell h1,
.np-reklama-shell h2,
.np-reklama-shell h3 {

    font-family: "Montserrat", Arial, sans-serif !important;
}

.np-reklama-shell p {
    color: var(--np-text) !important;
}

.np-reklama-shell .content {
    color: var(--np-text);
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 980px) {

    .np-reklama-shell {

        width: min(100% - 26px, 1180px) !important;

        margin-top: 68px !important;
    }

    .np-reklama-shell > .lasted-grid {

        grid-template-columns: 1fr !important;
    }

    .np-reklama-shell
    > .lasted-grid
    > .lasted-item:nth-child(2) {

        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        align-items: start !important;
    }

    .np-reklama-shell
    > .lasted-grid
    > .lasted-item:nth-child(2)
    > center:first-child,

    .np-reklama-shell
    > .lasted-grid
    > .lasted-item:nth-child(2)
    > h1.title,

    .np-reklama-shell
    > .lasted-grid
    > .lasted-item:nth-child(2)
    > h1.title + .content {

        grid-column: 1 / -1 !important;
    }
}


@media (max-width: 680px) {

    .np-reklama-shell {

        width: calc(100% - 20px) !important;

        margin-top: 35px !important;
    }

    .np-reklama-shell
    > .lasted-grid
    > .lasted-item:first-child
    > .content:first-child {

        padding: 27px 20px 25px !important;

        border-radius: 18px !important;
    }

    .np-reklama-shell
    > .lasted-grid
    > .lasted-item:first-child
    > .content:first-child
    > center:first-of-type h2 {

        font-size: clamp(29px, 9vw, 38px) !important;
    }

    .np-reklama-shell .accordion {

        padding: 20px 14px !important;

        border-radius: 17px !important;
    }

    .np-reklama-shell .accordion-header {

        padding: 12px !important;

        font-size: 11px !important;
    }

    .np-reklama-shell
    > .lasted-grid
    > .lasted-item:nth-child(2) {

        display: flex !important;
        flex-direction: column !important;
    }
}


@media (prefers-reduced-motion: reduce) {

    .np-reklama-shell *,
    .np-reklama-shell *::before,
    .np-reklama-shell *::after {

        transition: none !important;
        animation: none !important;
    }
}
