.support-page {
    position: relative;
    min-height: 100vh;
    overflow: hidden;

    color: #ffffff;

    background:
        radial-gradient(
            circle at 50% -10%,
            rgba(128, 56, 255, 0.16),
            transparent 38%
        ),
        #07070b;
}

.support-container {
    position: relative;
    z-index: 2;

    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.support-glow {
    position: absolute;
    width: 520px;
    height: 520px;

    border-radius: 50%;
    filter: blur(130px);
    pointer-events: none;
}

.support-glow-left {
    top: 170px;
    left: -330px;
    background: rgba(110, 50, 255, 0.12);
}

.support-glow-right {
    top: 660px;
    right: -360px;
    background: rgba(172, 72, 255, 0.1);
}


/* Hero */

.support-hero {
    padding: 165px 0 85px;
}

.support-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 370px;
    align-items: center;
    gap: 80px;
}

.support-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    color: #c4a5ff;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.support-eyebrow svg {
    width: 18px;
    height: 18px;
}

.support-hero-content h1 {
    max-width: 760px;
    margin: 22px 0 24px;

    font-size: clamp(48px, 7vw, 84px);
    line-height: 0.98;
    letter-spacing: -0.055em;
}

.support-hero-content h1 span {
    color: #a970ff;
}

.support-hero-content > p {
    max-width: 650px;
    margin: 0;

    color: rgba(255, 255, 255, 0.55);

    font-size: 17px;
    line-height: 1.75;
}

.support-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;

    margin-top: 34px;
}

.support-primary-button,
.support-secondary-button,
.support-contact-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    min-height: 52px;
    padding: 0 22px;

    border-radius: 14px;

    font-size: 14px;
    font-weight: 750;
    text-decoration: none;

    transition:
        transform 180ms ease,
        border-color 180ms ease,
        background 180ms ease;
}

.support-primary-button {
    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            #a855f7,
            #6d28d9
        );

    box-shadow:
        0 18px 45px rgba(109, 40, 217, 0.25);
}

.support-secondary-button {
    color: rgba(255, 255, 255, 0.8);

    border: 1px solid rgba(255, 255, 255, 0.09);
    background: rgba(255, 255, 255, 0.035);
}

.support-primary-button:hover,
.support-secondary-button:hover,
.support-contact-button:hover {
    transform: translateY(-2px);
}

.support-primary-button svg,
.support-secondary-button svg,
.support-contact-button svg {
    width: 18px;
    height: 18px;
}

.support-status-card {
    position: relative;

    padding: 28px;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 26px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.018)
        );

    box-shadow:
        0 30px 80px rgba(0, 0, 0, 0.3);

    backdrop-filter: blur(22px);
}

.support-status-icon {
    display: grid;
    place-items: center;

    width: 62px;
    height: 62px;

    margin-bottom: 24px;

    border: 1px solid rgba(185, 130, 255, 0.2);
    border-radius: 18px;

    color: #d3b4ff;
    background: rgba(143, 76, 255, 0.12);
}

.support-status-icon svg {
    width: 29px;
    height: 29px;
}

.support-status-copy span {
    display: block;
    margin-bottom: 7px;

    color: rgba(255, 255, 255, 0.4);
    font-size: 12px;
}

.support-status-copy strong {
    display: block;
    font-size: 26px;
}

.support-status-copy p {
    margin: 12px 0 25px;

    color: rgba(255, 255, 255, 0.5);
    line-height: 1.65;
}

.support-status-line {
    display: flex;
    align-items: center;
    gap: 9px;

    padding-top: 18px;

    border-top: 1px solid rgba(255, 255, 255, 0.07);

    color: rgba(255, 255, 255, 0.68);
    font-size: 12px;
}

.support-status-dot {
    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: #4ade80;

    box-shadow:
        0 0 14px rgba(74, 222, 128, 0.75);
}


/* Shared headings */

.support-quick-section,
.support-steps-section,
.support-faq-section {
    padding: 90px 0;
}

.support-section-heading {
    max-width: 670px;
    margin-bottom: 40px;
}

.support-section-heading > span {
    color: #ad7cff;

    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.support-section-heading h2,
.support-faq-intro h2,
.support-contact-content h2 {
    margin: 14px 0;

    font-size: clamp(32px, 4.5vw, 52px);
    line-height: 1.08;
    letter-spacing: -0.04em;
}

.support-section-heading p,
.support-faq-intro p,
.support-contact-content p {
    margin: 0;

    color: rgba(255, 255, 255, 0.48);
    line-height: 1.7;
}


/* Quick cards */

.support-quick-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.support-quick-card {
    position: relative;
    overflow: hidden;

    min-height: 315px;
    padding: 28px;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 22px;

    background:
        linear-gradient(
            150deg,
            rgba(255, 255, 255, 0.045),
            rgba(255, 255, 255, 0.012)
        );

    transition:
        transform 200ms ease,
        border-color 200ms ease;
}

.support-quick-card:hover {
    transform: translateY(-4px);
    border-color: rgba(170, 112, 255, 0.25);
}

.support-card-number {
    position: absolute;
    top: 25px;
    right: 25px;

    color: rgba(255, 255, 255, 0.16);

    font-size: 13px;
    font-weight: 800;
}

.support-card-icon {
    display: grid;
    place-items: center;

    width: 52px;
    height: 52px;

    margin-bottom: 48px;

    border-radius: 15px;

    color: #c5a3ff;
    background: rgba(141, 81, 255, 0.1);
}

.support-card-icon svg {
    width: 23px;
    height: 23px;
}

.support-quick-card h3 {
    margin: 0 0 13px;
    font-size: 20px;
}

.support-quick-card p {
    min-height: 68px;
    margin: 0;

    color: rgba(255, 255, 255, 0.46);
    line-height: 1.6;
}

.support-scroll-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-top: 24px;
    padding: 0;

    border: 0;

    color: #b88cff;
    background: transparent;

    font: inherit;
    font-size: 13px;
    font-weight: 700;

    cursor: pointer;
}

.support-scroll-button svg {
    width: 15px;
    height: 15px;
}


/* Steps */

.support-steps-section {
    border-top: 1px solid rgba(255, 255, 255, 0.055);
    border-bottom: 1px solid rgba(255, 255, 255, 0.055);

    background: rgba(255, 255, 255, 0.012);
}

.support-steps-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.support-step {
    display: flex;
    gap: 17px;

    padding: 23px;

    border: 1px solid rgba(255, 255, 255, 0.065);
    border-radius: 18px;

    background: rgba(5, 5, 9, 0.48);
}

.support-step-icon {
    display: grid;
    place-items: center;
    flex: 0 0 auto;

    width: 44px;
    height: 44px;

    border-radius: 13px;

    color: #c7a8ff;
    background: rgba(151, 88, 255, 0.1);
}

.support-step-icon svg {
    width: 20px;
    height: 20px;
}

.support-step span {
    color: #a97eff;

    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.support-step h3 {
    margin: 6px 0 9px;
    font-size: 17px;
}

.support-step p {
    margin: 0;

    color: rgba(255, 255, 255, 0.43);

    font-size: 13px;
    line-height: 1.6;
}


/* FAQ */

.support-faq-layout {
    display: grid;
    grid-template-columns: 350px minmax(0, 1fr);
    align-items: start;
    gap: 90px;
}

.support-faq-intro {
    position: sticky;
    top: 120px;
}

.support-inline-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    margin-top: 25px;

    color: #b98fff;

    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
}

.support-inline-link svg {
    width: 16px;
    height: 16px;
}

.support-faq-list {
    border-top: 1px solid rgba(255, 255, 255, 0.075);
}

.support-faq-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.support-faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;

    width: 100%;
    min-height: 80px;
    padding: 20px 2px;

    border: 0;

    color: rgba(255, 255, 255, 0.88);
    background: transparent;

    font: inherit;
    font-size: 16px;
    font-weight: 650;
    text-align: left;

    cursor: pointer;
}

.support-faq-question svg {
    flex: 0 0 auto;

    width: 20px;
    height: 20px;

    color: #ae7dff;

    transition: transform 180ms ease;
}

.support-faq-item.is-open
.support-faq-question svg {
    transform: rotate(45deg);
}

.support-faq-answer {
    display: grid;
    grid-template-rows: 0fr;

    transition: grid-template-rows 230ms ease;
}

.support-faq-answer > div {
    overflow: hidden;
}

.support-faq-item.is-open
.support-faq-answer {
    grid-template-rows: 1fr;
}

.support-faq-answer p {
    margin: 0 0 16px;
    padding-right: 50px;

    color: rgba(255, 255, 255, 0.47);

    font-size: 14px;
    line-height: 1.75;
}

.support-faq-answer p:last-child {
    margin-bottom: 25px;
}


/* Contact */

.support-contact-section {
    padding: 20px 0 110px;
}

.support-contact-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 45px;

    padding: 42px 46px;

    border: 1px solid rgba(181, 120, 255, 0.2);
    border-radius: 28px;

    background:
        radial-gradient(
            circle at 90% 20%,
            rgba(172, 92, 255, 0.17),
            transparent 35%
        ),
        linear-gradient(
            140deg,
            rgba(132, 58, 255, 0.12),
            rgba(255, 255, 255, 0.025)
        );
}

.support-contact-content {
    max-width: 720px;
}

.support-contact-content > span {
    color: #b990ff;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.support-contact-content h2 {
    margin-bottom: 12px;
    font-size: clamp(29px, 4vw, 44px);
}

.support-contact-button {
    flex: 0 0 auto;

    color: #08060c;
    background: #ffffff;
}


/* Responsive */

@media (max-width: 980px) {
    .support-hero-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .support-status-card {
        max-width: 500px;
    }

    .support-quick-grid,
    .support-steps-grid {
        grid-template-columns: 1fr;
    }

    .support-quick-card {
        min-height: 0;
    }

    .support-card-icon {
        margin-bottom: 28px;
    }

    .support-quick-card p {
        min-height: 0;
    }

    .support-faq-layout {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .support-faq-intro {
        position: static;
    }
}

@media (max-width: 720px) {
    .support-container {
        width: min(100% - 24px, 1180px);
    }

    .support-hero {
        padding: 125px 0 55px;
    }

    .support-hero-content h1 {
        font-size: 48px;
    }

    .support-hero-actions {
        flex-direction: column;
    }

    .support-primary-button,
    .support-secondary-button {
        width: 100%;
    }

    .support-quick-section,
    .support-steps-section,
    .support-faq-section {
        padding: 65px 0;
    }

    .support-contact-card {
        align-items: flex-start;
        flex-direction: column;

        padding: 30px 25px;
    }

    .support-contact-button {
        width: 100%;
    }

    .support-faq-question {
        min-height: 74px;
        font-size: 14px;
    }

    .support-faq-answer p {
        padding-right: 10px;
    }
}


/* ==========================================================
   VOIDVPN SUPPORT CENTER — WOW REDESIGN
========================================================== */

:root {
    --support-purple: #a855f7;
    --support-purple-light: #d8b4fe;
    --support-purple-dark: #6d28d9;
    --support-green: #4ade80;
    --support-surface: rgba(10, 8, 18, 0.76);
    --support-border: rgba(192, 132, 252, 0.14);
}


/* ==========================================================
   PAGE
========================================================== */

.support-page {
    position: relative !important;
    overflow: hidden !important;

    min-height: 100vh !important;
    padding: 118px 22px 70px !important;

    color: #ffffff !important;

    background:
        radial-gradient(
            circle at 82% 5%,
            rgba(126, 34, 206, 0.18),
            transparent 27%
        ),
        radial-gradient(
            circle at 12% 56%,
            rgba(79, 70, 229, 0.08),
            transparent 29%
        ),
        linear-gradient(
            180deg,
            #050508 0%,
            #07050c 48%,
            #040407 100%
        ) !important;
}

.support-page::before {
    content: "";

    position: fixed;
    inset: 0;

    z-index: 0;

    opacity: 0.22;

    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.024) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.024) 1px,
            transparent 1px
        );

    background-size:
        52px 52px;

    mask-image:
        linear-gradient(
            to bottom,
            black,
            transparent 82%
        );

    pointer-events: none;
}

.support-page > section {
    position: relative;
    z-index: 2;
}

.support-container {
    width: min(100%, 1280px) !important;

    margin-right: auto !important;
    margin-left: auto !important;
}

.support-glow {
    z-index: 0 !important;

    filter:
        blur(100px) !important;

    opacity:
        0.48 !important;
}

.support-glow-left {
    width: 440px !important;
    height: 440px !important;

    background:
        rgba(99, 102, 241, 0.18) !important;
}

.support-glow-right {
    width: 520px !important;
    height: 520px !important;

    background:
        rgba(168, 85, 247, 0.2) !important;
}


/* ==========================================================
   HERO
========================================================== */

.support-hero {
    padding:
        0 !important;
}

.support-hero-grid {
    position: relative !important;
    overflow: hidden !important;

    display: grid !important;

    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(300px, 0.65fr) !important;

    align-items:
        center !important;

    gap:
        42px !important;

    min-height:
        470px !important;

    padding:
        58px 52px !important;

    border:
        1px solid rgba(192, 132, 252, 0.16) !important;

    border-radius:
        32px !important;

    background:
        radial-gradient(
            circle at 82% 38%,
            rgba(168, 85, 247, 0.19),
            transparent 27%
        ),
        radial-gradient(
            circle at 8% 100%,
            rgba(99, 102, 241, 0.075),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.045),
            rgba(255, 255, 255, 0.008)
        ),
        rgba(8, 6, 15, 0.83) !important;

    box-shadow:
        0 40px 110px rgba(0, 0, 0, 0.43),
        0 22px 65px rgba(88, 28, 135, 0.13),
        inset 0 1px 0 rgba(255, 255, 255, 0.055) !important;

    backdrop-filter:
        blur(26px)
        saturate(130%) !important;

    -webkit-backdrop-filter:
        blur(26px)
        saturate(130%) !important;

    isolation:
        isolate;
}

.support-hero-grid::before {
    content: "";

    position: absolute;

    top: -135px;
    right: 5%;

    width: 430px;
    height: 430px;

    z-index: -1;

    border:
        1px solid rgba(192, 132, 252, 0.18);

    border-radius:
        50%;

    background:
        repeating-radial-gradient(
            circle,
            transparent 0 42px,
            rgba(192, 132, 252, 0.055) 43px 44px
        );

    box-shadow:
        0 0 105px rgba(168, 85, 247, 0.13),
        inset 0 0 95px rgba(168, 85, 247, 0.055);

    animation:
        supportSphereFloat 9s
        ease-in-out infinite;
}

.support-hero-grid::after {
    content: "";

    position: absolute;

    top: 127px;
    right: 10%;

    width: 14px;
    height: 14px;

    border-radius:
        50%;

    background:
        #ffffff;

    box-shadow:
        0 0 11px rgba(255, 255, 255, 1),
        0 0 32px rgba(168, 85, 247, 0.9),
        0 0 70px rgba(168, 85, 247, 0.45);

    animation:
        supportOrbitPoint 5.5s
        ease-in-out infinite;
}

.support-hero-content {
    position: relative !important;

    z-index:
        2 !important;

    max-width:
        720px !important;
}

.support-eyebrow {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        8px !important;

    min-height:
        34px !important;

    padding:
        0 13px !important;

    margin-bottom:
        18px !important;

    border:
        1px solid rgba(192, 132, 252, 0.2) !important;

    border-radius:
        999px !important;

    color:
        #e9d5ff !important;

    background:
        rgba(168, 85, 247, 0.09) !important;

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;

    font-size:
        10px !important;

    font-weight:
        850 !important;

    letter-spacing:
        0.65px !important;

    text-transform:
        uppercase !important;
}

.support-eyebrow svg {
    width:
        15px !important;

    height:
        15px !important;
}

.support-hero-content h1 {
    max-width:
        800px !important;

    margin:
        0 0 18px !important;

    color:
        #ffffff !important;

    font-size:
        clamp(44px, 6vw, 78px) !important;

    font-weight:
        920 !important;

    letter-spacing:
        -3.3px !important;

    line-height:
        0.96 !important;
}

.support-hero-content h1 span {
    color:
        transparent !important;

    background:
        linear-gradient(
            135deg,
            #ffffff 5%,
            #e9d5ff 42%,
            #a855f7 100%
        ) !important;

    -webkit-background-clip:
        text !important;

    background-clip:
        text !important;

    filter:
        drop-shadow(
            0 0 22px
            rgba(168, 85, 247, 0.25)
        );
}

.support-hero-content > p {
    max-width:
        650px !important;

    margin:
        0 !important;

    color:
        rgba(255, 255, 255, 0.54) !important;

    font-size:
        15px !important;

    line-height:
        1.75 !important;
}


/* ==========================================================
   HERO BUTTONS
========================================================== */

.support-hero-actions {
    display:
        flex !important;

    align-items:
        center !important;

    flex-wrap:
        wrap !important;

    gap:
        12px !important;

    margin-top:
        30px !important;
}

.support-primary-button,
.support-secondary-button,
.support-contact-button {
    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    gap:
        9px !important;

    min-height:
        49px !important;

    padding:
        0 21px !important;

    border-radius:
        14px !important;

    font-size:
        11px !important;

    font-weight:
        830 !important;

    text-decoration:
        none !important;

    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease,
        filter 0.2s ease !important;
}

.support-primary-button,
.support-contact-button {
    border:
        1px solid rgba(216, 180, 254, 0.36) !important;

    color:
        #ffffff !important;

    background:
        linear-gradient(
            135deg,
            #a855f7,
            #7c3aed 58%,
            #6d28d9
        ) !important;

    box-shadow:
        0 17px 44px rgba(109, 40, 217, 0.36),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

.support-secondary-button {
    border:
        1px solid rgba(255, 255, 255, 0.1) !important;

    color:
        rgba(255, 255, 255, 0.76) !important;

    background:
        rgba(255, 255, 255, 0.033) !important;

    backdrop-filter:
        blur(14px) !important;
}

.support-primary-button:hover,
.support-contact-button:hover {
    transform:
        translateY(-3px) !important;

    filter:
        brightness(1.08) !important;

    box-shadow:
        0 23px 54px rgba(109, 40, 217, 0.47),
        inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
}

.support-secondary-button:hover {
    transform:
        translateY(-3px) !important;

    border-color:
        rgba(192, 132, 252, 0.25) !important;

    color:
        #ffffff !important;

    background:
        rgba(168, 85, 247, 0.07) !important;
}


/* ==========================================================
   SUPPORT STATUS CARD
========================================================== */

.support-status-card {
    position:
        relative !important;

    overflow:
        hidden !important;

    display:
        flex !important;

    flex-direction:
        column !important;

    min-height:
        290px !important;

    padding:
        25px !important;

    border:
        1px solid rgba(192, 132, 252, 0.17) !important;

    border-radius:
        24px !important;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(168, 85, 247, 0.16),
            transparent 43%
        ),
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.05),
            rgba(255, 255, 255, 0.012)
        ),
        rgba(7, 5, 13, 0.79) !important;

    box-shadow:
        0 28px 75px rgba(0, 0, 0, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

.support-status-card::before {
    content: "";

    position: absolute;

    inset: -90px -40px auto auto;

    width: 220px;
    height: 220px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(168, 85, 247, 0.22),
            transparent 65%
        );

    pointer-events: none;
}

.support-status-icon {
    display:
        grid !important;

    place-items:
        center !important;

    width:
        60px !important;

    height:
        60px !important;

    margin-bottom:
        23px !important;

    border:
        1px solid rgba(192, 132, 252, 0.24) !important;

    border-radius:
        19px !important;

    color:
        #e9d5ff !important;

    background:
        linear-gradient(
            135deg,
            rgba(168, 85, 247, 0.29),
            rgba(109, 40, 217, 0.09)
        ) !important;

    box-shadow:
        0 0 42px rgba(168, 85, 247, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
}

.support-status-copy {
    position:
        relative;

    z-index:
        2;
}

.support-status-copy span {
    color:
        rgba(216, 180, 254, 0.7) !important;

    font-size:
        10px !important;

    font-weight:
        780 !important;

    letter-spacing:
        0.8px !important;

    text-transform:
        uppercase !important;
}

.support-status-copy strong {
    display:
        block !important;

    margin-top:
        6px !important;

    color:
        #ffffff !important;

    font-size:
        25px !important;

    font-weight:
        880 !important;

    letter-spacing:
        -0.8px !important;
}

.support-status-copy p {
    margin:
        10px 0 0 !important;

    color:
        rgba(255, 255, 255, 0.44) !important;

    font-size:
        11px !important;

    line-height:
        1.65 !important;
}

.support-status-line {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        8px !important;

    align-self:
        flex-start !important;

    min-height:
        31px !important;

    margin-top:
        auto !important;

    padding:
        0 11px !important;

    border:
        1px solid rgba(74, 222, 128, 0.17) !important;

    border-radius:
        999px !important;

    color:
        #86efac !important;

    background:
        rgba(34, 197, 94, 0.07) !important;

    font-size:
        9px !important;

    font-weight:
        800 !important;
}

.support-status-dot {
    width:
        7px !important;

    height:
        7px !important;

    border-radius:
        50% !important;

    background:
        #4ade80 !important;

    box-shadow:
        0 0 12px rgba(74, 222, 128, 0.8) !important;

    animation:
        supportStatusPulse 2s
        ease-in-out infinite;
}


/* ==========================================================
   SECTION SPACING
========================================================== */

.support-quick-section,
.support-steps-section,
.support-faq-section,
.support-contact-section {
    padding:
        0 !important;

    margin-top:
        26px !important;
}

.support-section-heading {
    margin-bottom:
        23px !important;
}

.support-section-heading > span {
    display:
        block !important;

    margin-bottom:
        8px !important;

    color:
        #c084fc !important;

    font-size:
        10px !important;

    font-weight:
        850 !important;

    letter-spacing:
        1.1px !important;

    text-transform:
        uppercase !important;
}

.support-section-heading h2,
.support-faq-intro h2,
.support-contact-content h2 {
    margin:
        0 !important;

    color:
        #ffffff !important;

    font-size:
        clamp(28px, 4vw, 46px) !important;

    font-weight:
        900 !important;

    letter-spacing:
        -1.7px !important;

    line-height:
        1.05 !important;
}

.support-section-heading p,
.support-faq-intro p,
.support-contact-content p {
    max-width:
        650px !important;

    margin:
        12px 0 0 !important;

    color:
        rgba(255, 255, 255, 0.45) !important;

    font-size:
        12px !important;

    line-height:
        1.7 !important;
}


/* ==========================================================
   QUICK PROBLEM CARDS
========================================================== */

.support-quick-section > .support-container {
    padding:
        30px !important;

    border:
        1px solid var(--support-border) !important;

    border-radius:
        26px !important;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.034),
            rgba(255, 255, 255, 0.008)
        ),
        rgba(8, 6, 15, 0.76) !important;

    box-shadow:
        0 28px 78px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

.support-quick-grid {
    display:
        grid !important;

    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap:
        15px !important;
}

.support-quick-card {
    position:
        relative !important;

    overflow:
        hidden !important;

    display:
        flex !important;

    flex-direction:
        column !important;

    min-height:
        295px !important;

    padding:
        23px !important;

    border:
        1px solid rgba(192, 132, 252, 0.11) !important;

    border-radius:
        20px !important;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(168, 85, 247, 0.1),
            transparent 42%
        ),
        rgba(255, 255, 255, 0.019) !important;

    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        background 0.22s ease,
        box-shadow 0.22s ease !important;
}

.support-quick-card:hover {
    transform:
        translateY(-5px) !important;

    border-color:
        rgba(192, 132, 252, 0.28) !important;

    background:
        rgba(168, 85, 247, 0.045) !important;

    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.28),
        0 12px 35px rgba(109, 40, 217, 0.11) !important;
}

.support-card-number {
    position:
        absolute !important;

    top:
        18px !important;

    right:
        18px !important;

    display:
        grid !important;

    place-items:
        center !important;

    width:
        38px !important;

    height:
        31px !important;

    border:
        1px solid rgba(192, 132, 252, 0.17) !important;

    border-radius:
        10px !important;

    color:
        #e9d5ff !important;

    background:
        rgba(168, 85, 247, 0.08) !important;

    font-size:
        9px !important;

    font-weight:
        850 !important;
}

.support-card-icon {
    display:
        grid !important;

    place-items:
        center !important;

    width:
        54px !important;

    height:
        54px !important;

    margin-bottom:
        21px !important;

    border:
        1px solid rgba(192, 132, 252, 0.19) !important;

    border-radius:
        17px !important;

    color:
        #e9d5ff !important;

    background:
        linear-gradient(
            135deg,
            rgba(168, 85, 247, 0.26),
            rgba(109, 40, 217, 0.07)
        ) !important;

    box-shadow:
        0 0 35px rgba(168, 85, 247, 0.14) !important;
}

.support-quick-card h3 {
    margin:
        0 0 10px !important;

    color:
        #ffffff !important;

    font-size:
        18px !important;

    font-weight:
        850 !important;

    letter-spacing:
        -0.5px !important;
}

.support-quick-card p {
    margin:
        0 0 20px !important;

    color:
        rgba(255, 255, 255, 0.43) !important;

    font-size:
        11px !important;

    line-height:
        1.68 !important;
}

.support-scroll-button {
    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        10px !important;

    width:
        100% !important;

    min-height:
        43px !important;

    margin-top:
        auto !important;

    padding:
        0 13px !important;

    border:
        1px solid rgba(192, 132, 252, 0.13) !important;

    border-radius:
        12px !important;

    color:
        rgba(255, 255, 255, 0.7) !important;

    background:
        rgba(255, 255, 255, 0.025) !important;

    font-size:
        10px !important;

    font-weight:
        780 !important;

    cursor:
        pointer !important;
}

.support-scroll-button:hover {
    border-color:
        rgba(192, 132, 252, 0.27) !important;

    color:
        #ffffff !important;

    background:
        rgba(168, 85, 247, 0.07) !important;
}


/* ==========================================================
   THREE CHECKS
========================================================== */

.support-steps-section > .support-container {
    padding:
        30px !important;

    border:
        1px solid var(--support-border) !important;

    border-radius:
        26px !important;

    background:
        radial-gradient(
            circle at 92% 0,
            rgba(99, 102, 241, 0.07),
            transparent 35%
        ),
        rgba(8, 6, 15, 0.72) !important;

    box-shadow:
        0 26px 72px rgba(0, 0, 0, 0.27),
        inset 0 1px 0 rgba(255, 255, 255, 0.03) !important;
}

.support-steps-grid {
    display:
        grid !important;

    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap:
        13px !important;
}

.support-step {
    position:
        relative !important;

    display:
        flex !important;

    align-items:
        flex-start !important;

    gap:
        15px !important;

    min-height:
        150px !important;

    padding:
        19px !important;

    border:
        1px solid rgba(255, 255, 255, 0.06) !important;

    border-radius:
        17px !important;

    background:
        rgba(255, 255, 255, 0.018) !important;
}

.support-step-icon {
    display:
        grid !important;

    place-items:
        center !important;

    width:
        45px !important;

    height:
        45px !important;

    flex:
        0 0 45px !important;

    border:
        1px solid rgba(192, 132, 252, 0.16) !important;

    border-radius:
        14px !important;

    color:
        #d8b4fe !important;

    background:
        rgba(168, 85, 247, 0.08) !important;
}

.support-step span {
    display:
        block !important;

    margin-bottom:
        5px !important;

    color:
        #c084fc !important;

    font-size:
        9px !important;

    font-weight:
        850 !important;

    text-transform:
        uppercase !important;
}

.support-step h3 {
    margin:
        0 0 7px !important;

    color:
        #ffffff !important;

    font-size:
        15px !important;

    font-weight:
        820 !important;
}

.support-step p {
    margin:
        0 !important;

    color:
        rgba(255, 255, 255, 0.41) !important;

    font-size:
        10px !important;

    line-height:
        1.62 !important;
}


/* ==========================================================
   FAQ
========================================================== */

.support-faq-layout {
    display:
        grid !important;

    grid-template-columns:
        minmax(270px, 0.62fr)
        minmax(0, 1.38fr) !important;

    gap:
        34px !important;

    padding:
        31px !important;

    border:
        1px solid var(--support-border) !important;

    border-radius:
        26px !important;

    background:
        radial-gradient(
            circle at 0 0,
            rgba(168, 85, 247, 0.075),
            transparent 31%
        ),
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.033),
            rgba(255, 255, 255, 0.007)
        ),
        rgba(8, 6, 15, 0.76) !important;

    box-shadow:
        0 28px 80px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

.support-faq-intro {
    position:
        sticky !important;

    top:
        110px !important;

    align-self:
        start !important;
}

.support-inline-link {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        7px !important;

    margin-top:
        22px !important;

    color:
        #d8b4fe !important;

    font-size:
        10px !important;

    font-weight:
        800 !important;

    text-decoration:
        none !important;
}

.support-faq-list {
    display:
        grid !important;

    gap:
        10px !important;
}

.support-faq-item {
    overflow:
        hidden !important;

    border:
        1px solid rgba(255, 255, 255, 0.065) !important;

    border-radius:
        16px !important;

    background:
        rgba(255, 255, 255, 0.019) !important;

    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease !important;
}

.support-faq-item:hover {
    border-color:
        rgba(192, 132, 252, 0.16) !important;
}

.support-faq-item.is-open {
    border-color:
        rgba(192, 132, 252, 0.27) !important;

    background:
        rgba(168, 85, 247, 0.045) !important;

    box-shadow:
        0 17px 42px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.025) !important;
}

.support-faq-question {
    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        16px !important;

    width:
        100% !important;

    min-height:
        63px !important;

    padding:
        0 17px !important;

    border:
        0 !important;

    color:
        rgba(255, 255, 255, 0.78) !important;

    background:
        transparent !important;

    font-size:
        12px !important;

    font-weight:
        790 !important;

    text-align:
        left !important;

    cursor:
        pointer !important;
}

.support-faq-question svg {
    width:
        18px !important;

    height:
        18px !important;

    flex:
        0 0 18px !important;

    color:
        #c084fc !important;

    transition:
        transform 0.25s ease !important;
}

.support-faq-item.is-open
.support-faq-question svg {
    transform:
        rotate(45deg) !important;
}

.support-faq-answer {
    color:
        rgba(255, 255, 255, 0.45) !important;
}

.support-faq-answer > div {
    padding:
        0 17px 18px !important;
}

.support-faq-answer p {
    margin:
        0 0 10px !important;

    font-size:
        11px !important;

    line-height:
        1.72 !important;
}


/* ==========================================================
   FINAL CONTACT CTA
========================================================== */

.support-contact-card {
    position:
        relative !important;

    overflow:
        hidden !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        32px !important;

    min-height:
        270px !important;

    padding:
        42px !important;

    border:
        1px solid rgba(192, 132, 252, 0.19) !important;

    border-radius:
        28px !important;

    background:
        radial-gradient(
            circle at 80% 50%,
            rgba(168, 85, 247, 0.2),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            rgba(168, 85, 247, 0.08),
            rgba(255, 255, 255, 0.009)
        ),
        rgba(10, 7, 18, 0.86) !important;

    box-shadow:
        0 35px 95px rgba(0, 0, 0, 0.37),
        0 18px 58px rgba(109, 40, 217, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
}

.support-contact-card::before {
    content: "";

    position:
        absolute;

    right:
        -90px;

    width:
        310px;

    height:
        310px;

    border:
        1px solid rgba(192, 132, 252, 0.14);

    border-radius:
        50%;

    background:
        repeating-radial-gradient(
            circle,
            transparent 0 31px,
            rgba(192, 132, 252, 0.045) 32px 33px
        );

    pointer-events:
        none;
}

.support-contact-content {
    position:
        relative;

    z-index:
        2;

    max-width:
        720px !important;
}

.support-contact-content > span {
    display:
        block !important;

    margin-bottom:
        9px !important;

    color:
        #c084fc !important;

    font-size:
        10px !important;

    font-weight:
        850 !important;

    letter-spacing:
        1px !important;

    text-transform:
        uppercase !important;
}

.support-contact-button {
    position:
        relative;

    z-index:
        2;

    flex:
        0 0 auto !important;

    min-width:
        220px !important;
}


/* ==========================================================
   ANIMATIONS
========================================================== */

@keyframes supportSphereFloat {
    0%,
    100% {
        transform:
            translate3d(0, 0, 0)
            scale(1)
            rotate(0deg);
    }

    50% {
        transform:
            translate3d(-12px, 10px, 0)
            scale(1.035)
            rotate(3deg);
    }
}

@keyframes supportOrbitPoint {
    0%,
    100% {
        opacity:
            0.55;

        transform:
            translate3d(0, 0, 0)
            scale(0.8);
    }

    50% {
        opacity:
            1;

        transform:
            translate3d(27px, 18px, 0)
            scale(1.2);
    }
}

@keyframes supportStatusPulse {
    0%,
    100% {
        opacity:
            0.65;

        transform:
            scale(0.86);
    }

    50% {
        opacity:
            1;

        transform:
            scale(1.15);
    }
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1050px) {
    .support-hero-grid {
        grid-template-columns:
            1fr !important;
    }

    .support-status-card {
        min-height:
            230px !important;
    }

    .support-quick-grid,
    .support-steps-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    .support-quick-card:last-child,
    .support-step:last-child {
        grid-column:
            1 / -1 !important;
    }

    .support-faq-layout {
        grid-template-columns:
            1fr !important;
    }

    .support-faq-intro {
        position:
            static !important;
    }
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 700px) {
    .support-page {
        padding:
            94px 12px 38px !important;
    }

    .support-hero-grid {
        min-height:
            0 !important;

        padding:
            30px 20px !important;

        border-radius:
            22px !important;
    }

    .support-hero-grid::before {
        top:
            -80px;

        right:
            -115px;

        width:
            270px;

        height:
            270px;
    }

    .support-hero-grid::after {
        top:
            70px;

        right:
            22px;
    }

    .support-hero-content h1 {
        font-size:
            clamp(38px, 13vw, 55px) !important;

        letter-spacing:
            -2.3px !important;
    }

    .support-hero-content > p {
        font-size:
            13px !important;
    }

    .support-hero-actions {
        display:
            grid !important;

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

    .support-primary-button,
    .support-secondary-button {
        width:
            100% !important;
    }

    .support-status-card {
        min-height:
            245px !important;

        padding:
            21px !important;

        border-radius:
            20px !important;
    }

    .support-quick-section > .support-container,
    .support-steps-section > .support-container,
    .support-faq-layout {
        padding:
            21px 16px !important;

        border-radius:
            21px !important;
    }

    .support-quick-grid,
    .support-steps-grid {
        grid-template-columns:
            1fr !important;
    }

    .support-quick-card:last-child,
    .support-step:last-child {
        grid-column:
            auto !important;
    }

    .support-quick-card {
        min-height:
            260px !important;

        padding:
            20px !important;

        border-radius:
            18px !important;
    }

    .support-step {
        min-height:
            135px !important;

        padding:
            17px !important;
    }

    .support-contact-card {
        display:
            grid !important;

        min-height:
            0 !important;

        padding:
            27px 20px !important;

        border-radius:
            22px !important;
    }

    .support-contact-button {
        width:
            100% !important;

        min-width:
            0 !important;
    }
}


@media (prefers-reduced-motion: reduce) {
    .support-hero-grid::before,
    .support-hero-grid::after,
    .support-status-dot {
        animation:
            none !important;
    }
}


/* =========================================================
   SUPPORT FAQ FIX
========================================================= */

.support-faq-list,
.vp-support-faq-list {
    display: grid;
    gap: 10px;
}

.support-faq-item,
.vp-support-faq-item {
    overflow: hidden;

    border:
        1px solid rgba(255, 255, 255, 0.075);

    border-radius: 17px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.026),
            rgba(255, 255, 255, 0.012)
        );

    transition:
        border-color 0.22s ease,
        background 0.22s ease,
        box-shadow 0.22s ease;
}

.support-faq-item:hover,
.vp-support-faq-item:hover {
    border-color:
        rgba(192, 132, 252, 0.18);
}

.support-faq-item.is-open,
.vp-support-faq-item.is-open {
    border-color:
        rgba(192, 132, 252, 0.28);

    background:
        linear-gradient(
            145deg,
            rgba(168, 85, 247, 0.075),
            rgba(255, 255, 255, 0.016)
        );

    box-shadow:
        0 18px 50px rgba(0, 0, 0, 0.2);
}

.support-faq-question,
.vp-support-faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    width: 100%;
    min-height: 78px;
    padding: 0 20px;

    border: 0;

    color: rgba(255, 255, 255, 0.84);
    background: transparent;

    font: inherit;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.45;
    text-align: left;

    cursor: pointer;
}

.support-faq-question span,
.vp-support-faq-question span {
    display: block;
    max-width: calc(100% - 40px);
}

.support-faq-question svg,
.vp-support-faq-question svg {
    flex: 0 0 auto;

    width: 18px;
    height: 18px;

    color: #c084fc;

    transition:
        transform 0.25s ease,
        color 0.25s ease;
}

.support-faq-item.is-open .support-faq-question svg,
.vp-support-faq-item.is-open .vp-support-faq-question svg {
    color: #f3e8ff;
    transform: rotate(45deg);
}

.support-faq-answer,
.vp-support-faq-answer {
    overflow: hidden;

    max-height: 0 !important;
    opacity: 0;
    visibility: hidden;

    transition:
        max-height 0.3s ease,
        opacity 0.22s ease,
        visibility 0.22s ease;
}

.support-faq-answer p,
.vp-support-faq-answer p {
    margin: 0;
    padding:
        0 54px 22px 20px;

    color: rgba(255, 255, 255, 0.48);

    font-size: 11px;
    line-height: 1.75;
}

.support-faq-item.is-open .support-faq-answer,
.vp-support-faq-item.is-open .vp-support-faq-answer {
    opacity: 1;
    visibility: visible;
}

@media (max-width: 760px) {
    .support-faq-question,
    .vp-support-faq-question {
        min-height: 68px;
        padding: 0 16px;

        font-size: 11px;
    }

    .support-faq-answer p,
    .vp-support-faq-answer p {
        padding:
            0 42px 19px 16px;

        font-size: 10px;
    }
}


/* =========================================================
   SUPPORT FAQ — FINAL OVERRIDE
========================================================= */

.support-faq-list {
    display: grid;
    gap: 10px;
}

.support-faq-item {
    overflow: hidden;

    border:
        1px solid rgba(255, 255, 255, 0.075);

    border-radius: 17px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.026),
            rgba(255, 255, 255, 0.012)
        );

    transition:
        border-color 0.22s ease,
        background 0.22s ease,
        box-shadow 0.22s ease;
}

.support-faq-item:hover {
    border-color:
        rgba(192, 132, 252, 0.18);
}

.support-faq-item.is-open {
    border-color:
        rgba(192, 132, 252, 0.3);

    background:
        linear-gradient(
            145deg,
            rgba(168, 85, 247, 0.075),
            rgba(255, 255, 255, 0.016)
        );

    box-shadow:
        0 18px 50px rgba(0, 0, 0, 0.2);
}

.support-faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    width: 100%;
    min-height: 76px;
    padding: 0 20px;

    border: 0;

    color: rgba(255, 255, 255, 0.84);
    background: transparent;

    font: inherit;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.45;
    text-align: left;

    cursor: pointer;
}

.support-faq-question svg {
    flex: 0 0 auto;

    width: 18px;
    height: 18px;

    color: #c084fc;

    transition:
        transform 0.25s ease,
        color 0.25s ease;
}

.support-faq-item.is-open
.support-faq-question svg {
    color: #f3e8ff;
    transform: rotate(45deg);
}

/*
   Важно: полностью отменяем старую логику max-height.
   Закрытый ответ занимает ровно 0 строк.
*/

.support-faq-answer {
    display: grid !important;
    grid-template-rows: 0fr;

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

    opacity: 0;
    visibility: hidden;

    transition:
        grid-template-rows 0.3s ease,
        opacity 0.22s ease,
        visibility 0.22s ease;
}

.support-faq-answer > div {
    overflow: hidden;
    min-height: 0;
}

.support-faq-item.is-open
.support-faq-answer {
    grid-template-rows: 1fr;

    max-height: none !important;

    opacity: 1;
    visibility: visible;
}

.support-faq-answer p {
    margin: 0;
    padding:
        0 54px 14px 20px;

    color: rgba(255, 255, 255, 0.48);

    font-size: 11px;
    line-height: 1.75;
}

.support-faq-answer p:first-child {
    padding-top: 0;
}

.support-faq-answer p:last-child {
    padding-bottom: 22px;
}

@media (max-width: 720px) {
    .support-faq-question {
        min-height: 68px;
        padding: 0 16px;

        font-size: 11px;
    }

    .support-faq-answer p {
        padding-right: 42px;
        padding-left: 16px;

        font-size: 10px;
    }

    .support-faq-answer p:last-child {
        padding-bottom: 19px;
    }
}
