.vps-page {
    --vps-bg: #07101e;
    --vps-panel: rgba(15, 26, 46, .86);
    --vps-border: rgba(126, 154, 205, .17);
    --vps-text: #f4f7ff;
    --vps-muted: #9baac2;
    --vps-blue: #5d78ff;
    --vps-cyan: #34c9ff;
    position: relative;
    overflow: hidden;
    background: var(--vps-bg);
    color: var(--vps-text);
}

.vps-page *, .vps-page *::before, .vps-page *::after { box-sizing: border-box; }
.vps-page h1, .vps-page h2, .vps-page h3, .vps-page p { margin-top: 0; }

.vps-hero {
    position: relative;
    padding: 175px 0 96px;
    background:
        radial-gradient(circle at 77% 26%, rgba(54, 197, 255, .13), transparent 26%),
        radial-gradient(circle at 24% 22%, rgba(91, 82, 255, .17), transparent 34%),
        linear-gradient(180deg, #07101e 0%, #091424 100%);
}

.vps-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .35;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 42px 42px;
    pointer-events: none;
}

.vps-hero .container { position: relative; z-index: 1; }

.vps-eyebrow,
.vps-section-heading > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 17px;
    color: #79d8ff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.vps-hero h1 {
    max-width: 760px;
    margin-bottom: 22px;
    color: #fff;
    font-size: clamp(36px, 4.2vw, 54px);
    font-weight: 800;
    line-height: 1.02;
    letter-spacing: -.045em;
}

.vps-hero h1 span {
    background: linear-gradient(90deg, #87dfff, #8c7dff 70%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.vps-hero-lead {
    max-width: 700px;
    margin-bottom: 30px;
    color: #aebad0;
    font-size: 17px;
    line-height: 1.75;
}

.vps-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 31px; }
.vps-btn {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: .2s ease;
}
.vps-btn-primary { background: linear-gradient(135deg, #5d58f7, #337ff4); color: #fff !important; box-shadow: 0 14px 36px rgba(65, 96, 244, .25); }
.vps-btn-primary:hover { transform: translateY(-2px); color: #fff !important; }
.vps-btn-secondary { border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.045); color: #eaf0ff !important; }
.vps-btn-secondary:hover { border-color: rgba(113, 196, 255, .38); background: rgba(255,255,255,.08); color: #fff !important; }

.vps-hero-card {
    position: relative;
    max-width: 430px;
    margin-left: auto;
    padding: 22px;
    border: 1px solid rgba(113, 161, 229, .2);
    border-radius: 18px;
    background: linear-gradient(160deg, rgba(25, 42, 72, .94), rgba(8, 16, 30, .93));
    box-shadow: 0 35px 90px rgba(0,0,0,.32), inset 0 1px rgba(255,255,255,.04);
}
.vps-hero-card::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    background: linear-gradient(135deg, rgba(91, 198, 255, .23), transparent 38%, rgba(109, 89, 255, .16));
    pointer-events: none;
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    padding: 1px;
}
.vps-hero-card-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; font-size:12px; font-weight:800; letter-spacing:.08em; color:#a9bdd8; }
.vps-hero-card-head strong { color:#5ee6ab; }
.vps-server-rack { display:grid; gap:10px; padding:14px; border-radius:13px; background:#040a13; border:1px solid rgba(255,255,255,.07); }
.vps-server-rack > div { display:flex; align-items:center; gap:8px; height:56px; padding:0 15px; border:1px solid rgba(120,151,200,.14); border-radius:8px; background:linear-gradient(180deg,#17243a,#0e1727); box-shadow:inset 0 1px rgba(255,255,255,.04); }
.vps-server-rack span { width:7px; height:7px; border-radius:50%; background:#55e3ab; box-shadow:0 0 13px rgba(85,227,171,.7); }
.vps-server-rack span:nth-child(2) { background:#49baff; box-shadow:0 0 13px rgba(73,186,255,.6); }
.vps-server-rack i { width:54%; height:5px; margin-left:auto; border-radius:99px; background:repeating-linear-gradient(90deg,rgba(132,154,188,.34) 0 4px,transparent 4px 8px); }
.vps-uptime-line { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:15px; color:#a9bdd8; font-size:13px; font-weight:800; letter-spacing:.02em; }
.vps-uptime-line span { display:inline-flex; align-items:center; gap:7px; }
.vps-uptime-line i { color:#5ee6ab; }
.vps-uptime-line strong { color:#fff; font-size:15px; font-weight:900; }

/* Hero visual v16 */
.vps-hero-visual {
    position: relative;
    display: flex;
    min-height: 390px;
    align-items: center;
    justify-content: center;
}
.vps-hero-visual::before {
    content: "";
    position: absolute;
    width: 78%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(48, 189, 255, .14) 0%, rgba(80, 92, 255, .08) 42%, transparent 72%);
    filter: blur(10px);
    pointer-events: none;
}
.vps-hero-visual img {
    position: relative;
    z-index: 1;
    display: block;
    width: min(100%, 465px);
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 24px 42px rgba(0, 0, 0, .28));
}

.vps-pricing-section, .vps-infrastructure-section { padding: 92px 0; }
.vps-pricing-section { background: linear-gradient(180deg, #091424, #08111f); }
.vps-section-heading { max-width: 760px; margin: 0 auto 42px; text-align:center; }
.vps-section-heading-left { margin-left: 0; text-align: left; }
.vps-section-heading h2 { margin-bottom: 15px; color:#fff; font-size:clamp(31px,4vw,45px); font-weight:800; letter-spacing:-.03em; }
.vps-section-heading p { margin-bottom:0; color:#97a7bf; font-size:15px; line-height:1.7; }

.vps-plans-slider-shell {
    --vps-slider-shell-width: 1186px;
    position: relative;
    width: min(100%, var(--vps-slider-shell-width));
    margin: 0 auto;
    padding: 0 52px;
}
.vps-plans-grid {
    position: relative;
    z-index: 1;
    display: flex;
    gap: 16px;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    overscroll-behavior-inline: contain;
    cursor: grab;
    user-select: none;
    touch-action: pan-y;
}
.vps-plans-grid.is-dragging {
    cursor: grabbing;
    scroll-behavior: auto;
}
.vps-plans-grid .vps-plan-card,
.vps-plans-grid .vps-plan-card * {
    user-select: none;
}
.vps-plans-grid::-webkit-scrollbar { display:none; }
.vps-plan-card { position:relative; display:flex; flex:0 0 min(350px, calc(100vw - 48px)); flex-direction:column; width:100%; max-width:350px; min-width:0; scroll-snap-align:start; padding:20px 22px; border:1px solid var(--vps-border); border-radius:16px; background:linear-gradient(180deg,rgba(19,32,54,.92),rgba(11,20,35,.92)); box-shadow:0 22px 60px rgba(0,0,0,.16); }
.vps-plan-card.is-featured { border-color:rgba(100,124,255,.55); box-shadow:0 22px 70px rgba(63,73,191,.18); transform:translateY(-5px); }
.vps-plan-badge { position:absolute; top:17px; right:17px; padding:5px 9px; border-radius:999px; background:rgba(96,91,247,.17); color:#aaa8ff; font-size:10px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.vps-plan-head { padding-right:0; }
.vps-plan-head h3 { margin-bottom:9px; color:#fff; font-size:24px; font-weight:800; text-align:center; }
.vps-plan-head p { min-height:42px; margin-bottom:15px; color:#91a2ba; font-size:13px; line-height:1.6; }
.vps-plan-price { display:grid; justify-items:center; gap:6px; min-height:72px; margin-bottom:16px; text-align:center; }
.vps-plan-price-label { color:#7f91aa; font-size:12px; font-weight:700; }
.vps-plan-price-hourly { display:flex; align-items:flex-end; justify-content:center; gap:7px; }
.vps-plan-price-hourly strong { color:#fff; font-size:31px; font-weight:900; line-height:1; letter-spacing:-.025em; }
.vps-plan-price-hourly span { padding-bottom:3px; color:#7f91aa; font-size:12px; font-weight:700; }
.vps-plan-price-monthly { display:flex; align-items:baseline; justify-content:center; flex-wrap:wrap; gap:4px; color:#7f91aa; font-size:12px; font-weight:700; }
.vps-plan-price-monthly strong { color:#dce6f7; font-size:13px; font-weight:800; }
.vps-plan-divider { height:1px; margin-bottom:14px; background:linear-gradient(90deg,rgba(255,255,255,.12),transparent); }
.vps-spec-list { display:grid; gap:0; margin:0 0 18px; padding:0; list-style:none; }
.vps-spec-list li { display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; align-items:start; padding:8px 0; border-bottom:1px solid rgba(255,255,255,.055); }
.vps-spec-list li:last-child { border-bottom:0; }
.vps-spec-list span { display:flex; align-items:center; gap:7px; color:#8294ae; font-size:12px; font-weight:700; }
.vps-spec-list span i { width:14px; color:#5cc8ff; text-align:center; }
.vps-spec-list strong { color:#e8eef9; font-size:12px; font-weight:750; line-height:1.45; text-align:right; overflow-wrap:anywhere; }
.vps-plan-order { display:flex; min-height:42px; align-items:center; justify-content:center; gap:8px; margin-top:auto; border-radius:8px; background:linear-gradient(135deg,#5b55ef,#2f82f2); color:#fff !important; font-size:13px; font-weight:800; text-decoration:none !important; transition:.2s ease; }
.vps-plan-order:hover { transform:translateY(-1px); box-shadow:0 12px 28px rgba(64,92,232,.24); color:#fff !important; }
.vps-plans-slider-shell::before,
.vps-plans-slider-shell::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 2;
    width: 74px;
    pointer-events: none;
    opacity: 0;
    transition: opacity .2s ease;
}
.vps-plans-slider-shell::before {
    left: 42px;
    background: linear-gradient(90deg, #091424 0%, rgba(9,20,36,.72) 35%, rgba(9,20,36,0) 100%);
}
.vps-plans-slider-shell::after {
    right: 42px;
    background: linear-gradient(270deg, #091424 0%, rgba(9,20,36,.72) 35%, rgba(9,20,36,0) 100%);
}
.vps-plans-slider-shell.has-overflow:not(.is-at-start)::before { opacity: .88; }
.vps-plans-slider-shell.has-overflow:not(.is-at-end)::after { opacity: .88; }
.vps-slider-nav {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(111,151,214,.32);
    border-radius: 50%;
    background: rgba(18,33,58,.88);
    color: #fff;
    box-shadow: 0 12px 30px rgba(0,0,0,.26);
    cursor: pointer;
    opacity: .62;
    transform: translateY(-50%);
    backdrop-filter: blur(8px);
    transition: opacity .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}
.vps-slider-nav:hover:not(:disabled) {
    opacity: 1;
    border-color: rgba(101,192,255,.72);
    background: #193052;
    transform: translateY(-50%) scale(1.06);
}
.vps-slider-nav:disabled {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.vps-slider-prev { left: 7px; }
.vps-slider-next { right: 7px; }
.vps-plans-slider-shell.is-static .vps-slider-nav { opacity: 0; visibility: hidden; pointer-events: none; }

.vps-empty-state { padding:36px; border:1px dashed rgba(255,255,255,.14); border-radius:12px; color:#9fb0c7; text-align:center; }

.vps-infrastructure-section { background:#07101e; }
.vps-feature-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.vps-feature-grid article { padding:24px 22px; border:1px solid rgba(122,151,198,.13); border-radius:14px; background:rgba(255,255,255,.025); }
.vps-feature-icon { display:grid; width:42px; height:42px; place-items:center; margin-bottom:16px; border-radius:10px; background:linear-gradient(135deg,rgba(83,88,239,.22),rgba(46,175,244,.15)); color:#68c9ff; font-size:17px; }
.vps-feature-grid h3 { margin-bottom:10px; color:#f8faff; font-size:17px; font-weight:800; }
.vps-feature-grid p { margin-bottom:0; color:#8fa0b8; font-size:13px; line-height:1.7; }


@media (max-width: 991px) {
    .vps-hero { padding-top: 145px; }
    .vps-hero-card { margin: 0 auto; }
    .vps-plans-slider-shell { padding:0 48px; }
    .vps-plan-card.is-featured { transform:none; }
    .vps-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 680px) {
    .vps-hero { padding: 128px 0 70px; }
    .vps-hero h1 { font-size: 34px; }
    .vps-hero-lead { font-size: 15px; }
    .vps-hero-actions, .vps-btn { width:100%; }
    .vps-pricing-section, .vps-infrastructure-section { padding:68px 0; }
    .vps-plans-slider-shell {
        width: 100vw;
        max-width: none;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding: 0 48px;
        box-sizing: border-box;
    }
    .vps-plans-slider-shell::before { left: 38px; width: 52px; }
    .vps-plans-slider-shell::after { right: 38px; width: 52px; }
    .vps-slider-prev { left: 6px; }
    .vps-slider-next { right: 6px; }
    .vps-feature-grid { grid-template-columns:1fr; }
    .vps-plan-card { flex-basis:calc(100vw - 112px); max-width:none; padding:20px; }
    .vps-slider-nav { width:34px; height:34px; }
    .vps-spec-list li { grid-template-columns:96px minmax(0,1fr); }
}

/* Professional content expansion v10 */
.vps-trust-section {
    position: relative;
    z-index: 2;
    padding: 0 0 72px;
    background: linear-gradient(180deg, #091424, #091424);
}
.vps-trust-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(120, 151, 203, .15);
    border-radius: 14px;
    background: rgba(255, 255, 255, .025);
}
.vps-trust-item {
    display: flex;
    min-height: 88px;
    align-items: center;
    gap: 12px;
    padding: 18px 20px;
    border-right: 1px solid rgba(255, 255, 255, .065);
}
.vps-trust-item:last-child { border-right: 0; }
.vps-trust-item > i { color: #58c9ff; font-size: 18px; }
.vps-trust-item div { display: grid; gap: 3px; min-width: 0; }
.vps-trust-item strong { color: #fff; font-size: 15px; font-weight: 850; line-height: 1.25; }
.vps-trust-item span { color: #8294ae; font-size: 11px; font-weight: 700; }

.vps-platform-section {
    padding: 92px 0;
    background: #07101e;
}
.vps-platform-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
    gap: 56px;
    align-items: center;
}
.vps-platform-copy .vps-section-heading { margin-bottom: 24px; }
.vps-platform-points { display: grid; gap: 11px; }
.vps-platform-points > div {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #a3b1c7;
    font-size: 14px;
    line-height: 1.6;
}
.vps-platform-points i { margin-top: 4px; color: #5ee6ab; font-size: 12px; }
.vps-platform-visual {
    display: flex;
    min-height: 390px;
    align-items: center;
    justify-content: center;
    position: relative;
}
.vps-platform-visual::before {
    content: "";
    position: absolute;
    width: 72%;
    height: 72%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(28, 139, 255, .16) 0%, rgba(52, 88, 255, .07) 42%, transparent 72%);
    filter: blur(18px);
    pointer-events: none;
}
.vps-platform-visual img {
    position: relative;
    z-index: 1;
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 440px;
    object-fit: contain;
    filter: drop-shadow(0 24px 45px rgba(0, 0, 0, .36));
}

.vps-feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.vps-feature-grid article { min-height: 190px; }

.vps-usecases-section {
    padding: 92px 0;
    background: linear-gradient(180deg, #091424, #08111f);
}
.vps-usecase-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.vps-usecase-grid article {
    display: flex;
    gap: 18px;
    padding: 24px;
    border: 1px solid rgba(123, 153, 202, .14);
    border-radius: 14px;
    background: rgba(255, 255, 255, .025);
}
.vps-usecase-icon {
    display: grid;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    place-items: center;
    border-radius: 11px;
    background: linear-gradient(135deg, rgba(83, 88, 239, .22), rgba(46, 175, 244, .15));
    color: #68c9ff;
    font-size: 18px;
}
.vps-usecase-grid article > div:last-child > span {
    display: inline-block;
    margin-bottom: 6px;
    color: #5cc8ff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
}
.vps-usecase-grid h3 { margin-bottom: 8px; color: #fff; font-size: 17px; font-weight: 800; }
.vps-usecase-grid p { margin-bottom: 0; color: #8fa0b8; font-size: 13px; line-height: 1.7; }

.vps-billing-section {
    padding: 92px 0;
    background: #07101e;
}
.vps-billing-layout {
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    gap: 48px;
    align-items: center;
}
.vps-billing-layout .vps-section-heading { margin-bottom: 0; }
.vps-billing-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.vps-billing-cards article {
    padding: 24px;
    border: 1px solid rgba(119, 151, 206, .16);
    border-radius: 14px;
    background: linear-gradient(160deg, rgba(21, 34, 57, .85), rgba(10, 19, 33, .9));
}
.vps-billing-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    margin-bottom: 16px;
    border-radius: 10px;
    background: rgba(77, 116, 255, .13);
    color: #78d7ff;
}
.vps-billing-cards h3 { margin-bottom: 8px; color: #fff; font-size: 18px; font-weight: 800; }
.vps-billing-cards p { margin-bottom: 0; color: #8fa0b8; font-size: 13px; line-height: 1.7; }

.vps-steps-section {
    padding: 92px 0;
    background: linear-gradient(180deg, #08111f, #07101e);
}
.vps-steps-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}
.vps-steps-grid article {
    display: flex;
    gap: 16px;
    padding: 24px;
    border-top: 1px solid rgba(96, 143, 231, .35);
    border-right: 1px solid rgba(255,255,255,.07);
    border-bottom: 1px solid rgba(255,255,255,.07);
    border-left: 1px solid rgba(255,255,255,.07);
    border-radius: 14px;
    background: rgba(255, 255, 255, .022);
}
.vps-steps-grid article > strong {
    color: #5ecaff;
    font-size: 21px;
    font-weight: 900;
    letter-spacing: -.03em;
}
.vps-steps-grid h3 { margin-bottom: 7px; color: #fff; font-size: 17px; font-weight: 800; }
.vps-steps-grid p { margin-bottom: 0; color: #8fa0b8; font-size: 13px; line-height: 1.65; }

@media (max-width: 991px) {
    .vps-trust-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .vps-trust-item:nth-child(3) { border-right: 0; }
    .vps-trust-item:nth-child(-n+3) { border-bottom: 1px solid rgba(255,255,255,.065); }
    .vps-platform-layout, .vps-billing-layout { grid-template-columns: 1fr; gap: 32px; }
    .vps-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .vps-steps-grid { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
    .vps-trust-section { padding-bottom: 54px; }
    .vps-trust-grid { grid-template-columns: 1fr 1fr; }
    .vps-trust-item { min-height: 78px; padding: 15px; border-bottom: 1px solid rgba(255,255,255,.065); }
    .vps-trust-item:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.065); }
    .vps-trust-item:nth-child(even) { border-right: 0; }
    .vps-trust-item:last-child { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
    .vps-trust-item strong { font-size: 13px; }
    .vps-platform-section, .vps-usecases-section, .vps-billing-section, .vps-steps-section { padding: 68px 0; }
    .vps-feature-grid, .vps-usecase-grid, .vps-billing-cards { grid-template-columns: 1fr; }
    .vps-feature-grid article { min-height: auto; }
    .vps-usecase-grid article { padding: 20px; }
    .vps-platform-visual { min-height: 330px; }
    .vps-platform-visual img { max-height: 380px; }
}

/* FAQ v13 - flat style, isolated from the rest of the page */
.vps-faq-section {
    padding: 88px 0 96px;
    background: #06101d;
    border-top: 1px solid rgba(255,255,255,.055);
}
.vps-faq-section .vps-section-heading {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 34px;
    text-align: center;
}
.vps-faq-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 34px;
    max-width: 1120px;
    margin: 0 auto;
}
.vps-faq-item {
    margin: 0;
    border: 0;
    border-top: 1px solid rgba(132,161,209,.18);
    border-radius: 0;
    background: transparent;
}
.vps-faq-item:last-child {
    border-bottom: 1px solid rgba(132,161,209,.18);
}
.vps-faq-item summary {
    display: flex;
    min-height: 68px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 0;
    color: #f4f7ff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.45;
    cursor: pointer;
    list-style: none;
}
.vps-faq-item summary::-webkit-details-marker { display: none; }
.vps-faq-item summary i {
    display: grid;
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    place-items: center;
    border: 1px solid rgba(111,151,214,.22);
    border-radius: 50%;
    color: #65cfff;
    font-size: 12px;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
}
.vps-faq-item[open] summary i {
    transform: rotate(45deg);
    border-color: rgba(101,207,255,.42);
    background: rgba(101,207,255,.07);
}
.vps-faq-answer { padding: 0 54px 20px 0; }
.vps-faq-answer p {
    max-width: 820px;
    margin: 0;
    color: #91a3bc;
    font-size: 13px;
    line-height: 1.75;
}
@media (max-width: 680px) {
    .vps-faq-section { padding: 68px 0 74px; }
    .vps-faq-section .vps-section-heading { margin-bottom: 24px; text-align: left; }
    .vps-faq-list { grid-template-columns: 1fr; gap: 0; }
    .vps-faq-item { border-top: 1px solid rgba(132,161,209,.18); }
    .vps-faq-item summary { min-height: 62px; padding: 16px 0; gap: 14px; font-size: 13px; }
    .vps-faq-item summary i { width: 30px; height: 30px; flex-basis: 30px; }
    .vps-faq-answer { padding: 0 44px 17px 0; }
    .vps-platform-visual { min-height: 280px; }
    .vps-platform-visual img { max-height: 330px; }
}

@media (max-width: 991px) {
    .vps-hero-visual { min-height: 360px; margin-top: 8px; }
    .vps-hero-visual img { width: min(88vw, 430px); }
}
@media (max-width: 680px) {
    .vps-hero-visual { min-height: 300px; margin-top: 4px; }
    .vps-hero-visual img { width: min(92vw, 340px); }
}

/* VPS product-family switcher v17 */
.vps-family-tabs {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: -10px auto 34px;
}
.vps-family-tab {
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid rgba(118, 150, 204, .22);
    border-radius: 10px;
    background: rgba(15, 28, 49, .78);
    color: #9eb0c9;
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
    transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.vps-family-tab:hover {
    transform: translateY(-1px);
    border-color: rgba(92, 200, 255, .42);
    color: #fff;
}
.vps-family-tab.is-active {
    border-color: rgba(94, 138, 255, .7);
    background: linear-gradient(135deg, #5754ef, #2f82f2);
    color: #fff;
    box-shadow: 0 10px 26px rgba(56, 94, 226, .22);
}
.vps-plan-card[hidden] { display: none !important; }
.vps-plans-slider-shell[hidden] { display: none !important; }
.vps-family-empty {
    max-width: 720px;
    margin: 0 auto;
    padding: 30px 24px;
    border: 1px dashed rgba(122, 154, 206, .22);
    border-radius: 14px;
    background: rgba(255, 255, 255, .018);
    color: #91a3bc;
    font-size: 14px;
    text-align: center;
}
.vps-family-empty strong { color: #fff; }

@media (max-width: 680px) {
    .vps-family-tabs {
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 8px;
        margin: -4px -12px 28px;
        padding: 0 12px 4px;
        overflow-x: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    .vps-family-tabs::-webkit-scrollbar { display: none; }
    .vps-family-tab {
        flex: 0 0 auto;
        min-height: 42px;
        padding: 0 15px;
        font-size: 12px;
    }
}

/* VPS family panel rendering fix v25 */
.vps-family-panel[hidden] { display: none !important; }
.vps-family-panel { width: 100%; }
