/* CubixServ V3. Public storefront only; no control panel or commerce logic. */
#cubix-site {
  --cx-ink:#173140; --cx-muted:#49616f; --cx-brand:#086f78;
  --cx-navy:#0b2230; --cx-soft:#edf6f7; --cx-line:#d9e5eb;
  --v3-paper:#f4f8fa; --v3-accent:#20b9bb; --v3-radius:14px;
  --v3-space-1:4px; --v3-space-2:8px; --v3-space-3:12px; --v3-space-4:16px;
  --v3-space-6:24px; --v3-space-8:32px; --v3-space-12:48px;
  --v3-space-16:64px; --v3-space-20:80px;
  background:#fff; color:var(--cx-ink); font-size:16px; line-height:1.7;
}
#cubix-site *, #cubix-site *::before, #cubix-site *::after { box-sizing:border-box }
#cubix-site :is(.container,.cs-wrap) { width:calc(100% - 64px); max-width:1248px }
#cubix-site :is(h1,h2,h3,h4) { letter-spacing:-.035em; text-wrap:pretty }
#cubix-site main h1 { font-size:clamp(32px,3.6vw,52px); line-height:1.14 }
#cubix-site main h2 { font-size:clamp(27px,2.6vw,36px); line-height:1.25 }
#cubix-site main h3 { line-height:1.35 }
#cubix-site main p { font-size:16px; line-height:1.75 }
#cubix-site :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #087883; outline-offset:4px }
#cubix-site :is(.btn,.he-button,.kvh-primary,.fhl-primary,.mhl-primary,.vgh-primary) {
  min-height:48px; padding:12px 22px; border-radius:9px; font-size:15px;
  font-weight:700; line-height:1.5; transition:background .16s,border-color .16s,box-shadow .16s;
}
#cubix-site :is(.primary-solid-btn,.kvh-primary,.fhl-primary,.mhl-primary,.vgh-primary) {
  background:var(--cx-brand); border-color:var(--cx-brand); color:#fff;
  box-shadow:0 3px 8px #0b22300b;
}
#cubix-site :is(.primary-solid-btn,.kvh-primary,.fhl-primary,.mhl-primary,.vgh-primary):hover {
  background:#075a63; border-color:#075a63; color:#fff; transform:none;
}
#cubix-site :is(button,.btn):disabled { cursor:not-allowed; box-shadow:none }
#cubix-site :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]),select,textarea) {
  font-size:16px; min-height:46px; border-color:#b9cdd8; border-radius:8px;
}
/* Navigation: six content-sized panels, one interaction model. */
#cubix-site .cs-utility { background:var(--cx-navy); color:#d3e3eb; min-height:32px }
#cubix-site .cs-utility a { color:#d3e3eb; font-size:12px }
#cubix-site #cs-site-header { position:sticky; top:0; width:100%; margin:0; border-radius:0; z-index:150; background:#fff!important }
#cubix-site #cs-site-header .cs-nav-shell { min-height:80px; gap:20px; position:static }
#cubix-site #cs-site-header .cs-logo strong { font-size:26px }
#cubix-site #cs-site-header .cs-dropdown>summary { min-height:44px; font-size:14px; padding:12px 10px }
#cubix-site #cs-site-header .cs-dropdown>summary::after { display:none }
#cubix-site #cs-site-header .cs-nav-actions { gap:12px; padding-inline-start:16px }
#cubix-site #cs-site-header .cs-client { min-height:46px; padding:11px 18px; font-size:14px; white-space:nowrap }
#cubix-site #cs-site-header .cs-panel { border-radius:14px; border:1px solid var(--cx-line); box-shadow:0 18px 48px #0b223024; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; animation:v3-menu-in .16s ease-out }
#cubix-site #cs-site-header .cs-panel::before { display:none }
#cubix-site #cs-site-header .cs-panel-layout { display:block; min-height:0 }
#cubix-site #cs-site-header .v3-menu-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 24px 18px; border-bottom:1px solid var(--cx-line) }
#cubix-site #cs-site-header .v3-menu-heading h2 { margin:0; font-size:22px; color:var(--cx-ink) }
#cubix-site #cs-site-header .v3-menu-heading a { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:14px; color:var(--cx-brand); font-weight:700 }
#cubix-site #cs-site-header .cs-service-links { display:grid; grid-template-columns:1fr; gap:4px; padding:12px }
#cubix-site #cs-site-header .cs-service-link { display:flex; align-items:center; min-height:84px; padding:16px!important; gap:14px; background:#fff; border:1px solid transparent; border-radius:10px; flex-direction:row; text-decoration:none }
#cubix-site #cs-site-header .cs-service-copy { min-width:0; flex:1 }
#cubix-site #cs-site-header .cs-service-copy strong { display:block; font-size:16px; line-height:1.4; margin-bottom:4px; font-weight:750 }
#cubix-site #cs-site-header .cs-service-copy small { display:block; font-size:14px; color:var(--cx-muted); line-height:1.55; margin:0; overflow-wrap:anywhere }
#cubix-site #cs-site-header .cs-service-icon { flex:0 0 42px; width:42px; height:42px; border:1px solid #d0e6e8; border-radius:10px; background:var(--cx-soft); color:var(--cx-brand); margin:0 }
#cubix-site #cs-site-header .cs-item-arrow { display:block; color:var(--cx-brand); flex:none; margin-inline-start:auto }
#cubix-site #cs-site-header .cs-service-link:hover { background:var(--v3-paper); border-color:var(--cx-line) }
#cubix-site #cs-site-header .cs-panel-company .cs-service-links { grid-template-columns:1fr 1fr }
#cubix-site #cs-site-header .cs-panel-company .cs-service-link { min-height:70px }
#cubix-site #cs-site-header .cs-panel-company .cs-service-copy small { font-size:13px }
#cubix-site #cs-site-header .v3-security-columns { display:grid; grid-template-columns:1.15fr 1fr; gap:0 }
#cubix-site #cs-site-header .v3-security-column { padding:16px 10px }
#cubix-site #cs-site-header .v3-security-column:last-child { background:var(--v3-paper); border-inline-start:1px solid var(--cx-line) }
#cubix-site #cs-site-header .v3-security-column h3 { font-size:14px; color:var(--cx-muted); margin:0; padding:6px 18px 10px; letter-spacing:.02em }
#cubix-site #cs-site-header .v3-security-column .cs-service-links { padding:0 }
#cubix-site #cs-site-header .v3-security-column .cs-service-link { background:transparent; min-height:68px }
#cubix-site #cs-site-header .v3-security-column .cs-service-copy strong { font-size:15px }
#cubix-site #cs-site-header .v3-partner-note { margin:0; padding:16px 24px; background:var(--v3-paper); border-top:1px solid var(--cx-line); font-size:14px; line-height:1.6; color:var(--cx-muted) }
#cubix-site #cs-site-header .ci-provider-domain { display:block; font-size:13px; color:var(--cx-brand); margin-top:4px }
#cubix-site #cs-site-header .cs-game-directory { min-width:0 }
#cubix-site #cs-site-header .cs-nav-game-tools { display:grid; grid-template-columns:1fr auto; align-items:center; gap:0 16px; padding:16px 24px 4px; margin:0 }
#cubix-site #cs-site-header .cs-nav-game-tools label { grid-column:1/-1; margin:0 0 8px; font-size:14px; font-weight:650; color:var(--cx-ink) }
#cubix-site #cs-site-header .cs-nav-game-field { display:flex; align-items:center; min-height:48px; border:1px solid #a8c4cd; background:var(--v3-paper); box-shadow:none; padding-inline:14px; gap:10px }
#cubix-site #cs-site-header .cs-nav-game-field:focus-within { outline:2px solid var(--cx-brand); outline-offset:2px }
#cubix-site #cs-site-header .cs-nav-game-field input { width:100%; min-width:0; font-size:16px; background:transparent; border:0; outline:none; box-shadow:none; padding:10px 0 }
#cubix-site #cs-site-header .cs-nav-game-field input::placeholder { color:#566f7b; opacity:1 }
#cubix-site #cs-site-header .cs-nav-game-field>svg { position:static; flex:0 0 20px; width:20px; height:20px; transform:none; color:var(--cx-brand) }
#cubix-site #cs-site-header .cs-nav-game-field input { padding-inline:0!important }
#cubix-site #cs-site-header .cs-nav-game-field input::placeholder { color:#49616f!important; opacity:1!important }
#cubix-site #cs-site-header .cs-nav-game-count { margin:0; font-size:13px; white-space:nowrap; color:var(--cx-muted) }
#cubix-site #cs-site-header .cs-game-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; padding:14px 18px 18px; overflow:visible }
#cubix-site #cs-site-header .cs-game-link { display:flex; gap:11px; align-items:center; min-height:68px; padding:8px!important; border-radius:9px }
#cubix-site #cs-site-header .cs-game-art { width:56px; height:44px; flex:0 0 56px; border-radius:7px }
#cubix-site #cs-site-header .cs-game-art img { width:56px; height:44px; object-fit:cover }
#cubix-site #cs-site-header .cs-game-name { font-size:14px; font-weight:700; line-height:1.4; white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere }
#cubix-site #cs-site-header .cs-game-arrow { display:none }
#cubix-site #cs-site-header .cs-nav-game-empty { padding:24px; text-align:center; font-size:15px; color:var(--cx-muted) }
#cubix-site #cs-site-header [hidden] { display:none!important }
#cubix-site #cs-site-header .cs-menu-back { display:none!important }
@media(min-width:1100px) {
  #cubix-site #cs-site-header .cs-dropdown { position:static }
  #cubix-site #cs-site-header .cs-panel { position:absolute; inset-inline-start:50%; inset-inline-end:auto; top:calc(100% + 8px); transform:translateX(-50%); width:min(calc(100vw - 48px),var(--v3-menu-width,560px)); max-height:calc(100dvh - var(--v3-header-bottom,112px) - 28px) }
  #cubix-site #cs-site-header .cs-panel-gaming { --v3-menu-width:1120px }
  #cubix-site #cs-site-header .cs-panel-vps { --v3-menu-width:560px }
  #cubix-site #cs-site-header .cs-panel-web { --v3-menu-width:520px }
  #cubix-site #cs-site-header .cs-panel-infrastructure { --v3-menu-width:460px }
  #cubix-site #cs-site-header .cs-panel-security { --v3-menu-width:860px }
  #cubix-site #cs-site-header .cs-panel-company { --v3-menu-width:840px }
  html[dir=rtl] #cubix-site #cs-site-header .cs-panel { transform:translateX(50%) }
}
/* Shared content surfaces. Light pages with deliberate dark landmarks. */
#cubix-site :is(.he-games,.he-vps,.he-additional,.he-faq,.ha-section) { padding-block:64px }
#cubix-site .he-heading { margin-bottom:28px; align-items:end; gap:24px }
#cubix-site .he-heading p { max-width:52ch; font-size:16px; line-height:1.7; color:var(--cx-muted) }
#cubix-site .he-heading h2 { margin:8px 0 12px }
#cubix-site .he-kicker { font-size:13px; font-weight:700; letter-spacing:.06em }
#cubix-site .he-text-link { font-size:15px; line-height:1.5 }
#cubix-site .he-hero-signature { background:var(--cx-navy); padding:48px 0 0 }
#cubix-site .he-hero-signature .he-hero-layout { min-height:390px; gap:40px; padding-bottom:36px; grid-template-columns:1.1fr 1fr }
#cubix-site .he-hero-signature h1 { margin:18px 0 20px; max-width:16ch; font-size:clamp(36px,4.2vw,58px); line-height:1.13 }
#cubix-site .he-hero-signature h1 span { color:#80e0d7 }
#cubix-site .he-hero-signature .he-lead { max-width:54ch; font-size:17px; line-height:1.75; color:#d2e1e8; margin-bottom:24px }
#cubix-site .he-hero-signature .he-actions { margin-top:20px; gap:24px }
#cubix-site .he-hero-signature .he-button { background:#80e0d7; color:#0b303c; border-color:#80e0d7; font-size:15px }
#cubix-site .he-hero-signature .he-actions .he-text-link { color:#e1eff3; font-size:15px }
#cubix-site .he-hero-signature .he-proof { margin-top:24px; gap:20px }
#cubix-site .he-hero-signature .he-proof a { color:#c8dce4; font-size:13px }
#cubix-site .he-signature-scene { min-height:330px; height:360px }
#cubix-site .he-signature-coordinate { display:none }
#cubix-site .he-hero-signature .he-pathways { margin-top:0; background:#15394a; border:1px solid #315160; border-bottom:0; border-radius:14px 14px 0 0; overflow:hidden }
#cubix-site .he-hero-signature .he-pathway { padding:22px; gap:16px; border-color:#315160; min-height:146px }
#cubix-site .he-pathway-content strong { font-size:17px }
#cubix-site .he-pathway-kicker { font-size:12px; color:#b5d0dc }
#cubix-site .he-pathway-detail { font-size:13px; color:#c5dbe5 }
#cubix-site .he-pathway-price { font-size:13px; color:#d5e7ee }
#cubix-site .he-pathway-price strong { font-size:24px }
#cubix-site .ha-section { background:var(--v3-paper); border-bottom:1px solid var(--cx-line) }
#cubix-site .ha-section header { max-width:720px; margin:0 0 28px }
#cubix-site .ha-section header p { font-size:16px; color:var(--cx-muted) }
#cubix-site .ha-paths { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px }
#cubix-site .ha-paths>a { display:flex; align-items:flex-start; flex-direction:column; gap:14px; padding:24px; background:#fff; border:1px solid var(--cx-line); border-radius:12px; min-height:156px; font-size:17px; color:var(--cx-ink); box-shadow:0 4px 16px #0b223005 }
#cubix-site .ha-paths>a>span:first-child { color:var(--cx-brand); margin:0 }
#cubix-site .ha-paths>a>span:last-child { align-self:flex-end; margin-top:auto; color:var(--cx-brand) }
#cubix-site .ha-paths>a:hover { border-color:#7caeb4; box-shadow:0 6px 20px #0b22300d; transform:none }
#cubix-site .v3-linux-windows { display:flex; gap:14px; margin-top:auto; font-size:14px; font-weight:700 }
#cubix-site .v3-linux-windows a { min-height:36px; display:inline-flex; align-items:center; color:var(--cx-brand); text-decoration:underline; text-underline-offset:4px }
#cubix-site .ha-paths .v3-hosting-choice { display:flex; flex-direction:column; align-items:flex-start; gap:14px; padding:24px; background:#fff; border:1px solid var(--cx-line); border-radius:12px; min-height:220px; color:var(--cx-ink); text-decoration:none }
#cubix-site .v3-hosting-choice h3 { font-size:20px; line-height:1.4; margin:0 }
#cubix-site .v3-hosting-choice p { font-size:15px; line-height:1.6; margin:0; color:var(--cx-muted) }
#cubix-site .v3-choice-icon { color:var(--cx-brand) }
#cubix-site .v3-choice-arrow { margin-top:auto; align-self:flex-end; color:var(--cx-brand) }
#cubix-site .ha-paths>.v3-hosting-choice:last-child { grid-column:auto; flex-direction:column; align-items:flex-start }
#cubix-site .ha-paths .v3-linux-windows { display:flex; flex-wrap:wrap; gap:8px 16px }
#cubix-site .ha-paths .v3-linux-windows a { display:inline-flex; flex-direction:row; align-items:center; gap:6px; width:auto; padding:6px 0; min-height:36px; background:none; border:0; border-radius:0; box-shadow:none; font-size:14px; white-space:nowrap; color:var(--cx-brand) }
#cubix-site .ha-games { display:flex; flex-wrap:wrap; margin-top:20px; gap:8px 20px }
#cubix-site .ha-games a { font-size:14px; padding:6px 0 }
#cubix-site .hm-play-card { border:1px solid var(--cx-line); border-radius:14px; overflow:hidden; background:#fff; box-shadow:0 5px 18px #0b223008 }
#cubix-site .hm-play-card:hover { border-color:#8fb4be; box-shadow:0 10px 28px #0b223012; transform:translateY(-3px) }
#cubix-site .hm-play-visual { aspect-ratio:16/9; overflow:hidden }
#cubix-site .hm-play-title h3 { font-size:25px; letter-spacing:-.025em }
#cubix-site .hm-play-body { padding:22px }
#cubix-site .hm-play-description { font-size:16px; color:var(--cx-muted); min-height:0; margin-bottom:16px }
#cubix-site .hm-play-panel { font-size:14px; color:var(--cx-muted) }
#cubix-site .hm-play-buy { margin-top:20px; gap:12px; align-items:end }
#cubix-site .hm-play-price { font-size:13px; line-height:1.7; color:var(--cx-muted) }
#cubix-site .hm-play-price strong { font-size:28px; color:var(--cx-ink) }
#cubix-site .hm-play-cta { font-size:14px; color:var(--cx-brand); font-weight:750 }
#cubix-site .hm-play-protection { padding:12px 22px; background:var(--v3-paper); border-color:var(--cx-line); font-size:13px; color:var(--cx-muted) }
#cubix-site .hm-discovery { padding:20px; background:var(--v3-paper); border:1px solid var(--cx-line); border-radius:12px; margin-bottom:24px }
#cubix-site .he-vps { background:var(--v3-paper) }
#cubix-site .he-vps-list { border:1px solid var(--cx-line); border-radius:14px; overflow:hidden; background:#fff }
#cubix-site .he-vps-row { padding:24px; gap:24px }
#cubix-site .he-vps-description h3 { font-size:21px }
#cubix-site .he-vps-description p { font-size:15px; color:var(--cx-muted); margin-bottom:0 }
#cubix-site .he-vps-platform { font-size:14px }
#cubix-site .he-vps-platform small { font-size:13px }
#cubix-site .he-vps-note { font-size:15px; color:var(--cx-muted); max-width:90ch }
#cubix-site .he-network { background:var(--cx-navy); color:#e9f3f7; padding-block:64px }
#cubix-site .he-network :is(h2,h3) { color:#f4faff }
#cubix-site .he-network p { color:#c6dbe5; font-size:16px }
#cubix-site .he-network .he-kicker { color:#80e0d7 }
#cubix-site .he-network .he-text-link { color:#96e4df }
#cubix-site .he-network .he-partner { padding:28px; background:#15394a; border:1px solid #315160; border-radius:14px }
#cubix-site .he-additional-grid { gap:32px }
#cubix-site .he-additional-grid h2 { font-size:25px }
#cubix-site .he-additional-grid p { font-size:16px; line-height:1.7; color:var(--cx-muted) }
/* One disclosure marker, consistent focus and useful text sizes. */
#cubix-site main :is(.hm-faq-list,.cs-faq-list,.os-advanced-filters,.sc-faq,.ge-faq,.gex-faq,.vp-faq,.vse-faq,.ft-faq,.wb-faq) summary { list-style:none; cursor:pointer }
#cubix-site main summary::-webkit-details-marker { display:none }
#cubix-site main summary::marker { content:'' }
#cubix-site main details>summary:has(>[aria-hidden=true])::after { content:none; display:none }
#cubix-site main :is(.hm-faq-list,.cs-faq-list,.sc-faq,.ge-faq,.gex-faq,.vp-faq,.vse-faq,.ft-faq,.wb-faq) summary { padding:20px 0; font-size:17px; line-height:1.5; color:var(--cx-ink); gap:20px }
#cubix-site main :is(.hm-faq-list,.cs-faq-list,.sc-faq,.ge-faq,.gex-faq,.vp-faq,.vse-faq,.ft-faq,.wb-faq) details { border-color:var(--cx-line) }
#cubix-site main :is(.hm-faq-list,.cs-faq-list,.sc-faq,.ge-faq,.gex-faq,.vp-faq,.vse-faq,.ft-faq,.wb-faq) details p { font-size:16px; line-height:1.8; color:var(--cx-muted); padding-bottom:18px }
#cubix-site .he-faq { background:var(--v3-paper) }
#cubix-site .he-faq-layout { grid-template-columns:1fr 2fr; gap:48px }
#cubix-site .he-faq .hm-faq-list { display:grid; gap:10px }
#cubix-site .he-faq .hm-faq-list details { padding:0; border:1px solid var(--cx-line); border-radius:10px; background:#fff; overflow:hidden }
#cubix-site .he-faq .hm-faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px; min-height:72px; overflow-wrap:anywhere }
#cubix-site .he-faq .hm-faq-list summary>span { display:inline-flex; align-items:center; justify-content:center; flex:0 0 28px; width:28px; height:28px; border:1px solid #c8dfe3; border-radius:50%; color:var(--cx-brand); background:var(--cx-soft); font-size:18px; line-height:1; transition:transform .16s }
#cubix-site .he-faq .hm-faq-list details[open] summary>span { transform:rotate(45deg) }
#cubix-site .he-faq .hm-faq-list details p { padding:0 20px 20px; margin:0 }
/* Catalogue cards, filters and comparison retain their original data/actions. */
#cubix-site .cs-commercial { padding-block:56px; background:var(--v3-paper) }
#cubix-site .cs-commercial-heading { margin-bottom:24px }
#cubix-site .cs-commercial-heading p { font-size:16px; color:var(--cx-muted) }
#cubix-site .cs-commercial-grid { gap:20px }
#cubix-site .cs-commercial-card { border-radius:14px; border:1px solid #cbdde5; box-shadow:0 4px 15px #0b223007; overflow:hidden }
#cubix-site .cs-commercial-card:hover { transform:translateY(-3px); box-shadow:0 10px 25px #0b223013; border-color:#75a5b1 }
#cubix-site .cs-commercial-card-heading { padding:22px 24px; background:#fff; border-bottom:1px solid var(--cx-line) }
#cubix-site .cs-commercial-card-heading h3 { font-size:21px; color:var(--cx-ink); margin:0 }
#cubix-site .cs-commercial-prices { padding:22px 24px 16px }
#cubix-site .cs-commercial-prices strong { font-size:32px; color:var(--cx-ink) }
#cubix-site .cs-commercial-prices :is(.cs-commercial-renewal,.vp-equivalent) strong { font-size:16px; font-weight:750 }
#cubix-site .cs-commercial-prices :is(small,p) { font-size:14px; line-height:1.6 }
#cubix-site .cs-commercial-specs { margin-inline:24px; gap:10px }
#cubix-site .cs-commercial-specs :is(dt,span,small) { font-size:14px; color:var(--cx-muted) }
#cubix-site .cs-commercial-specs dd { font-size:17px; color:var(--cx-ink) }
#cubix-site :is(.cs-commercial-host,.cs-commercial-warning,.cs-commercial-license) { font-size:14px; line-height:1.6; padding-inline:24px }
#cubix-site .cs-commercial-actions { padding:16px 24px 24px }
#cubix-site .cs-commercial-actions .btn { width:100%; justify-content:center }
#cubix-site .cs-commercial-compare-choice { font-size:14px; min-height:44px }
#cubix-site .cs-commercial-compare-bar { border-radius:10px; background:#e8f3f4; border-color:#bad5da; padding:16px 20px; font-size:15px }
#cubix-site .cs-commercial-compare-bar>span { font-weight:650; color:var(--cx-ink) }
#cubix-site .cs-commercial-compare-bar .btn:disabled { opacity:1; background:#dce6eb; border-color:#c2d3dc; color:#526975 }
#cubix-site #pricing .vpc-filter-panel { padding:24px; gap:20px; border-radius:14px }
#cubix-site #pricing .vpc-field legend { font-size:15px; margin-bottom:12px; color:var(--cx-ink) }
#cubix-site #pricing .vpc-choice>span { font-size:14px; padding:10px 16px; min-height:46px }
#cubix-site #pricing .vpc-memory { gap:8px }
#cubix-site #pricing .vpc-choice small { font-size:12px }
#cubix-site #pricing .vpc-memory .vpc-choice input:checked+span { background:var(--cx-navy); border-color:var(--cx-navy); color:#fff }
#cubix-site #pricing .vpc-advanced { padding-top:14px; margin:0; min-height:0; display:block }
#cubix-site #pricing .vpc-advanced:not([open])>.os-advanced-fields { display:none }
#cubix-site #pricing .vpc-advanced summary { display:flex; align-items:center; justify-content:space-between; min-height:44px; font-size:15px; color:var(--cx-ink); padding:0 }
#cubix-site #pricing .vpc-advanced .os-advanced-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:16px }
#cubix-site #pricing .vpc-apply { justify-self:start; margin:0; min-height:46px }
#cubix-site #pricing .vpc-product { padding:20px; border-radius:12px }
#cubix-site #pricing .vpc-product-copy small { font-size:14px }
#cubix-site :is(.fhl-hero,.mhl-hero,.kvh-hero,.vgh-hero,.gex-hero) { padding-block:48px; background:var(--v3-paper) }
#cubix-site :is(.fhl-grid,.kvh-grid,.mhl-grid,.vgh-grid,.gex-hero-grid) { gap:40px; align-items:center }
#cubix-site :is(.fhl-lead,.kvh-lead,.mhl-lead,.vgh-lead,.gex-lead) { font-size:17px; line-height:1.75; color:var(--cx-muted); max-width:58ch }
#cubix-site :is(.fhl-kicker,.kvh-eyebrow,.mhl-kicker,.vgh-eyebrow) { font-size:13px; font-weight:700 }
#cubix-site :is(.fhl-pricing,.kvh-pricing,.mhl-pricing,.vgh-pricing) { margin-block:24px }
#cubix-site :is(.fhl-pricing,.kvh-pricing,.mhl-pricing,.vgh-pricing) strong { font-size:36px }
#cubix-site :is(.fhl-pricing,.kvh-pricing,.mhl-pricing,.vgh-pricing) small { font-size:14px; color:var(--cx-muted) }
#cubix-site :is(.fhl-artwork,.kvh-visual,.mhl-visual,.vgh-visual) { border-radius:16px; overflow:hidden; box-shadow:0 12px 36px #0b223014 }
#cubix-site .fhl-artwork img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover }
#cubix-site .fhl-facts { gap:16px; margin-top:26px }
#cubix-site .fhl-facts dt { font-size:13px; color:var(--cx-muted) }
#cubix-site .fhl-facts dd { font-size:15px; color:var(--cx-ink) }
#cubix-site .fhl-protection { margin-top:16px; padding:18px; border-radius:12px; background:#fff; border:1px solid var(--cx-line) }
#cubix-site .fhl-protection small { font-size:13px; color:var(--cx-muted) }
#cubix-site :is(.cs-product-nav,.cs-page-nav,.vp-section-nav,.gex-jump-nav) { font-size:14px; background:#fff; border-color:var(--cx-line) }
#cubix-site .ge-hero { padding-block:48px; background:var(--v3-paper) }
#cubix-site .ge-hero-grid { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:40px; align-items:center }
#cubix-site .ge-lead { font-size:17px; color:var(--cx-muted); line-height:1.75; max-width:60ch }
#cubix-site .ge-starting-price { margin-block:24px; font-size:15px }
#cubix-site .ge-starting-price>strong { font-size:36px; color:var(--cx-ink) }
#cubix-site .ge-starting-price p { font-size:14px; color:var(--cx-muted) }
#cubix-site .ge-world { border-radius:16px; overflow:hidden; box-shadow:0 12px 36px #0b223014; margin:0 }
#cubix-site .ge-world img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover }
#cubix-site .ge-world figcaption { padding:16px 20px; background:var(--cx-navy); color:#dcebf0; font-size:13px }
#cubix-site .ge-primary { display:inline-flex; align-items:center; gap:24px; padding:13px 22px; background:var(--cx-brand); border-radius:9px; color:#fff; font-weight:700; font-size:15px; min-height:48px }
#cubix-site .ge-help { font-size:15px; color:var(--cx-brand) }
#cubix-site .ge-topics { font-size:14px; color:var(--cx-muted); gap:16px; margin-top:24px }
#cubix-site .ge-navigation { margin-block:24px 0; display:flex; flex-wrap:wrap; gap:8px; border:1px solid var(--cx-line); border-radius:10px; padding:8px; background:#fff }
#cubix-site .ge-navigation a { padding:10px 16px; min-height:44px; font-size:15px; color:var(--cx-brand); border-radius:6px; background:transparent }
#cubix-site .ge-navigation a:hover { background:var(--cx-soft) }
#cubix-site :is(.gx-editorial,.ge-faq,.ge-reading) { padding-block:56px }
#cubix-site .gx-story { max-width:800px; margin-bottom:28px }
#cubix-site :is(.gx-practice article,.gx-resources) { border-color:var(--cx-line); border-radius:12px; padding:24px }
#cubix-site .gx-practice h2 { font-size:24px }
#cubix-site .ge-faq { background:var(--v3-paper) }
#cubix-site .ge-faq summary { font-size:17px; padding-block:20px }
#cubix-site :is(.vg-card,.wb-card,.ft-card,.mg-card,.gd-card,.gh-card) { border-radius:14px; border-color:var(--cx-line); box-shadow:0 4px 16px #0b223006 }
#cubix-site :is(.vg-form,.nwc-form,.wb-form,.cs-contact-form) label { font-size:15px; color:var(--cx-ink) }
#cubix-site :is(.dp-hero,.wb-hero,.sp-hero,.gd-hero) { padding-block:48px }
#cubix-site :is(.dp-cases,.dp-brief,.dp-quote-section,.dp-next,.dp-faq,.wb-section,.sp-traffic,.sp-protocols,.sp-origin,.sp-setup,.sp-quote,.sp-faq) { padding-block:56px }
#cubix-site :is(.dp-hero,.wb-hero,.sp-hero,.gd-hero) p { font-size:17px; line-height:1.75 }
#cubix-site :is(.dp-case,.wb-card,.ft-directory-card,.mi-card,.gd-library-card) { border-color:var(--cx-line); border-radius:14px; box-shadow:0 4px 16px #0b223006 }
#cubix-site :is(.dp-case,.wb-card,.ft-directory-card,.mi-card,.gd-library-card) h3 { font-size:21px }
#cubix-site :is(.dp-faq,.sp-faq,.mi-faq) summary { list-style:none; font-size:17px; line-height:1.5; padding-block:20px; color:var(--cx-ink) }
#cubix-site :is(.dp-brief,.wb-brief,.mi-section,.ft-page,.cs-contact-section) :is(label,legend) { font-size:15px; line-height:1.6 }
#cubix-site :is(.dp-brief,.wb-brief,.cs-contact-section) :is(input,select,textarea) { border-color:#b9cdd8; border-radius:8px }
#cubix-site :is(.dp-brief,.wb-brief,.cs-contact-section) :is(input,select,textarea):focus-visible { outline:3px solid var(--cx-brand); outline-offset:3px }
/* Footer: a restrained contact band, readable columns and legal information. */
#cubix-site .cs-footer { background:var(--cx-navy); color:#d3e3eb; border-top:0 }
#cubix-site .cs-footer-cta { padding-block:36px; display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:center; border-bottom:1px solid #315160 }
#cubix-site .cs-footer-cta h2 { font-size:30px; line-height:1.25; margin:0; color:#fff }
#cubix-site .cs-footer-intro p { font-size:15px; color:#c5d9e2; margin:0 0 12px }
#cubix-site .cs-footer-intro>a { font-size:15px; font-weight:700; color:#80e0d7 }
#cubix-site .cs-footer-main { padding-block:40px; grid-template-columns:1.3fr repeat(4,1fr); gap:28px }
#cubix-site .cs-footer-brand p { font-size:14px; line-height:1.7; color:#c5d9e2 }
#cubix-site .cs-footer-column>summary { font-size:15px; color:#fff; font-weight:750; margin-bottom:16px }
#cubix-site .cs-footer-column ul { padding:0; margin:0; gap:12px }
#cubix-site .cs-footer-column li { margin-bottom:10px }
#cubix-site .cs-footer-column li a { font-size:14px!important; line-height:1.6; color:#c5d9e2; display:inline-block }
#cubix-site .cs-footer a:hover { color:#80e0d7 }
#cubix-site .cs-footer-bottom { border-color:#315160; padding-block:22px; gap:20px }
#cubix-site .cs-footer-bottom p { font-size:13px!important; color:#c5d9e2 }
#cubix-site .cs-payments>span { color:#c5d9e2!important; font-size:12px!important; letter-spacing:0; text-transform:none }
#cubix-site .cs-to-top { right:22px; left:auto; bottom:100px; border-color:var(--cx-line); color:var(--cx-brand) }
html[dir=rtl] #cubix-site .cs-to-top { right:auto; left:22px }
@keyframes v3-menu-in { from { opacity:0; margin-top:5px } to { opacity:1; margin-top:0 } }
@media(max-width:1240px) and (min-width:1100px) {
  #cubix-site #cs-site-header .cs-nav-shell { gap:12px }
  #cubix-site #cs-site-header .cs-dropdown>summary { font-size:13px; padding-inline:8px }
  #cubix-site #cs-site-header .cs-logo strong { font-size:23px }
  #cubix-site #cs-site-header .cs-nav-actions { padding-inline-start:10px; gap:8px }
}
@media(max-width:1099px) {
  #cubix-site #cs-site-header .cs-nav-shell { min-height:72px; flex-wrap:nowrap }
  #cubix-site #cs-site-header .cs-mobile-toggle { margin-inline-start:auto; flex:none }
  #cubix-site #cs-site-header.cs-enhanced .cs-navigation { position:fixed; inset-inline:16px; top:calc(var(--v3-header-bottom,72px) + 8px); width:auto; max-height:calc(100dvh - var(--v3-header-bottom,72px) - 24px); border-radius:12px; padding:12px; overscroll-behavior:contain; background:#fff; border:1px solid var(--cx-line); overflow:auto }
  #cubix-site #cs-site-header.cs-enhanced .cs-navigation.is-open { display:flex; flex-direction:column }
  #cubix-site #cs-site-header .cs-groups { display:block; max-height:none; overflow:visible; width:100% }
  #cubix-site #cs-site-header.cs-category-open .cs-dropdown { display:block!important }
  #cubix-site #cs-site-header .cs-dropdown { border-bottom:1px solid var(--cx-line) }
  #cubix-site #cs-site-header .cs-dropdown>summary { justify-content:flex-start; gap:12px; font-size:16px; padding:13px 10px; min-height:52px }
  #cubix-site #cs-site-header .cs-chevron { margin-inline-start:auto }
  #cubix-site #cs-site-header .cs-panel { position:static; width:100%; max-height:none; margin:4px 0 12px; border-radius:10px; box-shadow:none; background:var(--v3-paper); overflow:visible; transform:none }
  #cubix-site #cs-site-header .v3-menu-heading { padding:14px 16px; gap:12px }
  #cubix-site #cs-site-header .v3-menu-heading h2 { font-size:18px }
  #cubix-site #cs-site-header .v3-menu-heading a { font-size:13px }
  #cubix-site #cs-site-header .cs-game-links { grid-template-columns:repeat(3,minmax(0,1fr)); padding:10px; gap:4px }
  #cubix-site #cs-site-header .cs-nav-game-tools { padding:14px 14px 4px }
  #cubix-site #cs-site-header .cs-service-link { padding:14px!important; min-height:76px; background:transparent }
  #cubix-site #cs-site-header .cs-nav-actions { order:-1; padding:0 0 12px; margin:0 0 8px; width:100%; display:flex; justify-content:space-between; border:0; border-bottom:1px solid var(--cx-line) }
  #cubix-site #cs-site-header .cs-client { flex:none; max-width:none; order:1 }
  #cubix-site #cs-site-header .cs-mobile-contact { display:none }
  #cubix-site #cs-site-header:not(.cs-enhanced) { position:relative }
  #cubix-site #cs-site-header:not(.cs-enhanced) .cs-nav-shell { flex-wrap:wrap }
  #cubix-site #cs-site-header:not(.cs-enhanced) .cs-navigation { display:block; position:static; width:100%; flex:0 0 100% }
  #cubix-site .he-hero-signature .he-hero-layout { gap:24px }
  #cubix-site .he-vps-row { gap:16px }
  #cubix-site .cs-footer-main { grid-template-columns:repeat(4,minmax(0,1fr)) }
  #cubix-site .cs-footer-brand { grid-column:1/-1; display:block; margin:0; border-bottom:1px solid #315160; padding-bottom:24px }
}
@media(max-width:767px) {
  #cubix-site :is(.container,.cs-wrap) { width:calc(100% - 40px) }
  #cubix-site main h1 { font-size:clamp(30px,7.8vw,36px); line-height:1.18; overflow-wrap:anywhere }
  #cubix-site main h2 { font-size:28px }
  #cubix-site .cs-utility { display:none }
  #cubix-site #cs-site-header .cs-logo strong { font-size:24px }
  #cubix-site #cs-site-header .cx-site-mark { width:35px; height:42px; flex-basis:35px }
  #cubix-site #cs-site-header .cx-site-mark img { height:42px; width:166px }
  #cubix-site #cs-site-header .cs-nav-shell { min-height:68px }
  #cubix-site #cs-site-header .cs-game-links { grid-template-columns:repeat(2,minmax(0,1fr)) }
  #cubix-site #cs-site-header .cs-game-link { gap:8px; min-height:70px; padding:8px 5px!important }
  #cubix-site #cs-site-header .cs-game-name { font-size:13px }
  #cubix-site #cs-site-header .cs-game-art { width:40px; height:38px; flex-basis:40px }
  #cubix-site #cs-site-header .cs-game-art img { width:40px; height:38px }
  #cubix-site #cs-site-header .cs-nav-game-count { display:none }
  #cubix-site #cs-site-header .cs-nav-game-tools { grid-template-columns:1fr }
  #cubix-site #cs-site-header :is(.cs-panel-company .cs-service-links,.v3-security-columns) { grid-template-columns:1fr }
  #cubix-site #cs-site-header .v3-security-column:last-child { border-inline-start:0; border-top:1px solid var(--cx-line) }
  #cubix-site #cs-site-header .cs-service-copy strong { font-size:15px }
  #cubix-site #cs-site-header .cs-service-copy small { font-size:14px }
  #cubix-site :is(.he-games,.he-vps,.he-additional,.he-faq,.ha-section) { padding-block:40px }
  #cubix-site .he-hero-signature { padding-top:32px }
  #cubix-site .he-hero-signature .he-hero-layout { grid-template-columns:1fr; gap:12px; min-height:0; padding-bottom:24px }
  #cubix-site .he-hero-signature h1 { margin:16px 0 20px; font-size:clamp(32px,8.7vw,40px); max-width:17ch }
  #cubix-site .he-hero-signature .he-lead { font-size:16px; line-height:1.75; margin-bottom:20px }
  #cubix-site .he-hero-signature .he-actions { gap:16px; flex-wrap:wrap }
  #cubix-site .he-hero-signature .he-proof { margin-top:22px; gap:12px; flex-wrap:wrap }
  #cubix-site .he-signature-scene { height:240px; min-height:0; margin:0; width:100% }
  #cubix-site .he-hero-signature .he-signature-scene { height:220px; min-height:0; max-width:350px }
  #cubix-site .he-hero-signature .he-actions { gap:12px }
  #cubix-site .he-hero-signature .he-button { padding:12px 16px; font-size:14px; gap:16px }
  #cubix-site .he-hero-signature .he-actions .he-text-link { font-size:14px }
  #cubix-site .he-hero-signature .he-proof { display:grid; grid-template-columns:1fr 1.5fr; gap:12px; margin-top:20px }
  #cubix-site .he-hero-signature .he-proof a { font-size:12px; line-height:1.5; min-height:32px }
  #cubix-site .he-hero-signature .he-proof a svg { flex:none }
  #cubix-site .he-signature-tilt { height:100% }
  #cubix-site .he-hero-signature .he-pathways { display:grid; grid-template-columns:1fr; border-radius:12px 12px 0 0 }
  #cubix-site .he-hero-signature .he-pathway { min-height:0; padding:18px; gap:12px; grid-template-columns:auto 1fr auto }
  #cubix-site .he-pathway-content strong { font-size:16px }
  #cubix-site .he-pathway-price { grid-column:2; margin-top:4px }
  #cubix-site .he-pathway-arrow { grid-column:3; grid-row:1/3 }
  #cubix-site .ha-paths { grid-template-columns:1fr 1fr; gap:12px }
  #cubix-site .ha-paths>a { padding:18px; font-size:16px; min-height:160px }
  #cubix-site .ha-paths .v3-hosting-choice { padding:18px; min-height:220px; gap:12px }
  #cubix-site .v3-hosting-choice h3 { font-size:18px }
  #cubix-site .he-heading { display:block; margin-bottom:24px }
  #cubix-site .he-heading p { margin-top:16px }
  #cubix-site .he-game-grid { gap:20px }
  #cubix-site .he-vps-row { padding:22px; grid-template-columns:auto 1fr; gap:16px }
  #cubix-site .he-vps-platform { grid-column:2 }
  #cubix-site .he-vps-description h3 { font-size:20px }
  #cubix-site :is(.he-network-layout,.he-additional-grid,.he-faq-layout) { grid-template-columns:1fr; gap:28px }
  #cubix-site .he-network { padding-block:40px }
  #cubix-site .he-network .he-partner { padding:24px }
  #cubix-site .hm-discovery { padding:16px }
  #cubix-site .cs-commercial { padding-block:40px }
  #cubix-site .cs-commercial-grid { grid-template-columns:1fr }
  #cubix-site .cs-commercial-compare-bar { align-items:start; gap:12px }
  #cubix-site #pricing .vpc-filter-panel { padding:18px; gap:18px }
  #cubix-site #pricing .vpc-choice>span { padding-inline:12px; font-size:14px }
  #cubix-site #pricing .vpc-terms { flex-wrap:wrap }
  #cubix-site #pricing .vpc-terms .vpc-choice { flex:1 0 40% }
  #cubix-site #pricing .vpc-advanced .os-advanced-fields { grid-template-columns:1fr; gap:16px }
  #cubix-site #pricing .vpc-apply { width:100% }
  #cubix-site :is(.fhl-hero,.mhl-hero,.kvh-hero,.vgh-hero,.gex-hero) { padding-block:32px }
  #cubix-site :is(.fhl-grid,.kvh-grid,.mhl-grid,.vgh-grid,.gex-hero-grid) { grid-template-columns:1fr; gap:28px }
  #cubix-site :is(.fhl-lead,.kvh-lead,.mhl-lead,.vgh-lead,.gex-lead) { font-size:16px }
  #cubix-site .fhl-artwork img { aspect-ratio:16/10 }
  #cubix-site .ge-hero { padding-block:32px }
  #cubix-site .ge-hero-grid { grid-template-columns:1fr; gap:28px }
  #cubix-site .ge-world img { aspect-ratio:16/10 }
  #cubix-site :is(.gx-editorial,.ge-faq,.ge-reading) { padding-block:40px }
  #cubix-site :is(.dp-hero,.wb-hero,.sp-hero,.gd-hero) { padding-block:32px }
  #cubix-site :is(.dp-cases,.dp-brief,.dp-quote-section,.dp-next,.dp-faq,.wb-section,.sp-traffic,.sp-protocols,.sp-origin,.sp-setup,.sp-quote,.sp-faq) { padding-block:40px }
  #cubix-site .ge-navigation { gap:4px; margin-top:16px }
  #cubix-site .ge-navigation a { padding-inline:10px; font-size:14px }
  #cubix-site .cs-footer-cta { grid-template-columns:1fr; gap:16px; padding-block:28px }
  #cubix-site .cs-footer-cta h2 { font-size:28px }
  #cubix-site .cs-footer-main { grid-template-columns:1fr; gap:0; padding-block:28px }
  #cubix-site .cs-footer-column { border-bottom:1px solid #315160 }
  #cubix-site .cs-footer-column>summary { padding:18px 0; margin:0; font-size:16px; min-height:56px }
  #cubix-site .cs-footer-column ul { padding-bottom:18px; grid-template-columns:1fr 1fr; gap:10px 16px }
  #cubix-site .cs-footer-column li { margin:0 }
  #cubix-site .cs-footer-column li a { min-height:40px }
  #cubix-site .cs-footer-bottom { padding-bottom:90px }
  #cubix-site .cs-to-top { bottom:100px }
}
@media(max-width:359px) {
  #cubix-site :is(.container,.cs-wrap) { width:calc(100% - 32px) }
  #cubix-site #cs-site-header.cs-enhanced .cs-navigation { inset-inline:8px; padding:10px }
  #cubix-site #cs-site-header .cs-game-links { grid-template-columns:1fr }
  #cubix-site #cs-site-header .cs-game-art { width:48px; flex-basis:48px }
  #cubix-site #cs-site-header .cs-game-name { font-size:14px }
  #cubix-site .ha-paths { grid-template-columns:1fr }
  #cubix-site .ha-paths>a { min-height:0; display:grid; grid-template-columns:auto 1fr auto; padding:18px; align-items:center }
}
@media(prefers-reduced-motion:reduce) {
  #cubix-site *,#cubix-site *::before,#cubix-site *::after { scroll-behavior:auto!important; animation:none!important; transition:none!important }
}
