section.locations {
    padding-bottom: 300px;
}
section.locations .bg-overlay.tint-enigmaGreen {
    background: 
        linear-gradient(to bottom, var(--enigmaGreen) 30%, transparent 70%),
        linear-gradient(to top, var(--enigmaBlack) 5%, transparent 40%),
        radial-gradient(circle at center, transparent 10%, var(--enigmaBlack) 60%)
        !important;   /* Yellow from right */
}
section.locations .bg-image {
    background-position: top!important;
    background-size: auto!important;
}
section.locations .heading:not(.subheading) {
    margin-top: 100px;
    margin-bottom: 100px;
}
section.locations .heading.enigmaYellow {
    color: var(--enigmaYellow);
}
section.locations .heading.duplicate::before {
    display: block;
    transform:  translateX(-50%) scale(2.5);
    left: 50%;
    opacity: 0.02;
}
section.locations .locations-2-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
section.locations .locations-heading .heading::after {
    content: '';
    display: block;
    position: absolute;
    width: 34px;
    height: 162px;
    background: url('../../assets/location-line.svg') no-repeat center;
    left: 50%;
    transform: translateX(-50%);
}
section.locations .locations-2-col .locations-content-image,
section.locations .locations-2-col .locations-content-image .subheading {
    display: grid;
    position: relative;
    z-index: inherit;
}
section.locations .locations-2-col .locations-content-image .subheading.align-center {
    justify-content: center;
    justify-self: center;
    width: fit-content;
    line-height: 100px;
    margin-bottom: 0;
}
section.locations .locations-2-col a.subheading-link {
    position: relative;
    color: inherit;
    display: block;
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
    text-decoration: inherit;
    opacity: 1;
    transition: opacity 0.5s ease;
    z-index: 10;
}

section.locations .locations-2-col .overlay-link {
    background: url("../../assets/arrow-right-yellow.svg") no-repeat right 6px;
    background-size: 34px;
    color: var(--enigmaYellow);
    display: inline-block;
    font-family: inherit;
    opacity: 0;
    padding-right: 56px;
    position: absolute;
    font-size: 64px;
    line-height: 61px;
    top: 50%;
    left: 50%;
    text-decoration: none;
    text-wrap: nowrap;
    transform: translate(-50%, calc(-50% - 6px));
    transition: opacity 0.5s ease;
    z-index: 10;
}

section.locations .locations-2-col .subheading:hover .subheading-link {
    opacity: 0.2;
}
section.locations .locations-2-col .subheading:hover .overlay-link {
    opacity: 1;
}

@media only screen and (max-width: 640px){
    section.locations .heading.duplicate::before {
        font-size: 100px !important;
        line-height: 90px !important;
        top: 0%;
        left: 23%;
        transform: scale(1.75)!important;
        width: auto;
        text-wrap: nowrap;
    }
}

@media only screen and (max-width: 500px){
    section.locations {
        padding-top: 20px;
        /* padding-bottom: 300px; */
    }
    section.locations .heading:not(.subheading) {
        margin-top: 20px;
        margin-bottom: 100px;
    }
    section.locations .locations-2-col .locations-content-image.column-left {
        margin-bottom: 50px;
    }
}