.geo-location-header .city, .location-set-info .city-info {
    border: 1px solid #dedede;
    padding: 10px 18px;
    border-radius: 30px;
    vertical-align: middle;
    align-items: center;
    margin-top: 26px;
}
.geo-location .city i{
    color: var(--color-beacon-supporting-blue);
}

.typed-heading {
    /*display: flex;
    justify-content: space-between;*/
}

.card .card-image{
    position: relative;
}
.card .card-image .location-distance{
    position: absolute;
    top: 10px;
    right:10px;
    background: #ffffffcf;
    border-radius: 15px;
    padding: 5px 10px;
}
.geo-location.reverse-order {
    display: flex;
    flex-direction: row-reverse;
}

/*styles for the homepage widget*/
.location-overwrite-section{
    position: relative;
    top: -100px;
}
.location-overwrite-section .location-overwrite{
    /*border: solid 4px var(--color-beacon-supporting-blue);*/
    box-shadow: -1px 3px 8px rgb(0 0 0 / 20%);
    padding: 20px 40px;
    margin: auto;
    border-radius: 20px;
    width: 60%;
    background: #fff;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 40px
}
.location-overwrite .location-info{
    width: 60%;
}
.location-overwrite .location-form{
    width: 50%;
}
.location-overwrite .input-group{
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
}

.location-overwrite .input-group input{
    width: 60%;
    padding: 17px 12px;
    box-shadow: var(--shadow-button);
    border-radius: 5px;
    border: 1px solid #dedede;
}
.location-overwrite .input-group input::placeholder{
    font-size: .9em;
}
.location-overwrite h2{
    color: var(--color-beacon-supporting-blue) !important;
}
.location-overwrite .error-input{
    border:solid 1px red !important;
}
.location-overwrite .errors{
    color: red;
}
.location-overwrite .underline{
    text-decoration: underline;
}
.location-overwrite .user-request-current-location{
    cursor: pointer;
}

.location-overwrite .location-set-info .location-information, .geo-location-header .update-location-section {
    font-size: 1.3em;
    text-align: center;
    border: 1px solid #dedede;
    padding: 8px 15px;
    border-radius: 25px;
}
.location-overwrite .location-set-info i{
    color: var(--color-beacon-supporting-blue);
}

.info-location-update-location {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 20px
}
/*
Location Modal styles
*/
.geo-modal {
    height: 0;
    width: 0;
    top: 40%;
    left: 50%;
    /*display: none;*/
    opacity: 0;
    transition: all 0.2s ease-in-out;
    background: #fff;
}
.geo-modal.active {
    display: block;
    position: fixed;
    top: 10%;
    left: 30%;
    padding: 40px;
    width: 650px;
    z-index: 99999;
    opacity: 1;
    box-sizing: border-box;
}
.geo-modal:before{
    content: '';
    position: fixed;
    background: #0000008a;
    width: 100%;
    height: 100%;
    z-index: -99999;
    left: 0;
    top: 0;
}
.geo-modal .location-overwrite{
    flex-wrap: wrap;
    gap: 0;
    background: #fff;
    padding: 40px;
    border-radius: 20px;
}
.geo-modal .location-overwrite .location-info {
    width: 100%;
}
.geo-modal .location-overwrite .location-form {
    width: 100%;
}
.geo-modal .closeModal {
    position: absolute;
    right: 86px;
    top: 60px;
    cursor: pointer;
}
.geo-location-header .update-location-section{
    font-size: 1em;
    margin-top: 24px;
}

.geo-location-header .city {
    border: 1px solid #dedede;
    padding: 10px 18px;
    border-radius: 30px;
    vertical-align: middle;
    align-items: center;
    margin-top: 26px;
    background: #fff;
}

.update-location-section.mobile i, .update-location-section i {
    color: var(--color-beacon-supporting-blue);
    text-decoration: none !important;
}

i.fa-solid.fa-spinner-scale.fa-spin-pulse {
    font-size: 2.5em;
    text-align: center;
    margin: 0 auto;
    margin-top: 60px;
}

.update-location-section{
    cursor: pointer;
}

.common-action-items .action-item .service-section {
    color: var(--color-beacon-orange) !important;
}


/*Extra small devices*/
@media only screen and (max-width: 639px){
    .common-action-items .action-item .service-section {
        font-size: 1.7em;
    }
    .common-action-items img.icon {
        width: 40px;
    }

    .info-location-update-location {
        flex-wrap: wrap;
    }

    .location-overwrite .input-group input {
        width: 85%;
    }
}


@media screen and (max-width: 767px){
    .location-overwrite{
        flex-wrap: wrap;
    }
    .location-overwrite .location-info{
        width: 90%;
    }
    .location-overwrite .location-form{
        width: 90%;
    }

    /*homepage section*/
    .common-action-items {
        flex-wrap: wrap;
    }

    .common-action-items .action-item, .common-action-items > a{
        margin-top: 20px;
        flex-wrap: wrap;
        flex: 0 0 90%;
        width: 90%;
    }

    /*personalized experiense box*/
    .location-overwrite .input-group{
        flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }
    /*geo modal*/

    .geo-modal {
        top: 10%;
        left: 10%;
    }
    .geo-modal.active {
        top: 1%;
        left: 0;
        padding: 40px;
        width: 358px;

    }
    .geo-modal .closeModal {
        right: 34px;
    }
}
/*Tablet*/
@media only screen and (min-width: 768px){

    .location-overwrite .input-group {
        flex-wrap: wrap;
        margin-top: 40px;
    }

    .location-overwrite .input-group input{
        width: 100%;
    }

    .common-action-items{
        flex-wrap: wrap;
        margin: 0 4%;
    }
    .common-action-items .action-item{
        flex: 0 0 48%;
    }
}
/*Desktop*/
@media only screen and (min-width: 1024px){
    .location-overwrite .input-group {
        flex-wrap: nowrap;
        margin-top: 40px;
    }

    .location-overwrite .input-group input{
        width: 50%;
    }
    .common-action-items .action-item{
        flex: 0 0 22%;
    }
}