body {
    font-family: Arial, Helvetica, sans-serif;
    margin: 20px
}

.stage {
    max-width: 720px;
    margin: 0 auto
}

.graphic-wrap {
    position: relative;
    width: 100%
}

.graphic-wrap img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 2%; /* just added*/
    box-shadow: 0 12px 60px #00000040; /* just added*/

}

.hotspot {
    position: absolute;
    background: #fffffff2;
    color: #222;
    display: flex;
    opacity: 0.0; /*just addded */
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 2px 6px #00000040;
    -webkit-user-select: none;
    user-select: none
   
}

.hotspot.small {
    width: 10%;
    height: 6%;
    min-width: 18px;
    min-height: 18px;
    border-radius: 00%; /* just added*/
    font-weight: 700
}

.hotspot.video {
    width: 9%;
    height: 9%;
    min-width: 22px;
    min-height: 22px;
    opacity: 1.0;       /* just added*/
    background: #fffffff2;
    border: 2px solid #6b6bff;
    border-radius: 6px
}

.tooltip {
    position: absolute;
    background: #fff;
    border: 1px solid #ccc;
    padding: 8px;
    width: 260px;
    max-height: 180px;
    overflow: auto;
    box-shadow: 0 4px 12px #00000026;
    z-index: 30
}

.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #00000073;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100
}

.modal {
    width: 600px;
    max-width: 92vw;
    height: 400px;
    max-height: 90vh;
    background: #f5f5f6;
    border-radius: 12px;
    box-shadow: 0 8px 30px #00000059;
    position: fixed;
    z-index: 120;
    left: 10vw;
    top: 50%;
    transform: translateY(-50%);
    padding: 18px;
    box-sizing: border-box;
    overflow: auto
}

.modal .close {
    position: absolute;
    right: 8px;
    top: 6px;
    cursor: pointer;
    font-weight: 700;
    font-size: 18px  /*just added */
}

.video-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.instructions {
    max-width: 900px;
    margin: 8px auto 20px;
    font-size: 14px;
    color: #333
}

.title {
    max-width: 900px;
    margin: 8px auto 20px;
    font-size: 24px;
    color: #333
}