* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    /* border: 1px solid red !important; */
}

body {
    min-height: 100vh;
    /* color: #000000; */
    background-color: #F5F5F5;
    /* font-family: 'Inter', sans-serif; */
    /* Trebuchet MS */
    /* font-style: normal;
    font-weight: 400;
    line-height: 16px; */
}

.product-info {
    /* background-color: #248C90; */
    padding-top: 3px;
    padding-left: 0px;
    width: 282px;
    height: 210px;
    margin: 26px 6px 6px;
    border-radius: 10px;
}

#chartdiv {
    font-size: 12px;
    background-color: #FFFFFF;
    width: 100%;
    height: 400px;
    
  }

.product-info p {
    margin-bottom: 20px;

}

a{
    text-decoration: none;
    color:#202124;
    ;
}

/* .product-info p:hover{
    background-color: #1eb95a;
    
} */



/* .company-info:hover {
    background-color: #248C90;
    color: white;
} */

.product-content:hover {
    background-color: #D6D8DC;
    transition: 0.8s ease;
}

.btn-click:hover {
    background-color: #D6D8DC;
    transition: 0.8s ease;
}

/* information box  */
#infoBox,
#infoBox3,
#infoBox4 {
    position: absolute;
    bottom: 20px;
    right: 6px;
    background-color: white;
    padding: 10px;
    border: 1px solid #ccc;
    font-family: Arial, sans-serif;
    font-size: 14px;
    z-index: 1;
}

.srcLink {

    text-align: right;
}

a {
    text-decoration: none;
}

.marker-popup {
    max-width: 250px;
}

.marker-popup img {
    max-width: 100%;
}

/* main */
.website-container {
    display: flex;
    gap: 50px;
}

.sidePanelInfo {
    font-family: 'Urbanist', sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.2px;
    width: 360px;
    max-width: 360px;
}

.sidePanelProduct {
    flex: 1;
    max-width: 1280px;
    margin-right: 30px;
}

/* Company information - top */
.company-info-container {

    width: 324px;
    height: 179px;
    margin: 17px 0 0 20px;
    box-shadow: rgb(240, 240, 240) -1px 2px 5px 0px;
    /* border: 1px solid #248C90; */
    border-radius: 16px;
}

.company-info-container1{
    display: none;
}

.company-logo {
    display: none;
    height: 40px;
    padding: 10px 0 0 20px;
    justify-content: center;
    background: white;
    /* border: 1px solid #248C90; */
    /* border-radius: 16px 16px ; */
}

.company-logo1 {
    height: 40px;
    padding: 10px 0 0 20px;
    justify-content: center;
    /* border-radius: 16px; */
    background: white;
    /* border: 1px solid #248C90; */
    /* border-radius: 10px; */
}

.nav-bar{
    background-color: #FFFFFF;
    height: 56px;
    display: flex;
    font-size: 20px;
    padding : 15px 10px 0 42px;
}

.nav-button:hover{
    background-color: #f0f0f0;
}

.company-info {
    height: 30px;
    background: #FFFFFF;
    /* border: 2px solid #248C90; */
    margin-bottom: 10px;
    border-radius: 10px;
    /* text-align: center; */
    padding: 6px;
    font-size: 15px;
    padding-left: 20px;
}

#imageLogo {
    width: 127px;
    height: 34px;
    margin: 16px 16px 0 24px;
}

#hamburgerIcon {
    display: none;
}

.company-description {
    background-color: #FFFFFF;
    padding: 16px 8px 20px 24px;
}

#description-text {
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 0.6px;
}

/* product information - bottom */
.product-info-container {
    width: 324px;
    height: 550px;
    margin: 16px 0 17px 18px;
    /* border: 1px solid #248C90; */
    background-color: #FFFFFF;
    box-shadow: -1px 2px 5px 0px #F0F0F0;
    border-radius: 10px;
}

.product-title {
    height: 60px;
    font-family: 'Urbanist', sans-serif;
    background: #FFFFFF;
    /* border: 1px solid #248C90; */
    border-radius: 10px;
}

#pt-title {
    display: inline-block;
    
    margin: 20px 0 22px 24px;
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
}

#pt-company {
    display: inline-block;
    margin-left: 6px;
    font-size: 12px;
}

#imageRecycle {
    width: 214px;
    height: 170px;
    margin: 43px 55px 22px;
}

#pt-description {
    font-family: 'Inter', sans-serif;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin: 0 25px;
    font-size: 14px;
    text-align: left;
}

#imageBags {
    width: 282px;
    height: 182px;
    margin: 26px 21px 6px;
    border-radius: 10px;
    border: 2px solid #f0f0f0;
}

/* product description - mobile */
.product-description-mobile {
    display: none;
}

/* Product workflow */
.product-workflow-container {
    font-family: 'Urbanist', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: 0.5px;
    display: inline-flex;
    justify-content: space-between;
    gap: 10px;
    margin: 17px 0 12px;
}

.product-content {
    width: 260px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FFFFFF;
    color: #5F5C5C;
    /* border: 1px solid #B9B9B9; */
    border-radius: 10px;
    text-decoration: none;
}

.product-workflow-title {
    padding: 0px;
    text-align: center;
    font-weight: 500;
    /* font-family: 'Urbanist'; */
    color: #003E46;
    font-size: 18px;
    line-height: 25px;
}

.product-workflow-description {
    display: none;
}

.product-map-info {
    font-family: 'Inter', sans-serif;
    font-size: 17px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.2px;
    place-items: center;
    width: 100%;
    margin-top: 20px;
    padding: 20px 8px;
    background-color: white;
    padding-left: 24px;
    box-shadow: rgb(240, 240, 240) -1px 2px 5px 0px;
    border-radius: 10px;
}

/* Active listing */
/* .product-content.active { */
.product-content.active {
    width: 260px;
    height: 60px;
    color: #FFFFFF;
    background-color: #248C90;
    border: 1px solid #248C90;
    cursor: pointer;
    /* background: rgba(241, 239, 239, 0.686275); */
}

.product-content.active .product-workflow-title {
    display: grid;
    place-items: center;
    width: 260px;
    height: 75%;
    color: white;
    margin: 0;
    border-radius: 10px;
    background: #248C90;
}

.product-content.active .product-workflow-description {
    display: none;
    place-items: center;
    width: 100%;
    height: 100%;
    padding: 0 8px;
    font-size: 10px;
    color: #5F5C5C;
    line-height: 15px;
    background: rgba(241, 239, 239, 0.686275);
    border-radius: 10px;
}

.icon-color {
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.btn-click{
    position: relative;
    display: flex;
    cursor: pointer;
    align-items: center; 
    gap: 8px;
    /* padding: 10px;  */
    font-size: 14px;
}

/* Hide the active icon by default */
.icon-color .active-icon {
    display: none;
}
.btn-click .active-icon {
    display: none;
    width: 20px;
}

.icon-color.active .default-icon {
    display: none;
}
.btn-click.active .default-icon {
    display: none;
}

.icon-color.active .active-icon {
    display: inline-block;
    
}
.btn-click.active .active-icon {
    display: inline-block;
    width: 20px;
}

/* Add any styling you want, like hover effects */
/* .icon-color:hover .default-icon {
    display: none;
  }
  
  .icon-color:hover .active-icon {
    display: inline-block;
  } */


.icon-container {
    display: flex;
    align-items: center;
    /* Center vertically */
    justify-content: center;
    /* Center horizontally */
    text-align: center;
    /* Center text */
}

/* Responsive Description */
@media screen and  (min-width: 1600px) and (max-width: 2400px )   {
    body {
        font-family:  'Urbanist', sans-serif;
        font-size: 18px;
        line-height: 1.6;
      }
     
      .nav-bar{
        background-color: #FFFFFF;
        height: 56px;
        display: flex;
        font-size: 20px;
        padding : 15px 10px 0 100px;
    }

    .website-container {
        display: flex;
        gap: 32px;
        margin: 100px 20px  0 180px;
    }
    .product-workflow-container{
        gap: 60px;
    }
   
}

@media screen and (max-width: 1400px) {
    body {
        font-family:  'Urbanist', sans-serif;
        font-size: 18px;
        line-height: 1.6;
      }

    .product-workflow-container {
        font-family: 'Urbanist', sans-serif;
        font-size: 18px;
        font-style: normal;
        font-weight: 500;
        line-height: 28px;
        letter-spacing: 0.5px;
        width: 100%;
        overflow-x: auto;
    }

    .product-content {
        width: 200px;
        /* height: 96px; */
        font-weight: 500;
        line-height: 22px;
        text-align: center;
    }

    .product-workflow-title {
        padding: 0 12px;
        font-size: 16px;
    }

    .product-content.active .product-workflow-title {
        display: grid;
        place-items: center;
    }
}

@media screen and (max-width: 1200px) {
    body {
        font-family:  'Urbanist', sans-serif;
        font-size: 18px;
        line-height: 1.6;
      }
      
    .product-content.active {
        width: -moz-fit-content;
        width: fit-content;
    }

    .product-content.active .product-workflow-description {
        display: none;
    }
}

/* buttons mapping */
.map-button-container {
    width: 100%;
    /* background-color: #cfcbcb; */
    border-radius: 5px;
    /* padding: 0 10px; */
    margin: 30px auto;
    position: relative;
}

.progress-bar-container {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    letter-spacing: 1px;
    text-transform: uppercase;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    /* background-color: #B9B9B9; */
    gap: 20px;
    position: relative;
}




.progress-bar-container1 {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 320px;
    position: relative;
}

.progress-bar-container::before {
    content: '';
    border-radius: 10px;
    border: 0.5px solid #bebebe;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /* height: 0px; */
    width: 450px;
    z-index: -5;
}

.progress-bar-container1::before {
    content: '';
    /* background-color: #B9B9B9; */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 4px;
    width: 450px;
    z-index: -5;
}

.buttons-container {
    width: 150px;
    height: 50px;
    /* background: #FFFFFF; */
    /* border: 1px solid #B9B9B9; */
    /* border-radius: 10px; */
    /* box-shadow: 0px 0px 20px 5px rgba(0, 0, 0, 0.1); */
}

.btn-click {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border: transparent;
    border-radius: 10px;
    outline: transparent;
    cursor: pointer;
    padding: 20px;
    /* border: #050505 1px solid; */
    background-color: white;
    transition: #248C90 0.3s;
}

.btn-icons {
    width: 20px;
    height: 20px;
    display: block;
    margin: 0 auto;
    mix-blend-mode: luminosity;
    /* transition: mix-blend-mode .5s ease-in-out, border .5s ease-in-out; */
}

.buttons-container:first-child .btn-icons   {
    width: 20px;
    height: 20px;
}

.btn-text {
    display: block;
    margin-top: 16px;
    color: #7B7B7B;
}

/* active button */
.btn-click.active {
    background-color: #248C90;
    border: 1px solid #248C90;
    color: white;
}

.btn-click.active+.btn-text {
    color: black;
}

.btn-click.active .btn-icons {
    mix-blend-mode: normal;
    color: white;
}

/* progress bar */
.progressbar {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-50%);
    height: 4px;
    width: 50px;
    max-width: 490px;
    z-index: -1;
    /* background-color: #248C90; */
    transition: width .5s ease-in-out;
}

/* MapBox Container */
.mapbox-container {
    display: block;
    width: 100%;
    height: 460px;
    padding: 16px;
    margin: 17px 0 30px;
    background-color: white;
    border-radius: 10px;
    box-shadow: rgb(240, 240, 240) -1px 2px 5px 0px;
}

.map-content {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    display: none;
}

.map-active {
    display: block;
}

/* Moving truck styling for text above it */
.distance {
    position: absolute;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 16px;
    background-color: #fff;
    padding: 5px;
    white-space: nowrap;
}

/* Mobile Responsive CSS */
@media screen and (max-width: 1000px) {


    /* website container */
    body {
        font-family:  'Urbanist', sans-serif;
        font-size: 18px;
        line-height: 1.6;
      }

    .website-container {
        display: inline;
    }

    .nav-bar{
        display: none;
    }
    .marker-popup {
        width: 40%;
        height: 40%;
    }

    .sidePanelInfo {
        font-family: 'Inter', sans-serif;
        width: 90%;
        max-width: 92%;
    }

    .sidePanelProduct {
        margin: 0 16px;
    }

    .company-logo1{
        display: none;
    }

    .icon-container {
        display: flex;
        align-items: center;
        
        /* Center vertically */
        justify-content: center;
        /* Center horizontally */
        text-align: center;
        /* Center text */
    }

    /* product info - top */
    .company-info-container {
        display: block;
        width: 100%;
        height: -moz-fit-content;
        height: fit-content;
        border: 1px solid transparent;
    }

    .btn-click {
        width: 280%;
        height: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        border: transparent;
        border-radius: 10px;
        outline: transparent;
        cursor: pointer;
        margin-top: 15px;
        /* padding: 15px; */
        font-size: 10px;
        padding-left: 8px;
        /* background-color: #248C90; */
        transition: #248C90 0.3s;
    }
    .btn-click1 {
        text-align: center;
        gap: 8px;
        width: 280%;
        height: 60%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        border: transparent;
        border-radius: 10px;
        outline: transparent;
        cursor: pointer;
        margin-top: 0px;
        /* padding: 15px; */
        font-size: 15px;
        padding-left: 8px;
        /* background-color: #248C90; */
        /* transition: #248C90 0.3s; */
    }


    .company-logo {
        display: flex;
        /* display: flex; */
        /* width: 300px; */
        padding-top: 20px;
        /* margin-top: 0px; */
        justify-content: space-between;
        background-color: #FFFFFF;
        /* border: 1px solid transparent; */
    }

    .company-logo2 {
        display: flex;
        /* display: flex; */
        /* width: 300px; */
        padding-top: 20px;
        padding-left: 20px;
        border-radius: 16px 16px 0 0;
        /* margin-top: 0px; */
        justify-content: space-between;
        background-color: #FFFFFF;
        /* border: 1px solid transparent; */
    }

    .company-info {
        display: flex;
        width: inherit;
        justify-content: space-between;
        /* background-color: #F5F5F5; */
        border: 1px solid transparent;
        padding: 5px;
    }

    .company-info-container1{
        display: contents;
        width: 324px;
        height: 179px;
        margin: 17px 0 0 20px;
        box-shadow: rgb(240, 240, 240) -1px 2px 5px 0px;
        /* border: 1px solid #248C90; */
        border-radius: 16px;
    }


    #hamburgerIcon {
        display: block;
        width: 24px;
        height: 24px;
        padding: 2px;
        margin: -11px 13px;
        border-radius: 5px;
        /* background-color: #248C90; */
    }

    #imagePlasticBags1 {
        /* display: none; */
        width: 20px;
        height: 20px;
        margin-top: -10px;
    }
    #imagePlasticBags2 {
        /* display: none; */
        width: 150px;
        height: 30px;
        margin-top: -10px;
    }

    .company-description {
        /* display: none; */
        background-color: #FFFFFF;
        padding: 16px 8px 20px 24px;
    }

    .company-description1 {
        /* display: none; */
        border-radius: 0 0 16px 16px;
        background-color: #FFFFFF;
        padding: 16px 8px 20px 24px;
    }

    /* company info - top */
    .company-info-container {
        display: none;
        margin: 16px 0 0 16px;
    }

    .company-info-container1 {
        background-color: #FFFFFF;
        border-radius: 16px;
        margin: 16px 0 0 16px;
    }


    #imageLogo {
        margin-left: 16px;
    }

    /* product description - bottom */
    .product-info-container {
        display: inline-block;
    }

    /* product description - mobile */
    .product-description-mobile {
        display: none;
        justify-content: center;
        width: 92%;
        min-width: 300px;
        min-height: 120px;
        background: #FFFFFF;
        border: 1px solid #248C90;
        border-radius: 10px;
        margin: 16px;
    }

    .product-image-content {
        border-radius: 10px;
    }

    #imagePlasticBags {
        width: 120px;
        height: 100px;
        margin: 8px 0 8px 8px;
        border-radius: 10px;
    }

    .product-info-content {
        width: 100%;
    }

    .title-info {
        padding: 16px 0 10px 14px;
        border-bottom: 1px solid #248C90;
    }

    #pt-title-info {
        font-weight: 500;
        font-size: 15px;
        line-height: 20px;
        text-align: center;
    }

    #pt-code {
        margin-left: 6px;
        color: #248C90;
        font-weight: 500;
        font-size: 12px;
        line-height: 16px;
        text-align: center;
    }

    .pt-info {
        color: #A2A2A2;
        margin: 12px 0 0 12px;
        font-style: normal;
        font-weight: 500;
        font-size: 13.0588px;
        line-height: 18px;
    }

    /* page listing */
    .product-workflow-container {
        /* flex-wrap: wrap; */
        overflow-x: auto;
        gap: 16px;
        padding: 12px 0;
    }

    .product-workflow-container::-webkit-scrollbar {
        width: 0;
        /* hides the default scrollbar in WebKit browsers */
    }

    .product-workflow-container::-webkit-scrollbar-track {
        background-color: transparent;
        /* hides the scrollbar track */
    }

    .product-content,
    .product-content.active {
        min-width: 150px;
        height: 55px;
    }

    .product-workflow-title {
        font-weight: 500;
        font-size: 14px;
        line-height: 19px;
        text-align: center;
        color: black;
        padding: 8px;
    }

    .product-content.active {
        width: 146px;
    }

    .product-content.active .product-workflow-title {
        /* padding: 17px; */
        white-space: normal;
        font-weight: 500;
        font-size: 13px;
        line-height: 19px;
        text-align: center;
        color: white;
    }

    .product-content.active .product-workflow-description {
        display: none;
    }

    /* buttons mapping */
    .map-button-container {
        margin-top: 0;
    }

    .progress-bar-container {
        gap: 80px;
    }

    .progress-bar-container::before {
        content: '';
        /* background-color: #B9B9B9; */
        position: absolute;
        border: none;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: 4px;
        width: 280px;
        z-index: -5;
    }

    .progress-bar-container1 {
        gap: 100px;
    }

    .progress-bar-container1::before {
        content: '';
        /* background-color: #B9B9B9; */
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: 4px;
        width: 180px;
        z-index: -5;
    }

    .progressbar {
        display: none;
    }

    .buttons-container {
        width: 40px;
        height: 40px;
    }

    .btn-icons {
        width: 24px;
        height: 20px;
    }

    .btn-text {
        font-size: 12px;
    }

    .buttons-container:first-child .btn-icons {
        width: 18px;
        height: 20px;
    }

    /* location map */
    .map-display-container {
        height: 320px;
        padding: 12px 6px;
        margin: 16px 0 17px;
    }
}