:root {
    --wstem-white: #FFFEFF;
    --wstem-green: #00A443;
    --wstem-forest: #00402A;
    --wstem-black: #3A3735;
    --wstem-brown: #615D5A;
    --wstem-border: #D8CFC7;
    --wstem-sand: #FFF5EC;
    --wstem-gray: #A2BCB1;
    --wstem-yellow: #FFCD52;
    --wstem-blue: #0DA9FF;
    --wstem-orange: #FF9C1A;
}

#wstem {
    width: 100%;
    max-width: 980px;
    padding: 48px 16px;
    margin: 20px auto;
    text-align: left;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 15px;
    background-color: var(--wstem-sand);
}

#wstem * {
    font-family: 'IberPangea' !important;
    font-style: normal;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

#wstem h2,
#wstem h3,
#wstem h4 {
    margin-top: 0 !important;
}

#wstem ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#wstem ul li:before {
    content: none !important;
    display: none !important;
}

#wstem img {
    display: block;
    width: 100%;
}

#wstem .wstem_title {
    color: var(--wstem-green) !important;
    font-size: 30px;
    line-height: 1.13;
    font-style: normal;
    font-weight: 400;
    text-align: left;
    text-wrap: balance;
    margin-right: auto;
    margin-bottom: 36px;
}

#wstem .wstem_title strong {
    font-weight: 600;
}

#wstem .wstem_wrapper {
    width: 100%;
    overflow: hidden;
    border-radius: 15px;
    border: 1px solid var(--wstem-border);
    background: var(--wstem-white);
}

#wstem .wstem_map {
    width: 100%;
    position: relative;
}

#wstem .wstem_map_label {
    position: absolute;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 7px 15px;
    border-radius: 30px;
    border: 1px solid var(--wstem-forest);
    background: var(--wstem-forest);
    color: var(--wstem-white);
    text-align: center;
    font-size: 18px;
    line-height: 1.22;
    font-style: normal;
    font-weight: 500;
    cursor: pointer;
}

#wstem .wstem_map_label:hover,
#wstem .wstem_map_label.active {
    background-color: var(--wstem-white);
    color: var(--wstem-forest);
}

#wstem .wstem_map_label-1 {
    top: 70px;
    left: 20px;
}

#wstem .wstem_map_label-2 {
    top: 159px;
    left: 75px;
}

#wstem .wstem_map_label-3 {
    top: 247px;
    left: 40px;
}

#wstem .wstem_map_label-4 {
    top: 159px;
    left: 178px;
}

#wstem .wstem_map_label-5 {
    top: 45px;
    left: 152px;
}

#wstem .wstem_map svg {
    display: block;
    width: 661px;
    margin: 0 auto;
    transform: translateX(-77px);
}

#wstem .wstem_map #number-1 {
    transform: translate(170px, 90px);
}

#wstem .wstem_map #number-3 {
    transform: translate(50px, 80px);
}

#wstem .wstem_map #number-5 {
    transform: translate(25px, -20px);
}

#wstem .wstem_map_area {
    cursor: pointer;
}

#wstem .wstem_map_area:hover > path,
#wstem .wstem_map_area:hover > polygon,
#wstem .wstem_map_area.active > path,
#wstem .wstem_map_area.active > polygon {
    fill: var(--wstem-green);
}

#wstem .wstem_map_area:hover rect,
#wstem .wstem_map_area.active rect {
    fill: var(--wstem-white);
    stroke: var(--wstem-black);
}

#wstem .wstem_map_area:hover .wstem_map_area_number polygon,
#wstem .wstem_map_area:hover .wstem_map_area_number path,
#wstem .wstem_map_area.active .wstem_map_area_number polygon,
#wstem .wstem_map_area.active .wstem_map_area_number path {
    fill: var(--wstem-black) !important;
}

#wstem .wstem_modal {
    display: none;
}

#wstem .wstem_modal.active {
    display: block;
}

#wstem .wstem_modal_content {
    margin-top: 24px;
    border-radius: 15px;
    border: 1px solid var(--wstem-border);
    background: var(--wstem-white);
    padding: 15px 12px 23px 16px;
    position: relative;
}

#wstem .wstem_modal_close {
    cursor: pointer;
    display: block;
    width: 24px;
    height: 24px;
    text-align: left;
    text-indent: -9999px;
    overflow: hidden;
    background-image: url('/wcorp/gc/prod/es_ES/estaticos/mujeres-stem/images/ico-cerrar.svg');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 20px;
    right: 13px;
}

#wstem .wstem_modal_title {
    display: flex;
    align-items: center;
    color: var(--wstem-forest) !important;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 1.22;
    text-align: left;
    margin-bottom: 14px;
}

#wstem .wstem_modal_title span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background-color: var(--wstem-yellow);
    border-radius: 100%;
    margin-right: 12px;
    color: var(--wstem-forest) !important;
    text-align: center;
    font-size: 18px;
    line-height: 1;
    font-style: normal;
    font-weight: 600;
}

#wstem .wstem_modal_list_item {
    position: relative;
    padding-left: 28px;
    color: var(--wstem-brown) !important;
    font-size: 16px;
    line-height: 1.25;
    font-style: normal;
    font-weight: 400;
    text-align: left;
    text-wrap: balance;
    margin-bottom: 14px !important;
}

#wstem .wstem_modal_list_item:last-child {
    margin-bottom: 0 !important;
}

#wstem .wstem_modal_list_item:after {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    border-radius: 100%;
}

#wstem .wstem_modal_list_item-green:after {
    background-color: var(--wstem-green);
}

#wstem .wstem_modal_list_item-dark:after {
    background-color: var(--wstem-forest);
}

#wstem .wstem_modal_list_item-blue:after {
    background-color: var(--wstem-blue);
}

#wstem .wstem_modal_list_item-orange:after {
    background-color: var(--wstem-orange);
}

#wstem .wstem_legend {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding-top: 24px;
    display: none;
}

#wstem .wstem_legend.active {
    display: flex;
}

#wstem .wstem_legend_item {
    width: calc(50% - 16px);
    position: relative;
    padding-left: 28px;
    color: var(--wstem-brown) !important;
    font-size: 16px;
    line-height: 1.25;
    font-style: normal;
    font-weight: 400;
    text-align: left;
}

#wstem .wstem_legend_item:after {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    border-radius: 100%;
}

#wstem .wstem_legend_item-green:after {
    background-color: var(--wstem-green);
}

#wstem .wstem_legend_item-dark:after {
    background-color: var(--wstem-forest);
}

#wstem .wstem_legend_item-blue:after {
    background-color: var(--wstem-blue);
}

#wstem .wstem_legend_item-orange:after {
    background-color: var(--wstem-orange);
}

@media (min-width: 700px) {

    #wstem {
        padding: 64px 32px;
    }

    #wstem .wstem_title {
        font-size: 32px;
        line-height: 1.12;
        margin-bottom: 44px;
    }

    #wstem .wstem_map svg,
    #wstem .wstem_map #number-1,
    #wstem .wstem_map #number-3,
    #wstem .wstem_map #number-5 {
        transform: none;
    }

    #wstem .wstem_map {
        max-height: 282px;
        transform: translate(20px, -34px);
        max-width: 747px;
        margin: 0 auto;
    }

    #wstem .wstem_map_label-1 {
        top: 130px;
        left: 0px;
    }

    #wstem .wstem_map_label-2 {
        top: 179px;
        left: 27px;
    }

    #wstem .wstem_map_label-3 {
        left: 282px;
    }

    #wstem .wstem_map_label-4 {
        left: 298px;
    }

    #wstem .wstem_map_label-5 {
        top: 64px;
        left: 362px;
    }

    #wstem .wstem_map svg {
        width: 761px;
        transform: translateY(-20px)
    }

    #wstem .wstem_map #number-1 {
        transform: translate(40px, 70px);
    }

    #wstem .wstem_legend_item {
        width: auto;
    }

}
