{"id":2564,"date":"2024-09-11T02:47:01","date_gmt":"2024-09-11T02:47:01","guid":{"rendered":"https:\/\/web-staging.virtuosgames.com\/?page_id=2564"},"modified":"2026-02-22T13:59:11","modified_gmt":"2026-02-22T05:59:11","slug":"san-francisco","status":"publish","type":"page","link":"https:\/\/web-staging.virtuosgames.com\/vi\/studio\/san-francisco\/","title":{"rendered":"San Francisco"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"2564\" class=\"elementor elementor-2564\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1769251 e-flex e-con-boxed e-con e-parent\" data-id=\"1769251\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-37e2a0f e-con-full e-flex e-con e-child\" data-id=\"37e2a0f\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-fb673db e-con-full e-flex e-con e-child\" data-id=\"fb673db\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7b90056 elementor-widget__width-inherit gradient-heading-1 studio-title elementor-widget elementor-widget-heading\" data-id=\"7b90056\" data-element_type=\"widget\" data-widget_type=\"heading.default\" data-no-auto-translation=\"\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">San Francisco<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9adc0f6 e-flex e-con-boxed e-con e-parent\" data-id=\"9adc0f6\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-dd72e2f e-con-full e-flex e-con e-child\" data-id=\"dd72e2f\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9fd6e1b elementor-widget__width-initial gradient-heading elementor-widget-tablet__width-initial elementor-widget elementor-widget-heading\" data-id=\"9fd6e1b\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Trung t\u00e2m ph\u00e1t tri\u1ec3n kinh doanh t\u1ea1i V\u00f9ng V\u1ecbnh<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d891813 e-con-full e-flex e-con e-child\" data-id=\"d891813\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-9ddf7bb e-con-full md-w-full e-flex e-con e-child\" data-id=\"9ddf7bb\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-05e32c8 elementor-widget elementor-widget-text-editor\" data-id=\"05e32c8\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Virtuos San Francisco l\u00e0 trung t\u00e2m ph\u00e1t tri\u1ec3n kinh doanh c\u1ee7a Virtuos t\u1ea1i V\u00f9ng V\u1ecbnh, n\u01a1i ch\u00fang t\u00f4i h\u1ee3p t\u00e1c v\u1edbi c\u00e1c \u0111\u1ed1i t\u00e1c t\u1ea1i Hoa K\u1ef3 v\u00e0 ph\u00e1t tri\u1ec3n nh\u1eefng gi\u1ea3i ph\u00e1p \u0111\u1ed9c \u0111\u00e1o \u0111\u1ec3 hi\u1ec7n th\u1ef1c h\u00f3a tham v\u1ecdng c\u1ee7a h\u1ecd.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b464f85 elementor-align-left elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"b464f85\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-map-marker-alt\" viewbox=\"0 0 384 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z\"><\/path><\/svg>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">1200 Concord Avenue, Suite 170, CA 94520, Concord, USA<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-30ed490 e-con-full md-w-full e-flex e-con e-child\" data-id=\"30ed490\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ea02f8d studio-carousel elementor-arrows-position-inside elementor-pagination-position-outside elementor-widget elementor-widget-image-carousel\" data-id=\"ea02f8d\" data-element_type=\"widget\" data-settings=\"{&quot;slides_to_show&quot;:&quot;1&quot;,&quot;navigation&quot;:&quot;both&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;infinite&quot;:&quot;yes&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;speed&quot;:500}\" data-widget_type=\"image-carousel.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-image-carousel-wrapper swiper\" role=\"region\" aria-roledescription=\"carousel\" aria-label=\"H\u00ecnh \u1ea3nh Carousel\" dir=\"ltr\">\n\t\t\t<div class=\"elementor-image-carousel swiper-wrapper swiper-image-stretch\" aria-live=\"off\">\n\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\" aria-label=\"1 tr\u00ean 1\"><figure class=\"swiper-slide-inner\"><img decoding=\"async\" class=\"swiper-slide-image\" src=\"https:\/\/web-staging.virtuosgames.com\/wp-content\/uploads\/2024\/09\/san-francisco-slide-1.webp\" alt=\"san-francisco-slide-1\" \/><\/figure><\/div>\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c851cad elementor-widget elementor-widget-html\" data-id=\"c851cad\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"virtous-btn\">\r\n\t<div class=\"elementor-button-wrapper translation-block\"><span class=\"translation-contacts\"><span data-context=\"btn-contact\">\t<a href=\"\/vi\/contact-us\/\" target=\"_self\">LI\u00caN H\u1ec6<\/a><\/span><\/span><\/div>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e2409c5 e-con-full studio-bg e-flex e-con e-parent\" data-id=\"e2409c5\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-e779946 e-con-full e-flex e-con e-child\" data-id=\"e779946\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c55fc98 gradient-heading elementor-widget elementor-widget-heading\" data-id=\"c55fc98\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Quy\u1ec1n L\u1ee3i<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-46af94c e-con-full e-flex e-con e-child\" data-id=\"46af94c\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1906dd3 elementor-testimonial--layout-image_above gradient-carousel elementor-testimonial--skin-default elementor-testimonial--align-center elementor-pagination-type-bullets elementor-widget elementor-widget-testimonial-carousel\" data-id=\"1906dd3\" data-element_type=\"widget\" data-settings=\"{&quot;slides_per_view&quot;:&quot;5&quot;,&quot;slides_per_view_tablet&quot;:&quot;2&quot;,&quot;slides_per_view_mobile_extra&quot;:&quot;1&quot;,&quot;slides_to_scroll&quot;:&quot;1&quot;,&quot;space_between&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:20,&quot;sizes&quot;:[]},&quot;slides_per_view_laptop&quot;:&quot;5&quot;,&quot;slides_to_scroll_laptop&quot;:&quot;1&quot;,&quot;slides_per_view_tablet_extra&quot;:&quot;3&quot;,&quot;pagination&quot;:&quot;bullets&quot;,&quot;speed&quot;:500,&quot;autoplay&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;loop&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;space_between_laptop&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;space_between_tablet_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;space_between_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;space_between_mobile_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;space_between_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]}}\" data-widget_type=\"testimonial-carousel.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-swiper\">\n\t\t\t\t\t<div class=\"elementor-main-swiper swiper\" role=\"region\" aria-roledescription=\"carousel\" aria-label=\"C\u00e1c slide\">\n\t\t\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial\">\n\t\t\t\t\t\t\t<div class=\"elementor-testimonial__content\">\n\t\t\t\t\t<div class=\"elementor-testimonial__text\">\n\t\t\t\t\t\tG\u00f3p ph\u1ea7n v\u00e0o nh\u1eefng t\u1ef1a game AAA h\u00e0ng \u0111\u1ea7u th\u1ebf gi\u1edbi\u00a0\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"elementor-testimonial__footer\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial__image\">\n\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/web-staging.virtuosgames.com\/wp-content\/uploads\/2024\/11\/virtuos-career-benefits-collaboration.png\" alt=\"\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial\">\n\t\t\t\t\t\t\t<div class=\"elementor-testimonial__content\">\n\t\t\t\t\t<div class=\"elementor-testimonial__text\">\n\t\t\t\t\t\tTham gia c\u00e1c ho\u1ea1t \u0111\u1ed9ng \u0111\u1ed9i nh\u00f3m v\u00e0 s\u1ef1 ki\u1ec7n g\u1eafn k\u1ebft\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"elementor-testimonial__footer\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial__image\">\n\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/web-staging.virtuosgames.com\/wp-content\/uploads\/2024\/11\/virtuos-career-benefits-teamwork.png\" alt=\"\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial\">\n\t\t\t\t\t\t\t<div class=\"elementor-testimonial__content\">\n\t\t\t\t\t<div class=\"elementor-testimonial__text\">\n\t\t\t\t\t\tTr\u1ea3i nghi\u1ec7m kh\u00f4ng gian l\u00e0m vi\u1ec7c hi\u1ec7n \u0111\u1ea1i v\u1edbi khu ch\u01a1i game v\u00e0 khu v\u1ef1c chung tho\u1ea3i m\u00e1i\u00a0\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"elementor-testimonial__footer\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial__image\">\n\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/web-staging.virtuosgames.com\/wp-content\/uploads\/2024\/11\/virtuos-career-benefits-lounge.png\" alt=\"\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial\">\n\t\t\t\t\t\t\t<div class=\"elementor-testimonial__content\">\n\t\t\t\t\t<div class=\"elementor-testimonial__text\">\n\t\t\t\t\t\tG\u00f3i ch\u0103m s\u00f3c s\u1ee9c kh\u1ecfe to\u00e0n di\u1ec7n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"elementor-testimonial__footer\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial__image\">\n\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/web-staging.virtuosgames.com\/wp-content\/uploads\/2024\/11\/virtuos-career-benefits-healthcare.png\" alt=\"\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial\">\n\t\t\t\t\t\t\t<div class=\"elementor-testimonial__content\">\n\t\t\t\t\t<div class=\"elementor-testimonial__text\">\n\t\t\t\t\t\tL\u00e0m vi\u1ec7c theo l\u1ecbch linh ho\u1ea1t\u00a0\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"elementor-testimonial__footer\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial__image\">\n\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/web-staging.virtuosgames.com\/wp-content\/uploads\/2024\/11\/virtuos-career-benefits-hybrid.png\" alt=\"\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial\">\n\t\t\t\t\t\t\t<div class=\"elementor-testimonial__content\">\n\t\t\t\t\t<div class=\"elementor-testimonial__text\">\n\t\t\t\t\t\tH\u1ed7 tr\u1ee3 di chuy\u1ec3n cho c\u00e1c \u1ee9ng vi\u00ean t\u1eeb n\u01b0\u1edbc ngo\u00e0i\u00a0\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"elementor-testimonial__footer\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-testimonial__image\">\n\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/web-staging.virtuosgames.com\/wp-content\/uploads\/2024\/11\/virtuos-career-benefits-relocation.png\" alt=\"\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-pagination\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-babbda9 e-flex e-con-boxed e-con e-parent\" data-id=\"babbda9\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-ada865a e-con-full e-flex e-con e-child\" data-id=\"ada865a\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fbd373d gradient-heading elementor-widget elementor-widget-heading\" data-id=\"fbd373d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">C\u01a0 H\u1ed8I VI\u1ec6C L\u00c0M<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1abd869 elementor-widget elementor-widget-text-editor\" data-id=\"1abd869\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>C\u00f9ng ch\u00fang t\u00f4i l\u00e0m n\u00ean nh\u1eefng t\u1ef1a game \u0111\u01b0\u1ee3c c\u1ea3 th\u1ebf gi\u1edbi mong ch\u1edd!\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-46b2102 e-con-full elementor-hidden-desktop elementor-hidden-laptop elementor-hidden-tablet_extra elementor-hidden-tablet elementor-hidden-mobile_extra elementor-hidden-mobile e-flex e-con e-child\" data-id=\"46b2102\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-56a758c elementor-widget elementor-widget-shortcode\" data-id=\"56a758c\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[virtuos_job_cards location=\"USA, Los Angeles\"]\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7888721 virtous-btn elementor-align-left elementor-widget__width-auto elementor-widget elementor-widget-button\" data-id=\"7888721\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/fa-exhj-saasfaprod1.fa.ocs.oraclecloud.com\/hcmUI\/CandidateExperience\/en\/sites\/CX_1\/requisitions\" target=\"_blank\" rel=\"noopener\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Xem<br>Th\u00eam<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3739202 e-con-full e-flex e-con e-parent\" data-id=\"3739202\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1195e8f elementor-widget__width-inherit elementor-widget elementor-widget-template\" data-id=\"1195e8f\" data-element_type=\"widget\" data-widget_type=\"template.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-template\">\n\t\t\t\t\t<div data-elementor-type=\"section\" data-elementor-id=\"4356\" class=\"elementor elementor-4356\" data-elementor-post-type=\"elementor_library\">\n\t\t\t<div class=\"elementor-element elementor-element-b85bb41 e-con-full e-flex e-con e-parent\" data-id=\"b85bb41\" data-element_type=\"container\" id=\"global-presence\">\n\t\t<div class=\"elementor-element elementor-element-168e5be e-con-full e-flex e-con e-child\" data-id=\"168e5be\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0ff2cfd global-presence-title  jedv-enabled--yes elementor-widget elementor-widget-heading\" data-id=\"0ff2cfd\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">M\u1ea1ng L\u01b0\u1edbi To\u00e0n C\u1ea7u<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7ee304b elementor-hidden-desktop elementor-hidden-laptop elementor-hidden-tablet_extra elementor-hidden-tablet elementor-hidden-mobile_extra elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"7ee304b\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"translation-block\">cute<\/span>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-626e571 elementor-widget__width-initial elementor-widget-tablet__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"626e571\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Khai th\u00e1c m\u1ea1ng l\u01b0\u1edbi c\u00e1c studio th\u00e0nh vi\u00ean v\u00e0 t\u1eadn d\u1ee5ng ngu\u1ed3n nh\u00e2n l\u1ef1c chuy\u00ean m\u00f4n cao c\u1ee7a ch\u00fang t\u00f4i tr\u00ean to\u00e0n c\u1ea7u. Virtuos gi\u00fap c\u00e1c nh\u00e0 ph\u00e1t tri\u1ec3n n\u00e2ng cao hi\u1ec7u su\u1ea5t, t\u1ed1i \u01b0u h\u00f3a chi ph\u00ed v\u00e0 \u0111\u1ea9y nhanh th\u1eddi gian ra m\u1eaft game th\u1ecb tr\u01b0\u1eddng, \u0111\u1ec3 nh\u1eefng nh\u00e0 s\u00e1ng t\u1ea1o c\u00f3 th\u1ec3 t\u1eadp trung v\u00e0o ch\u1ea5t l\u01b0\u1ee3ng c\u1ee7a game.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a99fcdc elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"a99fcdc\" data-element_type=\"widget\" id=\"global-map\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"tab-buttons\">\r\n    <span class=\"tab-button\" onclick=\"zoomToRegion('all')\">T\u1ea5t C\u1ea3<\/span>\r\n    <span class=\"tab-button\" onclick=\"zoomToRegion('na')\">B\u1eafc M\u1ef9<\/span>\r\n    <span class=\"tab-button\" onclick=\"zoomToRegion('eu')\">Ch\u00e2u \u00c2u<\/span>\r\n   <span class=\"tab-button\" onclick=\"zoomToRegion('asia')\">Ch\u00e2u \u00c1<\/span>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-69c52a2 e-con-full e-flex e-con e-child\" data-id=\"69c52a2\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-eb01952 e-con-full e-transform map-btn e-flex e-con e-child\" data-id=\"eb01952\" data-element_type=\"container\" data-settings=\"{&quot;position&quot;:&quot;absolute&quot;,&quot;_transform_translateX_effect_tablet&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_mobile_extra&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_mobile&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;sticky&quot;:&quot;bottom&quot;,&quot;sticky_on&quot;:[&quot;tablet&quot;,&quot;mobile_extra&quot;,&quot;mobile&quot;],&quot;sticky_offset_tablet&quot;:20,&quot;sticky_anchor_link_offset_tablet&quot;:0,&quot;sticky_parent&quot;:&quot;yes&quot;,&quot;sticky_offset_mobile_extra&quot;:0,&quot;sticky_offset&quot;:0,&quot;sticky_effects_offset&quot;:0,&quot;sticky_anchor_link_offset&quot;:0,&quot;_transform_translateX_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_laptop&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_tablet_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_laptop&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_tablet_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_mobile_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b4110db elementor-hidden-desktop elementor-hidden-laptop elementor-hidden-tablet_extra elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading\" data-id=\"b4110db\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"#\">SKIP THE MAP<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-61a8dbd elementor-widget elementor-widget-template\" data-id=\"61a8dbd\" data-element_type=\"widget\" data-widget_type=\"template.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-template\">\n\t\t\t\t\t<div data-elementor-type=\"container\" data-elementor-id=\"21191\" class=\"elementor elementor-21191\" data-elementor-post-type=\"elementor_library\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2f8f5381 e-con-full custom-map-bg e-flex e-con e-child\" data-id=\"2f8f5381\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6f318d76 elementor-widget elementor-widget-html\" data-id=\"6f318d76\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"overlay\"><\/div>\r\n<!--Preload Hover Map Images - To Avoid Flickering -->\r\n<div style=\"display:none;\">\r\n    <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/map-img-1.svg\" width=\"0\" height=\"0\"\/>\r\n    <img decoding=\"async\" src=\"https:\/\/www.virtuosgames.com\/wp-content\/uploads\/2025\/04\/map_working-file_full-asia1-1.svg\" width=\"0\" height=\"0\"\/>\r\n    <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/map-img-ea-1.svg\" width=\"0\" height=\"0\"\/>\r\n    <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/map-img-eu-1.svg\" width=\"0\" height=\"0\"\/>\r\n    <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/map-img-na-1.svg\" width=\"0\" height=\"0\"\/>\r\n<\/div>\r\n\r\n<div class=\"container\">\r\n<div id=\"map\">\r\n    <div id=\"hover-box\"><\/div>\r\n    <!--Singapore-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Singapore\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/singapore.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">V\u0103n ph\u00f2ng<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Singapore (Tr\u1ee5 s\u1edf ch\u00ednh)<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">1 Fusionopolis Wy, #06-10 Connexis, Singapore 138632<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/singapore\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Kuala Lumpur-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Kuala Lumpur\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/kuala-lumpur.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Kuala Lumpur<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">Level 6, Tower 3 Avenue 7, Bangsar South, No.8 Jalan Kerinchi, 59200 Kuala Lumpur<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/kuala-lumpur\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Xian-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Xian\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/Xian.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos T\u00e2y An<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">T\u1ea7ng 3, \u0110\u01b0\u1eddng TianGu 8, Qu\u1eadn 2, Th\u00e0nh ph\u1ed1 Ph\u1ea7n m\u1ec1m M\u1edbi, 710068 T\u00e2y An, Thi\u1ec3m T\u00e2y, Trung Qu\u1ed1c<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/xian\/\"  class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n\r\n        <!--Glassegg-Lam Dong-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Glassdalat\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/Glassegg-dalat.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">Glass Egg - Dalat<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">Ph\u00f2ng A2.2, S\u1ed1 1, \u0111\u01b0\u1eddng Tr\u1ea7n Qu\u1ed1c To\u1ea3n, P.10, Th\u00e0nh ph\u1ed1 \u0110\u00e0 L\u1ea1t, T\u1ec9nh L\u00e2m \u0110\u1ed3ng<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"https:\/\/www.virtuosgames.com\/studio\/glass-egg\/dalat\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n    \r\n    <!--Glassegg-Ho Chi Minh-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Glassegg\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/Glassegg-hochiminh.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">Glass Egg - Ho Chi Minh City<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">9 \u0110o\u00e0n V\u0103n B\u01a1, P.13, Qu\u1eadn 4, TP. HCMC, Vi\u1ec7t Nam\u200b<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/glass-egg\/ho-chi-minh\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Sparx-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Sparx\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/sparx-hochiminh.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">Sparx*<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">39B Tr\u01b0\u1eddng S\u01a1n, Ph\u01b0\u1eddng 4, Qu\u1eadn T\u00e2n B\u00ecnh, Th\u00e0nh ph\u1ed1 H\u1ed3 Ch\u00ed Minh, Vi\u1ec7t Nam<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/sparx\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Beyond Fx-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Beyond Fx\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/beyond_fx.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">BeYond-FX<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">11833 Mississippi Avenue, 2nd Floor Los Angeles, CA 9002<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/beyond-fx\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Counterpunch-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Counterpunch\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/counter_punch.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">Counterpunch<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">1031 S Broadway STE 375, Los Angeles, CA, 90015<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/counterpunch\/\"  class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Paris-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Paris\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/paris.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Paris<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">10 Avenue de l\u2019Entreprise, Parc Saint Christophe, 95800 Cergy, France<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/paris\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Montpellier-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Montpellier\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/labs_montpellier.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Labs<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Labs - Montpellier<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">396 rue du Mas de Verchant, 34000 Montpellier, France<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/montpellier\/\"  class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Lyon-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Lyon\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/labs_lyon.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Labs<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Labs - Lyon<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">1 Place Pascalon, Grand H\u00f4tel-Dieu 69002 Lyon, France<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/lyon\/\"  class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n\r\n    <div class=\"office hide hide-point-from-map\" data-number=\"\" data-location=\"Vancouver\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/vancouver.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">V\u0103n ph\u00f2ng<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Vancouver<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">PO Box 19014 Rocky Point PO, Port Moody, BC V3H 0J1, Vancouver, BC<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/vancouver\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--San Francisco-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"San Francisco\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/san_franciso.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">V\u0103n ph\u00f2ng<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">San Francisco<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">1200 Concord Avenue, Suite 170, CA 94520, Concord, USA<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/san-francisco\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Montreal -->\r\n    \r\n    <div class=\"office hide hide-point-from-map\" data-number=\"\" data-location=\"Montreal\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/montreal.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Montreal<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">4398 Boulevard Saint-Laurent, Suite 103, Montreal, Quebec H2W 1Z5, CA<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/montreal\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Chengdu-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Chengdu\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/Chengdu.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Th\u00e0nh \u0110\u00f4<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">Level 13 Ping An Finance Center, No.99 Dongda street, Jinjiang District 610017, Chengdu City, Sichuan Province, P.R. China<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/chengdu\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Shanghai-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Shanghai\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/Shanghai.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Th\u01b0\u1ee3ng H\u1ea3i<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">10th Floor, Biology Building, No. 1326 West Yan'an Road, Changning District, Shanghai, 200052<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/shanghai\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Seoul-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Seoul\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/Seoul.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Seoul<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">T\u1ea7ng 6, S\u1ed1 14, \u0110\u01b0\u1eddng Gangnam-daero 100-gil, Qu\u1eadn Gangnam, Seoul, H\u00e0n Qu\u1ed1c<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/seoul\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Tokyo-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Tokyo\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/Tokyo.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Tokyo<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">101-0041, 2-3-12 Kanda Sudacho, Chiyoda-ku, Tokyo, Japan, 12 KANDA 901<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/tokyo\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Black Shamrock-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Black Shamrock\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/blackshamrock.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">Black Shamrock<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">Guinness Enterprise Centre, Taylor's Lane, Dublin 8, Ireland, D08 T27N<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/black-shamrock\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--ThirdKind Games-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Third Kind Games\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\" \/wp-content\/uploads\/2024\/11\/tkg.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">Third Kind Games<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">The Old School, Holly Walk, Leamington Spa CV32 4JG, United Kingdom<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"https:\/\/thirdkindgames.com\/\" class=\"office-link\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Prague-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Prague\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/prague.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Labs<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Labs - Prague<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">Dock in Three, Boudn\u00edkova 2506\/1, Prague 8 - Palmovka, 180 00, Czech Republic<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/prague\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Warsaw-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Warsaw\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/warsaw.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Virtuos Warsaw<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">ul. Karolkowa 30, 10th floor, 01-207 Warsaw, Poland<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/warsaw\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!--Volmi-->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Volmi\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/11\/volmi-kyiv.png\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title no-translation\" data-no-translation=\"\" data-no-auto-translation=\"\">Volmi<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">Yaroslavska St, 58, Kyiv, 04071, Ukraine<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"\/vi\/studio\/volmi\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n     <!--Pipeworks -->\r\n    <div class=\"office hide\" data-number=\"\" data-location=\"Pipeworks\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/02\/pipeworks-min.webp\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Pipeworks<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">133 W Broadway Eugene, OR, 97401 USA<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"http:\/\/www.pipeworks.com\/\" class=\"office-link\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n        <!--Umanaia -->\r\n        <div class=\"office two-office hide\" data-number=\"\" data-location=\"Umanaia\">\r\n        <div class=\"office-close\"><\/div>\r\n\t\t\t<div class=\"group-office\">\r\n\t\t\t\t<div class=\"umania-office\">\r\n                  \r\n                \t<div class=\"office-tag\">Studio<\/div>\r\n                    <div class=\"office-content\">\r\n                        <h4 class=\"office-title\">Umanaia<\/h4>\r\n                        <div class=\"office-con-box\">\r\n                            <p class=\"office-desc\">4398 Boulevard Saint-Laurent, Suite 103, Montreal, Quebec H2W 1Z5, CA<\/p>\r\n                        <\/div>\r\n                        <div class=\"office-con-link\">\r\n                            <a href=\"https:\/\/www.umanaia.com\/\" class=\"office-link\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\t\t\t\t<div class=\"montreal-office\">\r\n\t\t\t\t\r\n\t\t\t\t\t<div class=\"office-tag\">Studio<\/div>\r\n\t\t\t\t\t<div class=\"office-content\">\r\n\t\t\t\t\t\t<h4 class=\"office-title\">Virtuos Montreal<\/h4>\r\n\t\t\t\t\t\t<div class=\"office-con-box\">\r\n\t\t\t\t\t\t\t<p class=\"office-desc\">4398 Boulevard Saint-Laurent, Suite 103, Montreal, Quebec H2W 1Z5, CA<\/p>\r\n\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t\t<div class=\"office-con-link\">\r\n\t\t\t\t\t\t\t<a href=\"\/vi\/studio\/montreal\/\" class=\"office-link\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t<\/div>\r\n\t\t\t<\/div>\r\n    <\/div>\r\n        \r\n     <div class=\"office hide hide-point-from-map\" data-number=\"\" data-location=\"Umanaia2\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/02\/umania-min.webp\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Umanaia<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">4398 Boulevard Saint-Laurent, Suite 103, Montreal, Quebec H2W 1Z5, CA<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"https:\/\/www.umanaia.com\/\" class=\"office-link\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n    \r\n      <!--Abstraction -->\r\n    <div class=\"office hide hide-point-from-map\" data-number=\"\" data-location=\"Abstraction\">\r\n        <div class=\"office-close\"><\/div>\r\n        <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/02\/abstraction-min.webp\" class=\"office-image\">\r\n        <div class=\"office-tag\">Studio<\/div>\r\n        <div class=\"office-content\">\r\n            <h4 class=\"office-title\">Abstraction<\/h4>\r\n            <div class=\"office-con-box\">\r\n                <p class=\"office-desc\">Deken Mandersplein 2-4, Valkenswaard, 5554 HT, NL <br>31 787 9990<\/p>\r\n            <\/div>\r\n            <div class=\"office-con-link\">\r\n                <a href=\"http:\/\/abstraction.games\/\" class=\"office-link\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/2024\/10\/office-arrow.svg\"><\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7d25efc9 elementor-hidden-desktop elementor-hidden-laptop elementor-hidden-tablet elementor-hidden-mobile_extra elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"7d25efc9\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<link rel=\"stylesheet\" href=\"https:\/\/unpkg.com\/leaflet@1.7.1\/dist\/leaflet.css\" \/>\r\n<style>\r\n\/*.leaflet-overlay-pane img {\r\n    transition: opacity 0.5s ease-in-out;\r\n    opacity: 1;\r\n}\r\n\r\n.leaflet-overlay-pane img.hide {\r\n    opacity: 0;\r\n}*\/\r\n    .hide-point-from-map {\r\n        opacity: 0 !important;\r\n    }\r\n    .leaflet-control-container .leaflet-top.leaflet-left {top:30% !important;}\r\n    #map { height: 90vh; width: 95vw; background-color:transparent;padding:0px; margin:0px auto;}\r\n    .tab-button {padding: 12px 56px;margin-right:0;cursor: pointer;color:#656D72;font-family: \"Plus Jakarta Sans\",sans-serif;font-size: 16px;font-style: normal;font-weight: 600;line-height: 20px;letter-spacing: 1.28px;text-transform: uppercase;position: relative;text-shadow:0 0 10px #25282A;}\r\n    .tab-button:after {content: '';width: 1px;height: 26px;background: #709AAA;position: absolute;right: -3px;top: 53%;transform: translateY(-50%) skew(-20deg);}\r\n    .tab-button.active, .tab-button:focus, .tab-button:hover {color:#E7E9EF;}\r\n    .tab-button:last-child:after {display:none;}\r\n    .tab-buttons {text-align: center;padding: 0px;display: block;z-index: 999;padding-top: 20px;width:100%;display:flex;flex-wrap:wrap;justify-content:center;}\r\n    \/* position: absolute;margin: 0px auto;top:0;left: 50%;transform: translateX(-50%); *\/\r\n    #overlay {\r\n        position: fixed;\r\n        top: 0;\r\n        left: 0;\r\n        width: 100%;\r\n        height: 100%;\r\n        background-color: rgba(30, 40, 42, 0.7);\r\n        display: none; \/* Hidden by default *\/\r\n        \/* pointer-events: none; Allows clicks to pass through *\/\r\n        z-index:1000;\r\n    }\r\n    .office {width:404px;max-width:95%;min-height:500px;border-radius: 16px;position:absolute;z-index:1001;transform:translate(-50%,-50%);left:50%;top:50%;cursor:auto;display: flex;justify-content: space-between;flex-wrap: wrap;align-items: end;}\r\n    .office.hide {display:none;}\r\n    .office.is-show {display:flex;}\r\n    .office-image {position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100% !important;object-fit:cover;object-position:top center;z-index:-1;border-radius: 16px;}\r\n    \/*\r\n    .office:after {content:'';background:url('https:\/\/virtuos.jin.services\/wp-content\/uploads\/2024\/10\/office-gradient.webp') no-repeat center top \/ cover;position:absolute;left:0;bottom:0;right:0;width:100%;height:404px;border-radius: 16px;}\r\n    *\/\r\n    .office-tag {position:relative;z-index: 5;position:absolute;top:16px;left:0;padding:10px;border-radius: 0px 8px 8px 0px;background:#F58220;color:#E7E9EF;display:inline-block;vertical-align:top;text-transform:uppercase;font-size: 14px;font-style: normal;font-weight: 400;line-height: 16px;letter-spacing: 1.96px;font-family: \"Plus Jakarta Sans\",sans-serif;}\r\n    \r\n    .office-content {position:relative;z-index:5;width:100%;padding:20px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;}\r\n    .office-content .office-title {font-size: 40px;font-style: normal;font-weight: 700;line-height: 40px;text-transform: uppercase;color:#E7E9EF;margin:0 0 16px;width:100%;font-family:\"Antonio\",sans-serif;}\r\n    .office-content .office-desc {font-size: 18px;font-style: normal;font-weight: 400;line-height: 28px;color:#E7E9EF;margin:0;font-family: \"Plus Jakarta Sans\",sans-serif;margin-bottom:16px;}\r\n    .office-content .office-desc:last-child {margin-bottom:0;}\r\n    .office-link {background:#F58220;width:60px;height:60px;border-radius:100px;display:flex;align-items:center;justify-content:center;}\r\n    .office-link img {width:24px;}\r\n    .office-con-box {width:70%;}\r\n\r\n    .office-close {width:24px;height:24px;position:absolute;right:0;top:-40px;z-index:888999;cursor:pointer;background:url('\/wp-content\/uploads\/2024\/10\/office-close.svg') no-repeat center top \/ contain;}\r\n    .container {max-width:100%;margin:0 auto;padding:0;overflow:hidden;}\r\n\r\n    \/*Markers*\/\r\n    .custom-marker {width:14px;height:14px;background:#E7E9EF;border-radius:100%;position:relative;transition:all 0.3s linear;webkit-animation: pulse-animation 3s cubic-bezier(.2,1,.2,1) infinite;animation: pulse-animation 3s cubic-bezier(.2,1,.2,1) infinite;}\r\n    .custom-marker:hover {background:#F58220 !important;}\r\n    .leaflet-marker-icon.custom-marker:hover {z-index:2000 !important;background:#F58220 !important;}\r\n    .leaflet-marker-icon.custom-marker:hover .custom-marker {background:#F58220 !important;}\r\n    .is-active > .custom-marker {box-shadow:0;background:#F58220 !important;}\r\n    \r\n    .custom-marker:before {content: '';width: 17px;height: 10px;background-color: #F58220;position: absolute;left: 50%;top: 71%;transform: translate(-50%, -50%);border-radius: 100%;pointer-events: none !important;cursor: auto;z-index: -1;box-shadow: 0 0 12px 3px #F58220;}\r\n    .leaflet-marker-icon {transition: all 0.2s ease-in-out;opacity: 1;}\r\n    .fade-out {opacity: 0;}\r\n    .fade-in {opacity: 1;}\r\n\r\n    \/*Stacked office*\/\r\n    .office.has-column {min-height:0;}\r\n    .office.has-column:after {display:none;}\r\n    .office-col-box {display:flex;flex-wrap:wrap;flex-direction:column;}\r\n    [class^=\"office-box\"] {width:100%;display: flex;justify-content: space-between;flex-wrap: wrap;align-items: end;position:relative;min-height:250px;transition:all 0.3s ease-in-out;border-bottom:2px solid #709AAA;}\r\n    .office-box:after {content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:16px 16px 0 0;background:#005570;transition:all 0.3s ease-in-out;}\r\n    .office-col-box [class^=\"office-box\"] .office-image {object-position:center center;object-fit:cover;border-radius:16px 16px 0 0;}\r\n\r\n    .office-box:last-child {border-bottom:none;}\r\n    .office-box:last-child .office-image,\r\n    .office-box:last-child:after {border-radius: 0 0 16px 16px;}\r\n\r\n    .office-box:hover:after {background:#00557080;}\r\n        .grouped-offices {\r\n    display: flex;\r\n    flex-wrap: wrap;\r\n    gap: 20px; \/* Adjust spacing between offices *\/\r\n    justify-content: center; \/* Center the offices *\/\r\n    padding: 20px;\r\n}\r\n.two-office {\r\n    all: unset;\r\n    width: 808px;\r\n    margin: auto;\r\n    max-width: 95%;\r\n    min-height: 500px;\r\n    z-index: 1001;\r\n    position: absolute;\r\n    transform: translate(-50%, -50%);\r\n    left: 50%;\r\n    top: 50%;\r\n    cursor: auto;\r\n\r\n}\r\n.group-office {\r\n      display: grid;\r\n    grid-template-columns: repeat(2, 1fr);\r\n    grid-template-rows: 1fr; \r\n    gap: 16px;\r\n}\r\n.umania-office {\r\n  background: url('\/wp-content\/uploads\/2025\/02\/umania-min.webp');\r\n  background-size: cover;\r\n  background-repeat: no-repeat;\r\n  background-position: center center;\r\n  \t   display: flex;\r\n    justify-content: space-between;\r\n    flex-wrap: wrap;\r\n    align-items: end;\r\n      border-radius: 16px;\r\n      position: relative;\r\n\r\n}\r\n.montreal-office {\r\n  background:  url('\/wp-content\/uploads\/2024\/11\/montreal.png');\r\n  background-size: cover;\r\n  background-repeat: no-repeat;\r\n  background-position: center center;\r\n  \t   display: flex;\r\n    justify-content: space-between;\r\n    flex-wrap: wrap;\r\n    align-items: end;\r\n      border-radius: 16px;\r\nposition: relative;\r\n    \r\n}\r\n    @keyframes pulse-animation {\r\n        0% {\r\n            box-shadow: 0 0 0 0px rgba(245, 130, 32, 1);\r\n        }\r\n        100% {\r\n            box-shadow: 0 0 0 14px rgba(245, 130, 32, 0);\r\n        }\r\n    }\r\n\r\n    @media only screen and (max-width:1440px) {\r\n        .tab-buttons {padding-top:0 !important;}\r\n    }\r\n  \/* @media only screen and (max-width:1200px) {\r\n       .custom-marker {\r\n            width: 10px !important;\r\n            height: 10px !important;\r\n        }\r\n        .custom-marker:before {\r\n            width: 12px;\r\n            height: 8px;\r\n        }\r\n    } *\/\r\n      \r\n    @media only screen and (max-width:1024px) {\r\n        .tab-buttons {top:-1%;}\r\n        .tab-button {font-size: 14px;line-height: 18px;padding:12px 20px;}\r\n        .office {top:50%;}\r\n          #map { \r\n            height: 65vh;\r\n            width: 83vw;\r\n        }\r\n        .custom-marker:before {\r\n            width: 12px;\r\n            height: 8px;\r\n        }\r\n    }\r\n    @media only screen and (max-width:767px) {\r\n        .tab-button {padding:12px 20px;}\r\n        .office {\r\n            max-width: 80%;\r\n            min-height: 410px;\r\n            width: 100%;\r\n        }\r\n        .office-close {\r\n            top: -15px;\r\n        }\r\n        .office-tag {\r\n            top: 40px;\r\n        }\r\n        .office img {\r\n            height: 90% !important;\r\n        }\r\n           #map { \r\n            height: 60vh;\r\n            width: 85vw;\r\n        }\r\n        .office-content .office-title {\r\n            font-size: 24px;\r\n        }\r\n        .office-content .office-desc {\r\n            font-size: 12px;\r\n            line-height: 16px;\r\n        }\r\n        .office-link {\r\n            width: 40px;\r\n            height: 40px;\r\n        }\r\n        .office-content {\r\n            top: -30px;\r\n        }\r\n        .custom-marker:before {\r\n            width: 8px;\r\n            height: 5px;\r\n        }\r\n        .group-office {\r\n            gap: 8px;\r\n        }  \r\n        .office.two-office {\r\n            max-width: 100%;\r\n        }\r\n \r\n          \r\n\r\n    }\r\n    @media only screen and (max-width:480px) {\r\n     \/*   .tab-button:nth-child(3):after {display:none !important;} *\/\r\n           .office.two-office .office-content {\r\n               padding: 10px !important;\r\n               top: 0 !important;\r\n           }\r\n           .office.two-office .office-tag {\r\n               top: 20px !important;\r\n           }\r\n    }\r\n\r\n    #hover-box {\r\n        position: absolute;\r\n        border: 2px solid black;\r\n        background-color: #000; \/* Slightly transparent black *\/\r\n        pointer-events: none; \/* So it doesn\u2019t block interactions *\/\r\n        display: none !important; \/* Initially hidden - remove important to test the mapped hovered region*\/\r\n        z-index: 9999;\r\n    }\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7bf3056c elementor-hidden-desktop elementor-hidden-laptop elementor-hidden-tablet elementor-hidden-mobile_extra elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"7bf3056c\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script src=\"https:\/\/unpkg.com\/leaflet@1.7.1\/dist\/leaflet.js\"><\/script>\r\n<script>\r\n\r\n\/\/ Define the different URLs for each region\r\nvar maxZoom = 5;\r\nvar minZoom = 3;\r\nvar regionImageUrls = {\r\n    'all': 'https:\/\/www.virtuosgames.com\/wp-content\/uploads\/2024\/10\/map-img-1.svg',\r\n    'asia': 'https:\/\/www.virtuosgames.com\/wp-content\/uploads\/2025\/04\/map_working-file_full-asia1-1.svg',\r\n    'ea': 'https:\/\/www.virtuosgames.com\/wp-content\/uploads\/2024\/10\/map-img-ea-1.svg',\r\n    'eu': 'https:\/\/www.virtuosgames.com\/wp-content\/uploads\/2024\/10\/map-img-eu-1.svg',\r\n    'na': 'https:\/\/www.virtuosgames.com\/wp-content\/uploads\/2024\/10\/map-img-na-1.svg',\r\n};\r\n\/\/ Define the region boundaries (latitude\/longitude or projected coordinates based on your map)\r\nvar regions = {\r\n    'asia': { xMin: 1900, xMax: 2350, yMin: 590, yMax: 830 },\r\n    'ea': { xMin: 1820, xMax: 2260, yMin: 400, yMax: 630 },\r\n    'eu': { xMin: 1200, xMax: 1600, yMin: 230, yMax: 530 },\r\n    'na': { xMin: 0, xMax: 1080, yMin: 10, yMax: 750 },\r\n};\r\n\/\/ Reference to the hover box\r\nvar hoverBox = document.getElementById('hover-box');\r\nvar clickingOffice = false;\r\nvar markerIcon;\r\n\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n\r\n    \/\/ Initialize the map on the 'map' div\r\n    map = L.map('map', {\r\n        minZoom: minZoom,\r\n        maxZoom: maxZoom,\r\n        center: [0, 0],\r\n        zoom: 2, \/\/ This will be overridden by setDefaultZoom()\r\n        crs: L.CRS.Simple,\r\n        attributionControl: false,\r\n        scrollWheelZoom: false,\r\n        zoomControl: false,\r\n    });\r\n\r\n    \/\/ Function to set default zoom level based on viewport width\r\n    function setDefaultZoom() {\r\n        var viewportWidth = window.innerWidth;\r\n        console.log('defaultzoomtriggered');\r\n        if (viewportWidth >= 1025) {\r\n            map.options.minZoom = 3;\r\n            map.setZoom(3);\r\n        } else if (viewportWidth < 1025 && viewportWidth >= 768) {\r\n            map.options.minZoom = 2;\r\n            map.setZoom(2);\r\n        } else {\r\n            map.options.minZoom = 1;\r\n            map.setZoom(1);\r\n        }\r\n        \r\n    }\r\n\r\n    \/\/ Call the function initially to set the zoom level\r\n    setDefaultZoom();\r\n\r\n    \/\/ Listen for window resize and update zoom level accordingly\r\n    window.addEventListener('resize', setDefaultZoom);\r\n\r\n    \/\/ initialize marker size\r\n    var iconMarkerSize = [14,14];\r\n    var markers = [];\r\n    var marker;\r\n\r\n    \/\/ Define the dimensions and URL of your custom map image\r\n    var w = 2560, h = 1200, url = 'https:\/\/www.virtuosgames.com\/wp-content\/uploads\/2024\/10\/map-img-1.svg';\r\n    var southWest = map.unproject([0, h], maxZoom - 1);\r\n    var northEast = map.unproject([w, 0], maxZoom - 1);\r\n    var bounds = new L.LatLngBounds(southWest, northEast);\r\n    \r\n    \/\/ Add the image overlay to the map\r\n    L.imageOverlay(url, bounds).addTo(map);\r\n    \r\n    \/\/ Fit the map to the bounds\r\n    map.fitBounds(bounds);\r\n    \r\n    \/\/ Set the max bounds to restrict panning\r\n    map.setMaxBounds(bounds);\r\n    \r\n    \/\/ Add maxBoundsViscosity for smoother bounds limitation\r\n    map.options.maxBoundsViscosity = 1.0; \/\/ Makes the bounds \"sticky\"\r\n\r\n    \/\/initialize mapMarkers function\r\n    mapMarkers();\r\n    \/\/disable dragging at first load\r\n    toggleDragging('all');\r\n\r\n    \/\/ initialize markers for each office\r\n    var glasseggMarker, sparxMarker, beyondFxMarker, counterpunchMarker, parisMarker, montpellierMarker, sanFranciscoMarker, chengduMarker, shangHaiMarker, seoulMarker, tokyoMarker, blackShamrockMarker, pragueMarker, warsawMarker, volmiMarker, thirdKindGamesMarker, pipeworksMarker, umanaiaMarker, abstractionMarker, xianMarker;\r\n\r\n    function mapMarkers() {\r\n        \/\/ Loop through all .office elements and create markers based on data-location\r\n        var officeElements = document.querySelectorAll('.office');\r\n        officeElements.forEach(function(officeElement) {\r\n            var locationName = officeElement.getAttribute('data-location');\r\n            var dataNumber = officeElement.getAttribute('data-number') || \"\";\r\n            var pos = pinMap(locationName);\r\n            var hidePin = officeElement.classList.contains('hide-point-from-map');\r\n\r\n            \/\/ Create a div for the marker\r\n            var markerDiv = document.createElement('div');\r\n            var classMarker = 'custom-marker';\r\n            \r\n            markerDiv.className = 'custom-marker'; \/\/ Class for styling\r\n            \r\n            if (hidePin) {\r\n               classMarker += ' hide-point-from-map'; \/\/ Hide the marker if needed\r\n            }\r\n\r\n            \/\/ Create the marker using L.divIcon\r\n            marker = L.marker(map.unproject([pos[0], pos[1]], maxZoom - 1), {\r\n                icon: L.divIcon({\r\n                    className: classMarker, \/\/ Class for the div\r\n                    html: markerDiv.outerHTML, \/\/ Outer HTML of the div\r\n                    iconSize: iconMarkerSize,\r\n                })\r\n            }).addTo(map);\r\n\r\n            \/\/ Set the data-number attribute directly on the marker's icon element\r\n            marker.getElement().setAttribute('data-number', dataNumber);\r\n            markers.push(marker); \/\/ Store reference to the marker\r\n\r\n            switch(locationName) {\r\n                case \"Glassegg\":\r\n                    glasseggMarker = marker;\r\n                    break;\r\n                case \"Glassdalat\":\r\n                    glassdalatMarker = marker;\r\n                    break;\r\n                case \"Sparx\":\r\n                    sparxMarker = marker;\r\n                    break;\r\n                case \"Beyond Fx\":\r\n                    beyondFxMarker = marker;\r\n                    break;\r\n                case \"Counterpunch\":\r\n                    counterpunchMarker = marker;\r\n                    break;\r\n                case \"Paris\":\r\n                    parisMarker = marker;\r\n                    break;\r\n                case \"Montpellier\":\r\n                    montpellierMarker = marker;\r\n                    break;\r\n                case \"Lyon\":\r\n                    lyonMarker = marker;\r\n                case \"Abstraction\":\r\n                    abstractionMarker = marker;                  \r\n                    break;    \r\n               \r\n                case \"Pipeworks\":\r\n                    pipeworksMarker = marker;\r\n                    break;                  \r\n                case \"San Francisco\":\r\n                    sanFranciscoMarker = marker;\r\n                    break;\r\n                case \"Umanaia\":\r\n                    umanaiaMarker = marker;\r\n                    break;                \r\n                case \"Chengdu\":\r\n                    chengduMarker = marker;\r\n                    break;\r\n                case \"Shanghai\":\r\n                    shangHaiMarker = marker;\r\n                    break;\r\n                case \"Seoul\":\r\n                    seoulMarker = marker;\r\n                    break;\r\n                case \"Tokyo\":\r\n                    tokyoMarker = marker;\r\n                    break;\r\n                case \"Black Shamrock\":\r\n                    blackShamrockMarker = marker;\r\n                    break;\r\n                case \"Third Kind Games\":\r\n                    thirdKindGamesMarker = marker;\r\n                    break;\r\n                case \"Prague\":\r\n                    pragueMarker = marker;\r\n                    break;\r\n                case \"Warsaw\":\r\n                    warsawMarker = marker;\r\n                    break;\r\n                case \"Volmi\":\r\n                    volmiMarker = marker;\r\n                    break;\r\n                case \"Xian\":\r\n                    xianMarker = marker;\r\n\t\t\t\t\tbreak;\r\n            }\r\n\r\n            \/\/ Add click event to show the office element when the marker is clicked\r\n            marker.on('click', function() {\r\n                var headerMenu = document.querySelector('.header-top-menu');\r\n\r\n                \/\/ Hide all offices first\r\n                officeElements.forEach(function(el) {\r\n                    el.classList.remove('is-show');\r\n                    el.classList.add('hide');\r\n                });\r\n\r\n                \/\/ Show the clicked office\r\n                officeElement.classList.remove('hide');\r\n                officeElement.classList.add('is-show');\r\n                \r\n                \/\/ Check if the office element is now visible and show\/hide overlay accordingly\r\n                if (officeElement.classList.contains('is-show')) {\r\n                    showOverlay(); \/\/ Show overlay when office is visible\r\n                    headerMenu.classList.add('is-show');\r\n                } else {\r\n                    hideOverlay(); \/\/ Hide overlay if the office is not visible\r\n                    headerMenu.classList.remove('is-show');\r\n                }\r\n\r\n                \/\/ Optionally center the view on the marker\r\n                \/\/ map.setView(marker.getLatLng(), 5); \/\/ Adjust zoom level if needed\r\n\r\n                \/\/ Add the .is-active class to the clicked marker\r\n                marker.getElement().classList.add('is-active');\r\n                \/\/ Scroll to the #global-map div\r\n                document.getElementById('global-map').scrollIntoView({ behavior: 'smooth' });\r\n\r\n                \/\/ Remove .is-active class from other markers\r\n                markers.forEach(function(m) {\r\n                    if (m !== marker) { \/\/ Only remove from other markers\r\n                        markerIcon = m.getElement();\r\n                        if (markerIcon) {\r\n                            markerIcon.classList.remove('is-active');\r\n                        }\r\n                    }\r\n                });\r\n            });\r\n\r\n            marker.addTo(map);\r\n\r\n        });\r\n    }\r\n    \r\n    \/\/ Close the office modal when the close button is clicked\r\n    document.querySelectorAll('.office-close').forEach(function(closeButton) {\r\n        closeButton.addEventListener('click', function() {\r\n            var officeElement = closeButton.closest('.office');\r\n            officeElement.classList.remove('is-show');\r\n            officeElement.classList.add('hide');\r\n            hideOverlay();\r\n            removeMarkers(markers);\r\n        });\r\n    });\r\n\r\n    \/\/ Close the office modal when the overlay is clicked\r\n    document.getElementById('overlay').addEventListener('click', function() {\r\n        var officeElement = document.querySelector('.office.is-show');\r\n        if (officeElement) {\r\n            officeElement.classList.remove('is-show');\r\n            officeElement.classList.add('hide');\r\n        }\r\n        hideOverlay();\r\n        removeMarkers(markers);\r\n    });\r\n\r\n    \/\/ Remove the is-active class from all markers\r\n    function removeMarkers(markers) {\r\n        markers.forEach(function(m) {\r\n            \/\/ Check if the marker is a divIcon and contains the custom-marker class\r\n            markerIcon = m.getElement();\r\n            if (markerIcon && markerIcon.classList.contains('custom-marker')) {\r\n                markerIcon.classList.remove('is-active');\r\n            }\r\n        });\r\n    }\r\n\r\n    \/\/ Function to remove all fade classes\r\n    function resetFadeClasses(markerIcon) {\r\n        markerIcon.classList.remove('fade-in');\r\n        markerIcon.classList.remove('fade-out');\r\n    }\r\n\r\n    \/\/ Zoomstart function\r\n    map.on('zoomstart', function () {\r\n        markers.forEach(marker => {\r\n            const markerIcon = marker.getElement();\r\n            if (markerIcon) {\r\n                resetFadeClasses(markerIcon);  \/\/ Remove any previous transitions\r\n                markerIcon.classList.add('fade-out');  \/\/ Fade out\r\n            }\r\n        });\r\n    });\r\n\r\n    \/\/ Function to update marker icon size based on zoom level\r\n    function updateMarkerIconSize(marker, size) {\r\n        const currentIcon = marker.options.icon;\r\n        const newIcon = L.divIcon({\r\n            className: currentIcon.options.className,\r\n            html: `<div class=\"custom-marker\" style=\"width: ${size[0]}px; height: ${size[1]}px;\"><\/div>`, \/\/ Apply size directly here\r\n            iconSize: size\r\n        });\r\n\r\n        \/\/ Set the new icon to the marker\r\n        marker.setIcon(newIcon);\r\n    }\r\n\r\n    \/\/ Log coordinates when zooming in\/out\r\n    map.on('zoomend', function() {\r\n        \/\/ Scroll to the #global-map div\r\n        \/\/ document.getElementById('global-map').scrollIntoView({ behavior: 'smooth' });\r\n        var center = map.getCenter(); \/\/ Get the current center of the map\r\n\r\n        \/* Uncomment console.log to check the coordinates *\/\r\n        console.log(\"Map center at zoom level \" + map.getZoom() + \": \" + center);\r\n\r\n        \/\/ Determine icon size based on the current zoom level\r\n        let newSize;\r\n        if (map.getZoom() === 1) {\r\n            newSize = [8, 8];\r\n        } else if (map.getZoom() === 2) {\r\n            newSize = [10, 10];\r\n        } else if (map.getZoom() === 3 || map.getZoom() === 4) {\r\n            newSize = [14, 14];\r\n        } else if (map.getZoom() === 5) {\r\n            newSize = [14, 14];\r\n        }\r\n\r\n        \/\/ Add or remove maxBounds based on zoom level\r\n        \/\/ if (map.getZoom() === 2) {\r\n        \/\/     map.dragging.enable();\r\n        \/\/ } else {\r\n        \/\/     map.dragging.disable();\r\n        \/\/ }\r\n\r\n        markers.forEach(marker => {\r\n            const markerIcon = marker.getElement();\r\n            updateMarkerIconSize(marker, newSize); \/\/ update markersizes\r\n\r\n            if (markerIcon) {\r\n                resetFadeClasses(markerIcon);  \/\/ Remove any previous transitions\r\n                markerIcon.classList.add('fade-out');  \/\/ Reapply fade-out\r\n                \/\/ Add a delay before reapplying fade-out\r\n                    \r\n                \/\/ After 0.5 seconds, fade-in the marker\r\n                setTimeout(function () {\r\n                    resetFadeClasses(markerIcon);  \/\/ Remove fade-out again\r\n                    markerIcon.classList.add('fade-in');  \/\/ Fade in\r\n                }, 500);  \/\/ 0.5 seconds delay\r\n                    \r\n            }\r\n        });\r\n\r\n        if(glasseggMarker || glassdalatMarker || sparxMarker || beyondFxMarker || counterpunchMarker || parisMarker || montpellierMarker || lyonMarker || abstractionMarker || pipeworksMarker || sanFranciscoMarker || umanaiaMarker || chengduMarker || shangHaiMarker || seoulMarker || tokyoMarker || blackShamrockMarker || pragueMarker || warsawMarker || volmiMarker || thirdKindGamesMarker || xianMarker) {\r\n            \/\/ point to pinMap string variables\r\n            var glassEggpos = pinMap('Glassegg');\r\n            var glassdalatpos = pinMap('Glassdalat');\r\n            var sparxPos = pinMap('Sparx');\r\n            var beyondFxPos = pinMap('Beyond Fx');\r\n            var counterpunchPos = pinMap('Counterpunch');\r\n            var parisPos = pinMap('Paris');\r\n            var montpellierPos = pinMap('Montpellier');\r\n            var pipeworksPos = pinMap('Pipeworks');\r\n            var lyonPos = pinMap('Lyon');\r\n            var abstractionPos = pinMap('Abstraction');\r\n            var sanFranciscoPos = pinMap('San Francisco');\r\n            var umanaiaPos = pinMap('Umanaia');\r\n            var chengduPos = pinMap('Chengdu');\r\n            var shangHaiPos = pinMap('Shanghai');\r\n            var seoulPos = pinMap('Seoul');\r\n            var tokyoPos = pinMap('Tokyo');\r\n            var blackShamrockPos = pinMap('Black Shamrock');\r\n            var praguePos = pinMap('Prague');\r\n            var warsawPos = pinMap('Warsaw');\r\n            var volmiPos = pinMap('Volmi');\r\n            var thirdKindGamesPos = pinMap('Third Kind Games');\r\n            var xianPos = pinMap('Xian');\r\n            \r\n            \/\/ mobile\r\n            if (map.getZoom() === 1) {\r\n                glassEggpos[1] -= 70;\r\n               \r\n                sparxPos[1] -= 70;\r\n                parisPos[0] += 30;\r\n                parisPos[1] -= 120;\r\n                montpellierPos[0] += 30;\r\n                montpellierPos[1] -= 130;\r\n\r\n              \r\n                pipeworksPos[1] -= 340;\r\n       \r\n           \r\n                counterpunchPos[0] += 40;\r\n                counterpunchPos[1] -= 130;\r\n                sanFranciscoPos[0] += 40;\r\n                sanFranciscoPos[1] -= 160;\r\n                beyondFxPos[0] += 60;\r\n                beyondFxPos[1] -= 120;\r\n\r\n                lyonPos[0] += 40;\r\n                lyonPos[1] -= 140;\r\n                abstractionPos[1] -= 450;\r\n                umanaiaPos[1] -= 380;\r\n                chengduPos[0] -= 20;\r\n                chengduPos[1] -= 220;\r\n                shangHaiPos[1] -= 260;\r\n                seoulPos[1] -= 280;\r\n                tokyoPos[1] -= 290;\r\n                blackShamrockPos[1] -= 300;\r\n                praguePos[0] += 50;\r\n                praguePos[1] -= 330;\r\n                warsawPos[0] += 50;\r\n                warsawPos[1] -= 370;\r\n                volmiPos[0] += 60;\r\n                volmiPos[1] -= 420;\r\n                thirdKindGamesPos[1] -= 300;\r\n            }\r\n            \/\/ tablet\r\n            if (map.getZoom() === 2) {\r\n                glassEggpos[0] -= 0;\r\n                glassEggpos[1] -= 40;\r\n               \r\n                sparxPos[1] -= 50;\r\n                beyondFxPos[1] -= 50;\r\n                counterpunchPos[1] -= 60;\r\n                parisPos[1] -= 60;\r\n                montpellierPos[1] -= 60;\r\n                lyonPos[1] -= 65;\r\n                abstractionPos[1] -= 140;\r\n              \r\n                pipeworksPos[1] -= 160;\r\n                \r\n                sanFranciscoPos[0] += 10;\r\n                sanFranciscoPos[1] -= 90;\r\n\r\n                umanaiaPos[1] -= 140;\r\n                chengduPos[1] -= 70;\r\n                shangHaiPos[1] -= 80;\r\n\r\n                seoulPos[1] -= 100;\r\n                tokyoPos[1] -= 100;\r\n                blackShamrockPos[1] -= 90;\r\n                thirdKindGamesPos[0] += 5;\r\n                thirdKindGamesPos[1] -= 130;\r\n                praguePos[1] -= 90;\r\n                warsawPos[1] -= 100;\r\n                volmiPos[1] -= 130;\r\n            }\r\n             \/\/ First Zoom\r\n            if (map.getZoom() === 4) {\r\n                glassEggpos[0] -= 3;\r\n                glassEggpos[1] += 30;\r\n                glassdalatpos[0] += 0;\r\n                glassdalatpos[1] += 7;\r\n                sparxPos[0] += 3;\r\n                sparxPos[1] += 35;\r\n                beyondFxPos[1] += 30;\r\n                beyondFxPos[0] -= 5;\r\n                counterpunchPos[1] += 35;\r\n                counterpunchPos[0] -= 8;\r\n                parisPos[1] += 60;\r\n                montpellierPos[1] += 60;\r\n                lyonPos[1] += 60;\r\n                abstractionPos[1] += 170;\r\n      \r\n                pipeworksPos[0] -= 20;\r\n                pipeworksPos[1] += 160;\r\n\r\n                sanFranciscoPos[0] -= 10;\r\n                sanFranciscoPos[1] += 60;\r\n\r\n                umanaiaPos[1] += 150;\r\n                chengduPos[1] += 90;\r\n                shangHaiPos[1] += 115;\r\n\r\n                seoulPos[1] += 110;\r\n                tokyoPos[1] += 115;\r\n                blackShamrockPos[1] += 130;\r\n                thirdKindGamesPos[1] += 134;\r\n                praguePos[1] += 150;\r\n                warsawPos[1] += 145;\r\n                volmiPos[1] += 180;\r\n                xianPos[1] += 25;\r\n            }\r\n            \/\/ Second Zoom\r\n            if (map.getZoom() === 5) {\r\n                glassEggpos[0] -= 3;\r\n                glassEggpos[1] += 45;\r\n                glassdalatpos[0] += 10;\r\n                glassdalatpos[1] += 40;   \r\n                sparxPos[0] += 4;\r\n                sparxPos[1] += 58;\r\n\r\n                beyondFxPos[1] += 55\r\n                beyondFxPos[0] -= 5;\r\n                counterpunchPos[1] += 60;\r\n                counterpunchPos[0] -= 3;\r\n                parisPos[1] += 90;\r\n                montpellierPos[1] += 90;\r\n                lyonPos[1] += 90;\r\n                abstractionPos[1] += 250;\r\n              \r\n                pipeworksPos[0] -= 25;\r\n                pipeworksPos[1] += 240;\r\n                sanFranciscoPos[0] -= 10;\r\n                sanFranciscoPos[1] += 100;\r\n\r\n                umanaiaPos[1] += 265;\r\n                chengduPos[1] += 120;\r\n                shangHaiPos[1] +=175;\r\n                seoulPos[1] += 165;\r\n                tokyoPos[1] += 170;\r\n                blackShamrockPos[1] += 190;\r\n                thirdKindGamesPos[1] += 205;\r\n                praguePos[1] += 220;\r\n                warsawPos[1] += 220;\r\n                volmiPos[1] += 265;\r\n            }\r\n\r\n            \/\/ re-initialize position when zooming\r\n            glasseggMarker.setLatLng(map.unproject(glassEggpos, maxZoom - 1));\r\n            glassdalatMarker.setLatLng(map.unproject(glassdalatpos, maxZoom - 1));\r\n            parisMarker.setLatLng(map.unproject(parisPos, maxZoom - 1));\r\n            montpellierMarker.setLatLng(map.unproject(montpellierPos, maxZoom - 1));           \r\n            lyonMarker.setLatLng(map.unproject(lyonPos, maxZoom - 1));\r\n            abstractionMarker.setLatLng(map.unproject(abstractionPos, maxZoom - 1));\r\n          \r\n            pipeworksMarker.setLatLng(map.unproject(pipeworksPos, maxZoom - 1));\r\n            sparxMarker.setLatLng(map.unproject(sparxPos, maxZoom - 1));\r\n            beyondFxMarker.setLatLng(map.unproject(beyondFxPos, maxZoom - 1));\r\n            counterpunchMarker.setLatLng(map.unproject(counterpunchPos, maxZoom - 1));\r\n            sanFranciscoMarker.setLatLng(map.unproject(sanFranciscoPos, maxZoom - 1));\r\n            umanaiaMarker.setLatLng(map.unproject(umanaiaPos, maxZoom - 1));\r\n            chengduMarker.setLatLng(map.unproject(chengduPos, maxZoom - 1));\r\n            shangHaiMarker.setLatLng(map.unproject(shangHaiPos, maxZoom - 1));\r\n            seoulMarker.setLatLng(map.unproject(seoulPos, maxZoom - 1));\r\n            tokyoMarker.setLatLng(map.unproject(tokyoPos, maxZoom - 1));\r\n            blackShamrockMarker.setLatLng(map.unproject(blackShamrockPos, maxZoom - 1));\r\n            thirdKindGamesMarker.setLatLng(map.unproject(thirdKindGamesPos, maxZoom - 1));\r\n            pragueMarker.setLatLng(map.unproject(praguePos, maxZoom - 1));\r\n            warsawMarker.setLatLng(map.unproject(warsawPos, maxZoom - 1));\r\n            volmiMarker.setLatLng(map.unproject(volmiPos, maxZoom - 1));\r\n            xianMarker.setLatLng(map.unproject(xianPos, maxZoom - 1));\r\n        }\r\n\r\n    });\r\n\r\n    \/\/ Log coordinates based on cursor position\r\n        map.on('mousemove', function (e) {\r\n        var cursorCoordinates = e.latlng;\r\n        var projectedPos = map.project(cursorCoordinates, maxZoom - 1);\r\n        var unprojectedPos = map.unproject(projectedPos, maxZoom - 1);\r\n\r\n         \/* Uncomment console.log to check the coordinates \r\n            Legend:\r\n            projectedPos -> used for placing the exact marker location in the map (pinMap)\r\n            cursorCoordinates -> used for zoomtoRegion() to zoomIn exact to the specific region\r\n        *\/\r\n        \/\/ console.log('PinMap Location Coordinates:', projectedPos);\r\n        \/\/ console.log('Unprojected coordinates:', unprojectedPos);\r\n    \r\n        \/\/ Loop through each region to detect hovering\r\n        var regionFound = false;\r\n        for (var region in regions) {\r\n            var regionBounds = regions[region];\r\n    \r\n            \/\/ Treat 'ea' (East Asia) as part of 'asia'\r\n            if (region === 'ea') {\r\n                region = 'asia';\r\n            }\r\n    \r\n            if (\r\n                projectedPos.x >= regionBounds.xMin &&\r\n                projectedPos.x <= regionBounds.xMax &&\r\n                projectedPos.y >= regionBounds.yMin &&\r\n                projectedPos.y <= regionBounds.yMax\r\n            ) {\r\n                \/\/ Display the hover-box when inside a region\r\n                hoverBox.style.display = 'block';\r\n    \r\n                \/\/ Convert projected map coordinates to screen pixels\r\n                var northWest = map.latLngToContainerPoint(\r\n                    map.unproject([regionBounds.xMin, regionBounds.yMin], maxZoom - 1)\r\n                );\r\n                var southEast = map.latLngToContainerPoint(\r\n                    map.unproject([regionBounds.xMax, regionBounds.yMax], maxZoom - 1)\r\n                );\r\n    \r\n                \/\/ Set the hover-box size and position\r\n                hoverBox.style.left = northWest.x + 'px';\r\n                hoverBox.style.top = northWest.y + 'px';\r\n                hoverBox.style.width = southEast.x - northWest.x + 'px';\r\n                hoverBox.style.height = southEast.y - northWest.y + 'px';\r\n    \r\n                \/\/ Change the map image based on the hovered region\r\n                changeMap(region);\r\n    \r\n                regionFound = true;\r\n                break;\r\n            }\r\n        }\r\n    \r\n        \/\/ Hide the hover-box if not hovering over any region\r\n        if (!regionFound) {\r\n            hoverBox.style.display = 'none';\r\n            \/\/ Reset map to default if no region is found\r\n            resetMap();\r\n        }\r\n    });\r\n   \r\n\r\n    \/\/ Overlay control\r\n    var overlay = document.getElementById('overlay');\r\n\r\n    \/\/ Show overlay after a marker is clicked\r\n    function showOverlay() {\r\n        overlay.style.display = 'block';\r\n    }\r\n\r\n    \/\/ Hide overlay when .officeElement is hidden\r\n    function hideOverlay() {\r\n        overlay.style.display = 'none'; \/\/ Ensure it's hidden when called\r\n    }\r\n\r\n    \/\/ Zoom to specific region based on button click\r\n    document.querySelectorAll('.tab-button').forEach(function(button) {\r\n        button.addEventListener('click', function() {\r\n            \/\/ Remove the active class from all buttons\r\n            document.querySelectorAll('.tab-button').forEach(function(btn) {\r\n                btn.classList.remove('active');\r\n            });\r\n\r\n            \/\/ Add the active class to the clicked button\r\n            this.classList.add('active');\r\n\r\n            \/\/ Get the region and zoom to it\r\n            var region = this.getAttribute('data-region');\r\n            zoomToRegion(region);\r\n\r\n            \/\/ Scroll to the #global-map div with an offset\r\n            const mapElement = document.getElementById('global-map');\r\n            mapElement.scrollIntoView({ behavior: 'smooth' });\r\n        });\r\n    });\r\n\r\n    \/\/ document.getElementById('exit-map-btn').addEventListener('click', function(e) {\r\n    \/\/     e.preventDefault(); \/\/ Prevent default anchor behavior\r\n\r\n    \/\/     let nextSection = document.querySelector('.next-section');\r\n    \/\/     if (nextSection) {\r\n    \/\/         nextSection.scrollIntoView({ behavior: 'smooth' });\r\n    \/\/     }\r\n    \/\/ });\r\n\r\n    \/\/ Add click listener to the overlay\r\n    overlay.addEventListener('click', function() {\r\n        \/\/ Hide all office elements by adding the .hide class\r\n        var officeElements = document.querySelectorAll('.office');\r\n        officeElements.forEach(function(officeElement) {\r\n            officeElement.classList.add('hide');\r\n            officeElement.classList.remove('is-show'); \/\/ Remove the is-show class if it's currently active\r\n        });\r\n        hideOverlay();\r\n        \/\/ Remove the .is-active class from all markers\r\n        markers.forEach(function(marker) {\r\n            markerIcon = marker.getElement();\r\n            if (markerIcon) {\r\n                markerIcon.classList.remove('is-active');\r\n            }\r\n        });\r\n    });\r\n\r\n});\r\n\r\n\/**\r\n * FUNCTIONS\r\n**\/\r\n \r\n\/\/ Define the pinMap function to return positions based on data-location attribute\r\nfunction pinMap(location) {\r\n    switch (location) {\r\n        case 'Singapore':\r\n            return [1992, 759];\r\n        case 'Kuala Lumpur':\r\n                return [1979, 740];\r\n        case 'Xian':\r\n            return [2008, 525];\r\n        case 'Glassegg':\r\n            return [2010, 635];\r\n        case 'Glassdalat':\r\n            return [2010, 630];\r\n        case 'Sparx':\r\n            return [2000, 615];\r\n        case 'Beyond Fx':\r\n            return [370, 460];\r\n        case 'Counterpunch':\r\n            return [360, 455];\r\n        case 'Paris':\r\n            return [1322, 315];\r\n        case 'Montpellier':\r\n            return [1350, 350];       \r\n        case 'Lyon':\r\n            return [1380, 320];\r\n        case 'Abstraction':\r\n            return [1355, 85];       \r\n        case 'Pipeworks':\r\n            return [365, 120];\r\n        case 'San Francisco':\r\n            return [330, 320];\r\n        case 'Umanaia':\r\n            return [675, 118];\r\n        case 'Chengdu':\r\n            return [1970, 400];\r\n        case 'Shanghai':\r\n            return [2085, 350];\r\n        case 'Seoul':\r\n            return [2140, 300];\r\n        case 'Tokyo':\r\n            return [2215, 305];\r\n        case 'Black Shamrock':\r\n            return [1280, 145];\r\n        case 'Third Kind Games':\r\n            return [1310, 135];\r\n        case 'Prague':\r\n            return [1425, 150];\r\n        case 'Warsaw':\r\n            return [1465, 110];\r\n        case 'Volmi':\r\n            return [1530, 95];     \r\n        default:\r\n            return [0, 0]; \/\/ Default position if location not found\r\n    }\r\n}\r\n\r\n\/\/ Function to toggle dragging based on zoom level and viewport width\r\nfunction toggleDragging(region) {\r\n    var viewportWidth = window.innerWidth;\r\n\r\n    \/\/ Enable dragging if viewport width is between 1025px and 1300px\r\n    if (viewportWidth >= 1025 && viewportWidth <= 1300) {\r\n        map.dragging.enable();\r\n        console.log('Dragging enabled for viewport between 1025px and 1300px');\r\n        return;\r\n    }\r\n\r\n    if (region === 'all') {\r\n        \/\/ Disable zooming and dragging for \"All\" region on desktop\r\n        map.scrollWheelZoom.disable();\r\n        if (viewportWidth > 767) {\r\n            map.dragging.disable();\r\n        } else {\r\n            map.dragging.enable(); \/\/ Allow dragging on mobile\r\n        }\r\n    } else {\r\n        \/\/ only enable() zooming when desired\r\n        map.scrollWheelZoom.disable();\r\n        \/\/ Enable dragging for other regions\r\n        map.dragging.enable();\r\n    }\r\n\r\n    console.log('region is: ', region);\r\n}\r\n\r\n\/\/ Define the zoomToRegion function globally so it can be accessed from the HTML\r\nfunction zoomToRegion(region) {\r\n    \r\n    var regionCoords = {\r\n        'all': map.unproject([1280, 600], maxZoom - 1),\r\n        'asia': L.latLng(-39.234375, 127.46875), \/\/ Adjusted to cover both East and Southeast Asia\r\n        'na': L.latLng(-21.4375, 34.875),\r\n        'eu': map.unproject([1500, 320], maxZoom - 1),\r\n    };\r\n\r\n    \/\/ this is the zoomLevel for zoomToRegion() function\r\n    var zoomLevel = {\r\n        'all': 3,\r\n        'asia': 4, \/\/ Unified zoom level for Asia\r\n        'na': 4,\r\n        'eu': 4,\r\n    };\r\n\r\n    \/\/ Function to determine and adjust zoom levels based on window width\r\n    function adjustZoomLevels() {\r\n        var viewportWidth = window.innerWidth;\r\n\r\n        if (viewportWidth >= 1025) {\r\n            \/\/ Set zoom levels for desktop view\r\n            zoomLevel['all'] = 3;\r\n            map.setMinZoom(3);\r\n        } else if (viewportWidth < 1025 && viewportWidth >= 768) {\r\n            \/\/ Set zoom levels for tablet view\r\n            zoomLevel['all'] = 2;\r\n            map.setMinZoom(2);\r\n        } else {\r\n            \/\/ Adjust zoom levels for mobile viewports\r\n            zoomLevel = {\r\n                'all': 1,\r\n                'asia': 4,\r\n                'na': 4,\r\n                'eu': 4,\r\n            };\r\n\r\n            \/\/ re-adjust regionCoordinates on mobileView\r\n            regionCoords = {\r\n                'all': map.unproject([1280, 600], maxZoom - 1),\r\n                'asia': L.latLng(-45.90464, 129.343596),\r\n                'ea': L.latLng(-31.842995, 130.028333),\r\n                'na': L.latLng(-30.687429, 29.438333),\r\n                'eu': L.latLng(-28.281728, 89.592061),\r\n            };\r\n            \/\/ Set minZoom to 2 for mobile viewports\r\n            map.setMinZoom(1);\r\n        }\r\n    }\r\n\r\n    \/\/ Run the adjustZoomLevels function initially\r\n    adjustZoomLevels();\r\n\r\n    \/\/ Listen for window resize and adjust zoom levels accordingly\r\n    window.addEventListener('resize', adjustZoomLevels);\r\n\r\n    if (regionCoords[region]) {\r\n\r\n        \/\/ \/\/ Update the image overlay with the new URL for the selected region\r\n        var newUrl = regionImageUrls[region] || regionImageUrls['all'];\r\n\r\n        \/\/ Remove the existing overlay\r\n        map.eachLayer(function (layer) {\r\n            if (layer instanceof L.ImageOverlay) {\r\n                map.removeLayer(layer);\r\n            }\r\n        });\r\n\r\n        \/\/ Add the new image overlay\r\n        var bounds = new L.LatLngBounds(map.unproject([0, 1200], maxZoom - 1), map.unproject([2560, 0], maxZoom - 1));\r\n        L.imageOverlay(newUrl, bounds).addTo(map);\r\n\r\n        setTimeout(() => {\r\n            map.setView(regionCoords[region], zoomLevel[region]);\r\n        }, 100);\r\n        toggleDragging(region);\r\n    }\r\n}\r\n\r\n\/\/ Function to change the map image based on hovered region\r\nfunction changeMap(region) {\r\n    \/\/ Check if the region has a corresponding image\r\n    if (regionImageUrls[region]) {\r\n        var newUrl = regionImageUrls[region];\r\n        \r\n        \/\/ Remove the current overlay image\r\n        map.eachLayer(function (layer) {\r\n            if (layer instanceof L.ImageOverlay) {\r\n                var img = layer.getElement();\r\n                if (img) img.classList.add('hide');\r\n                setTimeout(function () {\r\n                    map.removeLayer(layer);\r\n                }, 500);\r\n            }\r\n        });\r\n        \r\n        \/\/ Add the new image overlay for the region\r\n        var bounds = new L.LatLngBounds(\r\n            map.unproject([0, 1200], maxZoom - 1), \r\n            map.unproject([2560, 0], maxZoom - 1)\r\n        );\r\n        L.imageOverlay(newUrl, bounds).addTo(map);\r\n    }\r\n}\r\n\r\n\/\/ Function to reset the map to the default image\r\nfunction resetMap() {\r\n    var defaultUrl = regionImageUrls['all'];\r\n    \r\n    \/\/ Remove the current overlay image\r\n    map.eachLayer(function (layer) {\r\n        if (layer instanceof L.ImageOverlay) {\r\n            map.removeLayer(layer);\r\n        }\r\n    });\r\n    \r\n    \/\/ Add the default image overlay\r\n    var bounds = new L.LatLngBounds(\r\n        map.unproject([0, 1200], maxZoom - 1), \r\n        map.unproject([2560, 0], maxZoom - 1)\r\n    );\r\n    L.imageOverlay(defaultUrl, bounds).addTo(map);\r\n}\r\n\r\n\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-17c7a52 e-con-full next-section e-flex e-con e-parent\" data-id=\"17c7a52\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ffc49c7 elementor-widget__width-inherit elementor-widget elementor-widget-template\" data-id=\"ffc49c7\" data-element_type=\"widget\" data-widget_type=\"template.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-template\">\n\t\t\t\t\t<div data-elementor-type=\"section\" data-elementor-id=\"2346\" class=\"elementor elementor-2346\" data-elementor-post-type=\"elementor_library\">\n\t\t\t<div class=\"elementor-element elementor-element-987c903 e-flex e-con-boxed e-con e-parent\" data-id=\"987c903\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-05e5909 e-con-full e-flex e-con e-child\" data-id=\"05e5909\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5060159 elementor-widget elementor-widget-heading\" data-id=\"5060159\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default translation-block\"><span class=\"gradient-heading\">Li\u00ean H\u1ec7 \u0110\u1ed9i Ng\u0169 <\/span> <span class=\"gradient-heading-orange\">Tuy\u1ec3n D\u1ee5ng<\/span><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-18320ca elementor-widget elementor-widget-html\" data-id=\"18320ca\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"virtous-btn\">\r\n\t<div class=\"elementor-button-wrapper translation-block\"><span class=\"translation-contacts\"><span data-context=\"btn-contact\">\t<a href=\"\/vi\/contact-us\/\" target=\"_self\">LI\u00caN H\u1ec6<\/a><\/span><\/span><\/div>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>San Francisco The Hub of Business Development in the Bay Area Virtuos San Francisco is our Bay Area business development hub, where we collaborate with partners in the United States, and develop unique solutions that would bring their ambitions to life. 1200 Concord Avenue, Suite 170, CA 94520, Concord, USA CONTACT US Why Join Us? [&hellip;]<\/p>","protected":false},"author":17,"featured_media":0,"parent":2293,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"content-type":"","footnotes":""},"class_list":["post-2564","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/pages\/2564","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/comments?post=2564"}],"version-history":[{"count":76,"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/pages\/2564\/revisions"}],"predecessor-version":[{"id":30660,"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/pages\/2564\/revisions\/30660"}],"up":[{"embeddable":true,"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/pages\/2293"}],"wp:attachment":[{"href":"https:\/\/web-staging.virtuosgames.com\/vi\/wp-json\/wp\/v2\/media?parent=2564"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}