.home-upcoming-vr {
 margin: 34px 0 46px;
}

.home-upcoming-vr__head {
 margin-bottom: 22px;
 text-align: center;
}

.home-upcoming-vr__head h2 {
 margin: 0 0 8px;
 color: #77a8d0;
 font-size: 36px;
 line-height: 1.1;
 font-weight: 400;
 font-family: 'Open Sans Condensed', sans-serif;
}

.home-upcoming-vr__head p {
 margin: 0;
 color: #7b8692;
 font-size: 15px;
}

.home-upcoming-vr__grid {
 display: grid;
 grid-template-columns: repeat(5, minmax(0, 1fr));
 gap: 18px;
}

.home-upcoming-card {
 position: relative;
 display: flex;
 flex-direction: column;
 overflow: hidden;
 border: 1px solid #dbe5ee;
 border-radius: 8px;
 background: #fff;
 text-decoration: none;
 box-shadow: 0 10px 24px rgba(36, 52, 79, 0.08);
 transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.home-upcoming-card:hover {
 transform: translateY(-3px);
 border-color: #77a8d0;
 box-shadow: 0 14px 28px rgba(36, 52, 79, 0.12);
}

.home-upcoming-card__date {
 position: absolute;
 top: 12px;
 left: 12px;
 z-index: 2;
 display: inline-block;
 padding: 6px 10px;
 border-radius: 20px;
 background: rgba(255, 255, 255, 0.94);
 color: #4d80aa;
 font-size: 12px;
 font-weight: 700;
 line-height: 1;
}

.home-upcoming-card img {
 display: block;
 width: 100%;
 height: 240px;
 object-fit: cover;
 background: #e6edf5;
}

.home-upcoming-card__body {
 display: flex;
 flex-direction: column;
 gap: 8px;
 padding: 14px 14px 16px;
}

.home-upcoming-card__title {
 display: -webkit-box;
 min-height: 48px;
 color: #1f2730;
 font-size: 20px;
 font-weight: 700;
 line-height: 1.08;
 -webkit-line-clamp: 2;
 -webkit-box-orient: vertical;
 overflow: hidden;
}

.home-upcoming-card__meta {
 color: #6c7b89;
 font-size: 13px;
 line-height: 1.3;
}

@media (max-width: 1200px) {
 .home-upcoming-vr__grid {
 grid-template-columns: repeat(4, minmax(0, 1fr));
 }
}

@media (max-width: 960px) {
 .home-upcoming-vr__head h2 {
 font-size: 32px;
 }

 .home-upcoming-vr__grid {
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 16px;
 }

 .home-upcoming-card img {
 height: 220px;
 }

 .home-upcoming-card__title {
 font-size: 20px;
 }
}

@media (max-width: 640px) {
 .home-upcoming-vr {
 margin: 26px 0 34px;
 }

 .home-upcoming-vr__head {
 margin-bottom: 18px;
 }

 .home-upcoming-vr__head h2 {
 font-size: 28px;
 }

 .home-upcoming-vr__head p {
 font-size: 14px;
 }

 .home-upcoming-vr__grid {
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 14px;
 }

 .home-upcoming-card__date {
 top: 10px;
 left: 10px;
 padding: 5px 9px;
 font-size: 11px;
 }

 .home-upcoming-card img {
 height: 190px;
 }

 .home-upcoming-card__body {
 padding: 12px;
 }

 .home-upcoming-card__title {
 min-height: 42px;
 font-size: 18px;
 }

 .home-upcoming-card__meta {
 font-size: 12px;
 }
}

@media (max-width: 420px) {
 .home-upcoming-vr__grid {
 grid-template-columns: 1fr;
 }

 .home-upcoming-card img {
 height: 220px;
 }
}
 
 
 
 
 .game-gallery {
 display: flex;
 flex-wrap: wrap;
 gap: 8px;
 justify-content: center;
 padding: 10px 0;
 }

 .game-card-promo {
 background: #f9f9f9;
 border: 1px solid #ddd;
 border-radius: 6px;
 width: 110px;
 text-align: center;
 transition: transform 0.2s, box-shadow 0.2s, background-color 0.2s;
 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
 overflow: hidden;
 }

 .game-card-promo:hover {
 transform: translateY(-4px);
 background-color: #dceeff;
 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
 }

 .game-card-promo a {
 display: block;
 color: #333;
 font-size: 14px;
 font-weight: 600;
 text-decoration: none;
 font-family: 'Cuprum', sans-serif;
 }

 .game-card-promo img {
 width: 100%;
 height: 150px;
 object-fit: cover;
 border-radius: 6px 6px 0 0;
 display: block;
 }

 .game-card-promo span {
 display: block;
 padding: 8px;
 line-height: 1.2;
 transition: color 0.2s;
 }

 .game-card-promo:hover span {
 color: #007acc;
 }

 .custom-thread-card {
 display: block;
 background: linear-gradient(135deg, #ffffff, #f1f4f9);
 border-left: 4px solid #4d80aa;
 border-radius: 8px;
 padding: 16px;
 margin-bottom: 12px;
 text-decoration: none;
 transition: background 0.3s ease, transform 0.2s ease;
 box-shadow: 0 2px 5px rgba(0, 0, 0, 0.04);
 color: #222;
 font-family: 'Cuprum', sans-serif;
 }

 .custom-thread-card:hover {
 background: linear-gradient(135deg, #e6f2ff, #f8fcff);
 transform: translateY(-2px);
 }

 .thread-header {
 display: flex;
 justify-content: space-between;
 font-size: 13px;
 color: #666;
 margin-bottom: 8px;
 }

 .forum-name {
 background: #eef5fb;
 padding: 3px 8px;
 border-radius: 4px;
 font-weight: bold;
 color: #35678a;
 }

 .reply-count {
 background: #fff3e0;
 padding: 3px 8px;
 border-radius: 4px;
 color: #c47b00;
 }

 .thread-body .thread-title {
 font-size: 18px;
 font-weight: bold;
 color: #1a1a1a;
 line-height: 1.4;
 }

 .price-list-device span {
 float: right;
 }

 @media (max-width: 768px) {
 .game-card-promo {
 width: 95%;
 }
 }
 
@media only screen and (max-width: 640px) {
 body.index .owl-three .item[data-hash^="publ"] .infTable,
 body.index .owl-three .item[data-hash^="publ"] .infTable tbody,
 body.index .owl-three .item[data-hash^="publ"] .infTable tr,
 body.index .owl-three .item[data-hash^="publ"] .infTable td.infTd {
 display: block;
 width: 100% !important;
 }

 body.index .owl-three .item[data-hash^="publ"] .infTable td.infTd {
 padding: 0;
 }

 body.index .owl-three .item[data-hash^="publ"] .vr-card {
 width: 100%;
 max-width: none;
 float: none;
 margin: 10px 0;
 }
}
 
@media only screen and (max-width: 640px) {
 body.index .sidebox .inner > div[style*="grid-template-columns:repeat(3, 1fr)"] {
 display: grid !important;
 grid-template-columns: 1fr !important;
 gap: 12px !important;
 }

 body.index .sidebox .inner > div[style*="grid-template-columns:repeat(3, 1fr)"] .vr-card {
 width: 100% !important;
 max-width: none !important;
 margin: 0 !important;
 float: none !important;
 display: block !important;
 }
}

 