:root {
    --container-max-width: 1320px;
    /* from https://koole.webcontent.nl/ */
    --container-max-height: 947px;
    /* container max width * animation aspect ratio */
}

@font-face {
    font-family: 'Poppins';
    src: url('../fonts/Poppins-ExtraBold.woff2') format('woff2'),
        url('animation_assets/fonts/Poppins-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('../fonts/Poppins-Bold.woff2') format('woff2'),
        url('../fonts/Poppins-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('../fonts/Poppins-SemiBold.woff2') format('woff2'),
        url('../fonts/Poppins-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

#animation_container {
    color: #066;
    font-family: 'Poppins';
}

/* UTILS */
.absolute0 {
    position: absolute;
    left: 0;
    top: 0
}

.transform_center {
    transform: translateY(-50%) translateX(-50%);
}

.text_white {
    color: #FFF;
}

#animation_container h1 {
    font-weight: bold;
    font-style: normal;
}

#infopopup {
    text-align: center;
}

#popupclosecontainer {
    width: 100%;
    text-align: center; /*right;*/
}

#popupclose {
    width: 24px;
    padding-top: 16px;
    /*padding-right: 16px;*/
    cursor: pointer;
}

#popupheader {
    font-weight: bold;
    font-style: normal;
    text-transform: uppercase;
    font-size: 1rem;
    line-height: 1.2;
}

#popuptext {
    font-weight: normal;
    font-style: normal;
    font-size: 0.75rem;
}

#popuplink {
    font-weight: normal;
    font-style: normal;
    font-size: 0.8rem;

    margin-top: 1rem;
    cursor: pointer;
    display: inline-block;
    padding: 15px 35px;
    max-width: 100%;
    height: auto;
    font-weight: 700;
    text-decoration: none !important;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #fff !important;
    background-color: #ebb550;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    border-radius: 30px;
    border: none;
    overflow: hidden;
    -webkit-transition: all .2s ease;
    -moz-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease;
}

#popuplink:hover {
    background-color: #993333;
}

#animation_container {
    position: relative;
    width: 100%;
    height: 0px;
    padding-bottom: min(71.5%, var(--container-max-height));
    /* main background image height / width */
    max-width: var(--container-max-width);
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}

#scaling_animation_container {
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: 0% 0%;
}

#static_background_image {
    width: var(--container-max-width);
    height: auto;
}

#hotspots_container,
#click_close_popup {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--container-max-width);
    height: 0px;
    padding-bottom: min(71.5%, var(--container-max-height));
    /* main background image height / width */
}

.hotspot {
    position: absolute;
    transform: translateY(-50%) translateX(-50%);
    width: 10px;
    height: 10px;
    background: white;
    border-radius: 50%;
}

.hotspot_circle {
    position: absolute;
    transform: translateY(-50%) translateX(-50%);
    width: 10px;
    height: 10px;
    border: 1px solid white;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 50%;
}

.hotspot_click_area {
    position: absolute;
    transform: translateY(-50%) translateX(-50%);
    width: 40px;
    height: 40px;
    cursor: pointer;
}

#animation_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--container-max-width);
    height: auto;
    pointer-events: none;
}

#infopopup {
    position: absolute;
    max-width: 256px;
    padding: 0.5rem 1rem;
    margin-left: 25px;
    background: rgba(255, 255, 255, 0.85);
    border-radius: 32px;
    opacity: 0.85;
    box-shadow:
        0 0.7px 2.2px rgba(0, 0, 0, 0.056),
        0 1.7px 5.3px rgba(0, 0, 0, 0.081),
        0 3.1px 10px rgba(0, 0, 0, 0.1),
        0 5.6px 17.9px rgba(0, 0, 0, 0.119),
        0 10.4px 33.4px rgba(0, 0, 0, 0.144),
        0 25px 80px rgba(0, 0, 0, 0.2);

}

#extratree,
#extratree2,
#extratree3,
#extratree4 {
    width: 20px;
}

/* animated assets */

#trainYellow {
    width: 272px;
}

#trainOrange {
    width: 232px;
}

#terminal {
    width: 230px;
    top: 375px;
    left: 695px;
}

#robotarm {
    width: 75px;
}

#truck {
    width: 110px;
}

#drone,
#drone2 {
    width: 90px;
}

#boatBlue {
    width: 152px;
}

#tanker {
    width: 268px;
}

#crane {
    width: 120px;
}

#bicycle,
#bicycle2,
#bicycle3 {
    width: 35px;
}

#tankBig,
#tankBig2,
#tankBig3 {
    width: 120px;
}

#tankSmall,
#tankSmall2 {
    width: 55px;
}

#tree,
#tree2,
#tree3 {
    width: 25px;
}

#iconbio {
    width: 23px;
}

#iconaviation {
    width: 17px;
}

#globecontainer {
    width: 125px;
}

.globetrotter {
    width: 10px;
    height: 10px;
    background-color: #FFF;
    border-radius: 50%;
}


#smoke1,
#smoke2,
#smoke3,
#smoke4,
#smoke5,
#smoke6,
#smoke7,
#smoke8,
#smoke9,
#smoke10,
#smoke11,
#smoke12,
#smoke13,
#smoke14,
#smoke15,
#smoke16 {
    width: 100px;
}

.icon_container {
    position: absolute;
    transform: translateY(-50%) translateX(-50%);
    width: 50px;
    height: 50px;
    max-width: 50px;
    max-height: 50px;
    border-radius: 50%;
}

.icon_container img {
    max-width: 50px;
    max-height: 50px;
}

.icon {
    position: absolute;
    transform: translateY(-50%) translateX(-50%);
    width: 50px;
}

#cartire {
    left: 1160px;
    top: 495px;
}

#plastic {
    left: 1220px;
    top: 492px;
}

#food {
    left: 1160px;
    top: 557px;
}

#cosmetics {
    left: 1220px;
    top: 558px;
}

#chemicals {
    left: 175px;
    top: 670px;
}

#oilminerals {
    left: 240px;
    top: 666px;
}

#biofuel {
    left: 305px;
    top: 670px;
}

#edibles {
    left: 370px;
    top: 666px;
}