/* CubixServ — discovery and plan selection. Scope changes to the enhanced components. */
.cbx-modern.cs-premium .cs-premium-hero { background:radial-gradient(ellipse at 77% 35%,#14324b80,transparent 58%),#081421; }
.cs-premium .cs-premium-routes { border:1px solid #365267; border-radius:16px; background:#102335; overflow:hidden; }
.cs-premium .cs-premium-routes a { position:relative; transition:background .2s; }
.cs-premium .cs-premium-routes a:hover { background:#1b3b50; }
.cs-premium .cs-route-number { color:#89c6d7; }
/* The solution guide now puts all three product families before the game catalogue. */
.cs-premium .cs-solution-guide { padding:80px 0; background:#f5f8fc; }
.cs-premium .cs-guide-layout { grid-template-columns:.85fr 1.8fr; gap:48px; align-items:start; }
.cs-premium .cs-guide-intro { padding-top:28px; }
.cs-premium .cs-guide-intro h2 { font-size:clamp(30px,3.1vw,46px); line-height:1.15; }
.cs-premium .cs-guide-intro p { font-size:15px; }
.cs-premium .cs-guide-tabs { gap:6px; padding:6px; background:#e6edf4; border:1px solid #d0dce8; border-radius:12px; margin-bottom:16px; }
.cs-premium .cs-guide-tabs button { border:0; border-radius:8px; padding:13px 17px; justify-content:center; color:#425a70; gap:14px; font-size:14px; min-height:48px; }
.cs-premium .cs-guide-tabs button[aria-selected=true] { background:#12324a; color:#effaff; box-shadow:0 3px 8px #12324a24; }
.cs-premium .cs-guide-tabs button[aria-selected=true]>span { color:#7be3ee; }
.cs-premium .cs-guide-panel { padding:0; overflow:hidden; display:grid; grid-template-columns:240px 1fr; min-height:330px; background:#fff; border-radius:18px; border-color:#cbdbe7; box-shadow:0 12px 35px #17375508; }
.cs-premium .cs-guide-panel[hidden] { display:none; }
.cs-guide-visual { position:relative; display:grid; place-items:center; min-width:0; background:radial-gradient(ellipse at 50% 40%,#22536b,#0b1c2c 76%); overflow:hidden; padding:20px 5px 50px; isolation:isolate; }
.cs-guide-visual:after { content:''; position:absolute; inset:0; z-index:-1; background-image:linear-gradient(#79d7e40a 1px,transparent 1px),linear-gradient(90deg,#79d7e40a 1px,transparent 1px); background-size:28px 28px; mask-image:linear-gradient(transparent,#000); }
.cs-guide-visual img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; filter:drop-shadow(0 18px 20px #0004); }
.cs-guide-orbit { position:absolute; width:210px; height:210px; border:1px solid #6bd3e533; border-radius:50%; transform:rotateX(55deg) rotate(-25deg); }
.cs-guide-visual-label { position:absolute; bottom:22px; inset-inline:16px; text-align:center; color:#a6d0df; font-size:9px; letter-spacing:.12em; }
.cs-guide-panel-copy { padding:30px; align-self:center; min-width:0; }
.cbx-modern.cs-premium .cs-guide-panel h3 { font-size:25px; }
.cbx-modern.cs-premium .cs-guide-panel p { line-height:1.75; }
.cs-premium .cs-guide-links { gap:0; display:flex; flex-direction:column; align-items:stretch; margin-top:20px; }
.cs-premium .cs-guide-links a { justify-content:space-between; padding:11px 0; border-bottom:1px solid #dde8f0; min-height:44px; }
.cs-premium .cs-guide-links a:last-child { border-bottom:0; }
.cs-premium .cs-guide-links a:hover { color:#0b395d; background:#f5faff; }
.cs-premium .cs-compare-home-strip { margin-top:30px; padding:25px 30px; background:#e9f1f8; }
/* Editorial game covers: readable names over a solid dark lower edge. */
.cbx-modern.cs-premium .cbx-home #gaming-offers { background:#0b1828!important; border-block:1px solid #293d53; position:relative; }
.cbx-modern.cs-premium .cbx-home #gaming-offers .section-heading h2 { color:#f5faff!important; }
.cbx-modern.cs-premium .cbx-home #gaming-offers .section-heading p { color:#bccedf!important; }
.cbx-modern.cs-premium .cbx-home #gaming-offers .studio-label { color:#8fd9e5; }
.cbx-modern.cs-premium .cbx-home #gaming-offers .studio-result-count { color:#c1d2e0; }
.cbx-modern.cs-premium .cbx-home .cbx-game-filters { gap:8px; margin-bottom:26px; }
.cbx-modern.cs-premium .cbx-home .cbx-game-filters button { background:#14273a; color:#c4d7e7; border-color:#3d536b; border-radius:9px; }
.cbx-modern.cs-premium .cbx-home .cbx-game-filters button:hover { background:#233e54; border-color:#70a8bc; }
.cbx-modern.cs-premium .cbx-home .cbx-game-filters button[aria-pressed=true] { color:#092434; background:#83e3ef; border-color:#83e3ef; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid { gap:20px; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .card { position:relative; height:292px; border-radius:14px!important; background:#11243a!important; border-color:#3b5064!important; isolation:isolate; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .card-img-top { position:absolute; inset:0; height:100%; width:100%; z-index:-2; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .card:after { display:block; content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,#0716250a 15%,#0c1c31a8 47%,#0c1c31 80%); pointer-events:none; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .card-body { position:relative; display:flex; justify-content:flex-end; width:100%; height:100%; min-height:0!important; background:transparent; padding:24px!important; text-align:start; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid h3,.cbx-modern.cs-premium .cbx-home .studio-games-grid .studio-game-item:nth-child(-n+2) h3 { color:#fff!important; font-size:24px; line-height:1.2; margin:0!important; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .action-btns { margin-top:12px!important; padding-top:0; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .btn { border-top:1px solid #7c9db34d; color:#a8eff8!important; width:100%; min-height:44px; padding-top:12px; font-size:12px; text-align:start; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .btn span { color:#a8eff8; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .btn:after { content:''; position:absolute; inset:0; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .card:focus-within { outline:3px solid #8de5ef; outline-offset:4px; }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .card:hover { border-color:#93dcea!important; box-shadow:0 16px 30px #0003; transform:translateY(-4px); }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .card:hover .card-img-top { transform:scale(1.055); }
.cbx-modern.cs-premium .cbx-home .studio-games-grid .cbx-game-genre { top:16px; left:auto; right:auto; inset-inline-start:16px; padding:5px 9px; background:#0a1d32f5; border-color:#6d8b9d73; }
.cbx-modern.cs-premium .cbx-home #gaming-offers>.container>.row:last-child { background:#152c40; border-color:#3a546b; margin-inline:0; border-radius:14px; }
.cbx-modern.cs-premium .cbx-home #gaming-offers .call-to-action-content h4 { color:#f2f8fc; }
.cbx-modern.cs-premium .cbx-home #gaming-offers .call-to-action-content p { color:#bdcfdf!important; }
.cbx-modern.cs-premium .cbx-home #gaming-offers>.container>.row:last-child .outline-btn { color:#cfedf7; border-color:#7194ae; }
/* Consistent CGI imagery for infrastructure and the final product destinations. */
.cs-premium .cbx-home #features .cs-infrastructure-art { position:relative; padding:10px; border:1px solid #40667e; border-radius:20px; background:radial-gradient(ellipse,#28516b,#10263b 74%); overflow:hidden; }
.cs-premium .cbx-home #features .cs-infrastructure-art img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; filter:drop-shadow(0 16px 15px #0004); }
.cs-premium .cs-footer-path { min-height:330px; isolation:isolate; }
.cs-premium .cs-footer-path .cs-footer-service-art { position:absolute; width:155px; height:155px; inset-inline-end:6px; inset-inline-start:auto; top:28px; opacity:.65; object-fit:contain; z-index:-1; transform:rotate(-8deg); transition:transform .5s,opacity .5s; }
.cs-premium .cs-footer-path:has(.cs-footer-service-art):after { background:linear-gradient(180deg,transparent,#10263bcc 54%,#10263b 75%); z-index:-1; }
.cs-premium .cs-footer-path:hover .cs-footer-service-art { transform:rotate(-3deg) translateY(-6px); opacity:.9; }
.cs-premium .cs-footer-path .cs-path-copy { margin-top:auto; padding-top:75px; }
/* One source of offers. The card view changes layout, never product data. */
.cs-plan-tools { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px 25px; margin:0 0 25px; padding:20px 24px; border:1px solid #c6d8e7; border-radius:14px; background:#fff; }
.cs-plan-filter { display:flex; align-items:center; gap:14px; min-width:0; }
.cs-plan-filter label { margin:0; font-size:13px; font-weight:600; color:#24485f; }
.cs-plan-filter select { max-width:100%; min-height:44px; padding:10px 30px 10px 13px; border:1px solid #adc8dc; border-radius:8px; background:#f4f9fc; color:#173950; font-family:inherit; font-weight:500; font-size:13px; cursor:pointer; }
.cs-plan-count { color:#48657a; font-size:12px; margin-inline-end:auto; }
.cs-plan-modes { display:flex; padding:4px; border:1px solid #d4e1eb; border-radius:10px; background:#eff5fa; gap:4px; }
.cs-plan-modes button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:8px 14px; color:#3b5e77; border:0; border-radius:7px; background:transparent; font-size:13px; font-weight:600; cursor:pointer; }
.cs-plan-modes button>span { font-size:21px; line-height:1; }
.cs-plan-modes button[aria-pressed=true] { color:#fff; background:#183e59; box-shadow:0 2px 5px #193f581a; }
.cs-plan-tools :is(button,select):focus-visible { outline:3px solid #216daf; outline-offset:3px; }
.cbx-modern.cs-premium table.cs-plan-explorer-table tr[hidden] { display:none!important; }
.cbx-modern.cs-premium table.cs-plans-as-cards { display:block; width:100%; border:0; background:transparent; border-spacing:0; margin:0; }
.cbx-modern.cs-premium table.cs-plans-as-cards thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; display:block; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; width:100%; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr { display:flex; flex-direction:column; min-width:0; padding:26px; margin:0; border:1px solid #b9cedf!important; border-radius:16px!important; background:linear-gradient(145deg,#f4faff,#fff 38%); box-shadow:0 5px 18px #1a3c5108; transition:border-color .2s,box-shadow .2s; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr:hover { border-color:#649ebb!important; box-shadow:0 12px 28px #1a3c5112; transform:none; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr.cs-offer-selected { border-color:#157393!important; box-shadow:0 0 0 2px #157393; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%!important; min-width:0; min-height:43px; padding:10px 0!important; margin:0; background:transparent!important; border:0!important; border-bottom:1px solid #e2ebf2!important; border-radius:0!important; font-size:13px; text-align:end; color:#143b56; font-weight:600; line-height:1.6; overflow-wrap:anywhere; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td:before { content:attr(data-value); position:static; display:block; font-size:11px; line-height:1.6; color:#516b80; font-weight:500; text-align:start; flex:0 0 44%; padding:0; width:auto; min-width:0; white-space:normal; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td.cs-plan-memory { order:-3; display:block; font-size:28px; letter-spacing:-.04em; line-height:1.4; text-align:start; padding:0 0 18px!important; margin-bottom:4px; color:#153d59; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td.cs-plan-memory:before { font-size:10px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:6px; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td.cs-plan-processor { order:-2; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td.cs-plan-price { display:block; order:98; margin-top:auto; padding:22px 0 18px!important; text-align:start; min-height:112px; border:0!important; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td.cs-plan-price:before { display:none; }
.cbx-modern.cs-premium table.cs-plans-as-cards .cs-plan-price p { margin:0; text-align:start; }
.cbx-modern.cs-premium table.cs-plans-as-cards .cs-plan-price .rate { font-size:32px!important; color:#153d59!important; line-height:1.3; letter-spacing:-.05em; }
.cbx-modern.cs-premium table.cs-plans-as-cards .cs-plan-price .rate>span { font-size:12px!important; letter-spacing:0; color:#516b80; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td.cs-plan-actions { display:flex; order:99; flex-direction:column; align-items:stretch; border:0!important; padding:0!important; gap:8px; }
.cbx-modern.cs-premium table.cs-plans-as-cards .cs-plan-actions:before { display:none; }
.cbx-modern.cs-premium table.cs-plans-as-cards .cs-plan-actions>.btn { width:100%; min-height:46px; }
.cbx-modern.cs-premium table.cs-plans-as-cards .cs-compare-choice { display:flex; align-items:center; justify-content:center; gap:6px; width:100%; margin:0; padding:10px; min-height:44px; border:1px solid #c8dce9; border-radius:8px; }
.cs-premium .cs-compare-choice .cs-compare-symbol { width:15px; height:15px; display:inline-grid; place-items:center; border:1px solid currentColor; border-radius:3px; font:600 13px/1 sans-serif; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .cs-guide-panel:not([hidden]) .cs-guide-visual img { animation:cs-guide-arrival .65s cubic-bezier(.16,1,.3,1) both; }
 .cs-premium .cs-footer-path:has(.cs-footer-service-art):hover .cs-path-action { transform:translateX(3px); }
}
@keyframes cs-guide-arrival { from { opacity:.3; transform:translateY(14px) scale(.94); } to { opacity:1; transform:none; } }
@media(max-width:1199px) {
 .cs-premium .cs-guide-layout { grid-template-columns:1fr 2.3fr; gap:30px; }
 .cs-premium .cs-guide-panel { grid-template-columns:180px 1fr; }
 .cs-guide-panel-copy { padding:24px; }
 .cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr { padding:22px; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid h3,.cbx-modern.cs-premium .cbx-home .studio-games-grid .studio-game-item:nth-child(-n+2) h3 { font-size:22px; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid .card-body { padding:20px!important; }
}
@media(max-width:991px) {
 .cs-premium .cs-guide-layout { grid-template-columns:1fr; gap:20px; }
 .cs-premium .cs-guide-intro { padding-top:0; }
 .cs-premium .cs-guide-intro h2 br { display:none; }
 .cs-premium .cs-guide-intro p { max-width:100%; }
 .cs-premium .cs-guide-panel { grid-template-columns:230px 1fr; }
 .cbx-modern.cs-premium table.cs-plans-as-cards tbody { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
 .cs-plan-count { margin-inline-end:0; }
 .cs-premium .cs-footer-path { min-height:300px; }
}
@media(max-width:767px) {
 .cs-premium .cs-solution-guide { padding:50px 0; }
 .cs-premium .cs-guide-panel { grid-template-columns:1fr; }
 .cs-guide-visual { min-height:150px; padding:0; }
 .cs-guide-visual img { width:200px; height:170px; }
 .cs-guide-visual-label { display:none; }
 .cs-guide-orbit { width:260px; height:220px; }
 .cs-guide-panel-copy { padding:24px; }
 .cs-premium .cs-guide-tabs button { font-size:12px; padding:11px 8px; gap:8px; }
 .cs-premium .cs-compare-home-strip { padding:24px; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid { gap:14px; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid .card { height:258px; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid .card-img-top { height:100%; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid .card-body { padding:18px!important; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid h3,.cbx-modern.cs-premium .cbx-home .studio-games-grid .studio-game-item:nth-child(-n+2) h3 { font-size:21px; }
 .cs-plan-tools { padding:18px; gap:16px; }
 .cs-plan-filter { width:100%; justify-content:space-between; }
 .cs-plan-filter select { min-width:0; max-width:65%; }
 .cs-plan-count { flex:1; font-size:11px; }
 .cs-plan-modes button { font-size:12px; padding:8px 10px; }
 .cbx-modern.cs-premium table.cs-plans-as-cards tbody { grid-template-columns:1fr; }
 .cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr { padding:24px; }
 .cs-premium .cs-footer-path { min-height:285px; }
 .cs-premium .cs-premium-routes { border-radius:12px; }
}
@media(max-width:420px) {
 .cbx-modern.cs-premium .cbx-home .studio-games-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid .card { height:235px; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid .card-body { padding:14px!important; }
 .cbx-modern.cs-premium .cbx-home .studio-games-grid h3,.cbx-modern.cs-premium .cbx-home .studio-games-grid .studio-game-item:nth-child(-n+2) h3 { font-size:19px; }
 .cs-plan-modes { width:100%; }
 .cs-plan-modes button { flex:1; }
}
@media(prefers-reduced-motion:reduce) {
 .cs-guide-visual img,.cs-premium .cs-footer-path .cs-footer-service-art,.cbx-modern.cs-premium .cbx-home .studio-games-grid .card,.cbx-modern.cs-premium .cbx-home .studio-games-grid .card-img-top { animation:none!important; transition:none!important; transform:none!important; }
}

.cs-plan-value { min-width:0; }
.cbx-modern.cs-premium table.cs-plans-as-cards .cs-plan-memory>.cs-plan-value { display:inline-block; }
[dir=rtl] .cs-plan-filter select { padding-inline:13px 30px; }
.cbx-modern.cs-premium table.cs-plans-as-cards tbody>tr>td.cs-plan-price p { text-align:inherit; }

.cs-premium .cs-footer-path .cs-footer-service-art { mask-image:linear-gradient(#000 60%,transparent); }

.cbx-modern.cs-premium .cbx-home .studio-games-grid .btn:hover,
.cbx-modern.cs-premium .cbx-home .studio-games-grid .btn:focus-visible { color:#fff!important; }
@media(max-width:767px) {
 .cs-plan-filter { flex-direction:column; align-items:stretch; gap:8px; }
 .cs-plan-filter select { max-width:100%; width:100%; }
}
