JSFiddle - React, Tailwind, and code Playground

by Petr Haluza

HTML

<div class="card">
  <div class="left">
    <div class="slider"><i class="material-icons">arrow_back</i></div><span class="wordmark">HAL3000</span>
  </div>
  <div class="right"><img class="computer" src="https://haluzovic.cz/demo/images/_temp/category-gaming.png" alt=""/>
    <div class="productInfo">
      <h1>HAL3000 MASTER GAMER ELITE</h1>
      <h2>29 299<small> Kč</small></h2>
      <div class="details">
        <div class="size">
          <h4>VELIKOST DISKU</h4>
          <p>1TB</p>
          <p>2TB</p>
          <p>4TB</p>
          <p>8TB</p>
        </div>
        <div class="size">
          <h4>VELIKOST DISKU</h4>
          <p>1TB</p>
          <p>2TB</p>
          <p>4TB</p>
          <p>8TB</p>
        </div>
        
      </div>
      <button>KOUPIT</button><i class="material-icons fav">favorite</i><a href="#">SDÍLET</a>
      <div class="slider"><i class="material-icons">arrow_forward</i></div>
    </div>
  </div>
</div>

CSS

@import url("https://fonts.googleapis.com/css?family=Open+Sans");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:800");
@import url("https://fonts.googleapis.com/icon?family=Material+Icons");
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

::-webkit-scrollbar {
  display: none;
}

button {
  border: none;
  cursor: pointer;
}

button:focus {
  outline: 0;
}

.card {
  width: 892px;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
}
.card .left {
  width: 480px;
  height: 553px;
  background: #ea0000;
  border-radius: 23px;
  display: flex;
  align-items: center;
}
.card .left .wordmark {
  opacity: 0.2;
  transform: rotate(-90deg) scale(1.2);
  margin-left: -173px;
    font-size: 6em;
    font-family: arial;
    font-weight: 900;
    letter-spacing: -6px;
}
.card .right {
  width: 654px;
  height: 479px;
  background: #0c1f2c;
  position: absolute;
  left: -10%;
  transform: translateX(50%);
  border-radius: 23px;
}
.card .right .computer {
  position: absolute;
  top: 50%;
  max-width: 60%;
  transform: translate(-50%, -50%);
}
.card .right .productInfo {
  width: 380px;
  height: 300px;
  margin: 50px 0 0 235px;
  color: #fff;
  font-family: "Open Sans", sans-serif;
}
.card .right .productInfo h1 {
  font-weight: 800;
  line-height: 46px;
  font-size: 40px;
  margin-bottom: 15px;
}
.card .right .productInfo h2 {
  font-weight: 300;
  font-size: 32px;
  letter-spacing: 1.6px;
  margin-bottom: 30px;
}
.card .right .productInfo .details {
  display:flex; flex-wrap:wrap; gap: 1.5em
}
.card .right .productInfo .details .size,
.card .right .productInfo .details .durability {}
.card .right .productInfo .details .size {
  border-right: 1px solid #ea0000;
  padding: 2em 1em 2em 0;
}
.card .right .productInfo .details .durability {
  text-align: center;
}
.card .right .productInfo .details .durability h4 {
  margin-top: 20px;
  margin-bottom:...