/* Blobs */

.blobs .blob-item{
    width: 25%;
    border-radius: 20px;
    display: inline-block;
    position: relative;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    z-index: 99;
    margin-top: 20px;
    float: left;
}
.blobs .blob-item:nth-child(2){
    width: 50%;
    z-index: 98;
    position: absolute;
    left: 0;
    right: 0;
    top: 80px;
    margin: 0 auto;
    min-height: 180px;
    display: flex;
    align-items: center;
}
.blobs .blob-item:nth-child(2) .wrapper{
    padding-left: 47px;
    padding-right: 80px;
}
.blobs .blob-item:nth-child(3), .blobs .blob-item:nth-child(5){
    float: right;
}
.blobs .blob-item:nth-child(3){
    margin-top: -20px;
    margin-right: 60px;
}
.blobs .blob-item:nth-child(4){
    clear: left;
    margin-left: 70px;
    margin-top: 70px;
}
.blobs .blob-item:nth-child(4), .blobs .blob-item:nth-child(5){
    z-index: 97;
}
.blobs .blob-item .wrapper{
    padding: 25px;
}
.blobs .blob-item .wrapper p{
    margin-bottom: 0;
}
.blob-item .clip{
    position: absolute;
    bottom: -30px;
    right: 20px;
    width: 46px;
    height: 46px;
    display: block;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
}
.data-heading{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    margin: 40px 0 0!important;
}
.data-heading li:before{
    content: '';
    display: block;
    position: absolute;
    left: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--navy_blue);
}
.data-heading li:first-child:before{
    background: #93aec1;
}
.data-heading li{
    font-size: 1.25em;
    display: flex;
    align-items: center;
}
.graph-bar{
    padding-left: 90px;
    float: left;
    width: 100%;
    position: relative;
    margin: 50px 0 0;
}
.graph-bar:after{
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    width: calc(100% - 70px);
    height: 2px;
    background: #5e5e5e;
}
.graph-bar .bar-item{
    width: calc(20% - 50px);
    float: left;
    display: flex;
    gap: 2px;
    margin-right: 50px;
    min-height: 300px;
    position: relative;
}
.graph-bar .bar-item .light_sky_blue{
    background: #93aec1;
}
.graph-bar .bar-item .data{
    width: 50%;
    float: left;
    text-align: center;
    position: relative;
}
.graph-bar .bar-item .data:last-child{
    right: 0;
}
.graph-bar .bar-item .data:last-child span{
    color: #fff;
}
.graph-bar .bar-item .data .bar{
    position: absolute;
    width: 100%;
    display: block;
    bottom: 0;
}
.graph-bar .bar-item.fill-in .data .bar{
    animation: fillUp 5s ease forwards;
}
@keyframes fillUp {
  from { height: 0; }
  to { height: var(--percent); }
}
.graph-bar .bar-item .data .text{
    position: absolute;
    top: 55%;
    left: 0;
    right: 0;
    z-index: 999;
    max-width: 75px;
    margin: 0 auto;
}
.graph-bar .bar-item .data .text span{
    font-weight: bold;
    font-size: 1.125em;
}
.graph-bar .bar-item .data:nth-child(2) .text span{
    color: #fff;
}
.blobs .percentage{
    position: absolute;
    left: 0;
    bottom: 0;
    height: 300px;
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: end;
}
.blobs .percentage:before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    width: 2px;
    right: 0;
    height: 100%;
    background: #5e5e5e;
}
.blobs .percentage .title{
    position: absolute;
    writing-mode: sideways-lr;
    color: #5e5e5e;
    letter-spacing: 1px;
    left: 0;
}
.blobs .percentage ul{
    display: flex;
    height: 100%;
    flex-direction: column-reverse;
    width: 50px;
}
.blobs .percentage ul li{
    margin: 0;
    color: #5e5e5e;
    font-size: 16px;
    height: 20%;
}
.blobs .percentage ul li:before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 10px;
    height: 2px;
    background: #5e5e5e;
}
.blobs .percentage ul li:first-child{
    position: absolute;
    bottom: 0;
}
.blobs .percentage ul li:first-child:before{
    top: auto;
    bottom: 0;
}
.blobs .percentage ul li span{
    position: absolute;
    left: 0;
    top: -10px;
    padding-right: 15px;
    text-align: right;
    width: 100%;
}
.blobs .percentage ul li:first-child span{
    bottom: -8px;
    top: auto;
}
.blobs .percentage ul li:last-child span{
    top: -10px;
}
.blobs .percentage ul li:last-child{
    position: absolute;
    top: 0;
}
.graph-bar .title{
    font-weight: bold;
    margin-bottom: 10px;
}
.graph-wrapper{
    position: relative;
    float: left;
    width: 100%;
}
.bar-labels{
    float: left;
    width: 100%;
    margin-bottom: 100px;
    padding-left: 90px;
}
.bar-labels .bar-label{
    width: 20%;
    float: left;
    text-align: center;
    padding: 10px 60px 10px 10px;
    line-height: 1.2em;
}

@media screen and (max-width: 1349px){
    .bar-labels .bar-label{
        font-size: 16px;
    }
    .bar-labels .bar-label{
        padding-right: 40px;
    }
    .graph-bar .bar-item{
        width: calc(20% - 30px);
        margin-right: 30px;
    }
}

@media screen and (max-width: 1199px){
    .blobs .blob-item:nth-child(3){
        margin-right: 20px;
    }
    .blobs .blob-item:nth-child(4){
        margin-left: 30px;
    }
}
@media screen and (max-width: 991px){
    .graph-wrapper{
        margin-bottom: 70px;
    }
    .graph-bar:after{
        width: 100%;
    }
    .blobs .percentage{
        position: relative;
        height: auto;
        bottom: 0;
        width: 100%;
        display: block;
        float: left;
        padding-bottom: 30px;
    }
    .blobs .percentage ul{
        flex-direction: row;
        width: 100%;
        display: flex!important;
    }
    .blobs .percentage .title{
        position: absolute;
        writing-mode: unset;
        bottom: -10px;
        left: 0;
        right: 0;
        margin: 0 auto;
        text-align: center;
    }
    .blobs .percentage:before{
        display: none;
    }
    .blobs .percentage ul li{
        width: 16.6667%;
        float: left;
    }
    .blobs .percentage ul li:nth-child(2){
        left: -17px;
    }
    .blobs .percentage ul li:nth-child(5){
        right: -17px;
    }
    .blobs .percentage ul li:nth-child(3){
        left: -5px;
    }
    .blobs .percentage ul li:nth-child(4){
        right: -5px;
    }
    .blobs .percentage ul li span{
        padding-right: 0;
        text-align: left;
        text-align: center;
    }
    .blobs .percentage ul li:first-child, .blobs .percentage ul li:last-child{
        position: relative;
    }
    .blobs .percentage ul li:before{
        width: 2px;
        height: 10px;
        top: -20px;
        left: 0;
        right: 0;
        margin: 0 auto;
    }
    .blobs .percentage ul li:first-child span{
        bottom: auto;
        top: -10px;
        left: -3px;
        text-align: left;
    }
    .blobs .percentage ul li:first-child:before{
        right: auto;
        left: 0;
        bottom: auto;
        top: -20px;
    }
    .blobs .percentage ul li:last-child:before{
        left: auto;
        right: 0;
    }
    .blobs .percentage ul li:last-child span{
        width: 28px;
        right: -12px;
        left: auto;
        text-align: right;
    }
    .data-heading{
        margin: 20px 0 0!important;
    }
    .graph-bar{
        padding-left: 0;
        margin: 20px 0;
    }
    .graph-bar .bar-item{
        display: block;
        width: 100%;
        margin-bottom: 20px;
        min-height: 50px;
        margin-right: 0;
    }
    .graph-bar .bar-item .data .bar{
        height: 50px;
        position: relative;
    }
    .graph-bar .bar-item .data{
        width: 100%;
        display: flex;
        align-items: center;
    }
    .graph-bar .bar-item .data .text{
        max-width: 100%;
        text-align: left;
        padding-left: 30px;
        top: auto;
    }
    .graph-bar .bar-item .data .text br{
        display: none;
    }
    .graph-bar .bar-item .data .bar{
        width: 0;
        height: 50px;
    }
    .graph-bar .bar-item.fill-in .data .bar{
        animation: fillIn 5s ease forwards;
    }
    @keyframes fillIn {
      from { width: 0; }
      to { width: var(--percent); }
    }
}
@media screen and (max-width: 768px){
    .blobs .blob-item{
        width: 100%!important;
        position: relative!important;
        top: 0!important;
        left: 0;
        right: 0;
        bottom: 0;
        margin-left: 0!important;
        margin-right: 0!important;
        margin-bottom: 40px!important;
        margin-top: 0!important;
        float: left;
    }
    .blobs .blob-item .wrapper{
        padding: 25px!important;
    }
    .blobs .blob-item:nth-child(2){
        min-height: 0;
    }
}
