.provider-type-description, 
.provider-description {
    font-size: 1.25rem;
    line-height: 1.67em;
    font-family: 'Open Sans', 'Arial', sans-serif;
}

.provider-type-description ul, 
.provider-description ul {
    padding-left: 1.3rem;
}

.provider-type-description li, 
.provider-description li{
    list-style: disc;
}

.card--provider {
    border: 4px solid #004a6a;
    background-color: #fff;
    height: calc(100% - 1.5rem);
    padding: 1.25rem 2.25rem;
    padding-bottom: 4rem;
    overflow: hidden;
    margin-bottom: 1.5rem;
}

.card--provider .provider-title {
    margin-bottom: 1.5rem;
    display: block;
}

.card--provider .info-text i:after {
    display: none;
}

.card--provider .info-text span {
    font-size: 1rem;
    line-height: 1.5rem;
    color: #000;
    font-weight: 400;
}
.card--small.card--provider:hover,
.card--small.card--provider:active,
.card--small.card--provider:focus {
    background-color: #fff !important;
    color: #004a6a;
    border-color: #004a6a;
}

.card--small.card--provider:hover span,
.card--small.card--provider:active span,
.card--small.card--provider:focus span {
    color: #004a6a;
    text-decoration: none !important;
}

.card--small.card--provider:hover .info-text span,
.card--small.card--provider:active .info-text span,
.card--small.card--provider:focus .info-text span {
    color: #000;
    text-decoration: none !important;
}

.card--small.card--provider .info-text a:hover span {
    color: #004a6a;
    font-weight: 700;
}

.card--provider .info-text {
    display: flex;
    align-items: center;
    padding-bottom: 0;
}

.card--provider .website {
    width: 100%;
    display: flex;
    position: absolute;
    background-color: #cae6ea;
    align-items: center;
    bottom: 0;
    left: 0;
    padding: 1rem 2.25rem;
    border-radius: 0 0 1.5rem 1.5rem;
}

.card--provider .website:hover {
    background-color: #004a6a;
    text-decoration: none;
}

.card--provider .website span {
    color: #000;
}
.card--provider .website:hover span {
    color: #fff;
}

.card--small.card--provider.card--light-blue:hover .website i::after,
.card--small.card--provider.card--light-blue:active .website i::after,
.card--small.card--provider.card--light-blue:focus .website i::after {
    background-image: url(img/icon-arrow-right-blue.svg);
    background-color: transparent !important;
}

.card--small.card--provider.card--light-blue .website:hover i::after,
.card--small.card--provider.card--light-blue .website:active i::after,
.card--small.card--provider.card--light-blue .website:focus i::after {
    background-image: url(img/icon-arrow-right-white.svg);
    background-color: transparent;
}

/* Search by type */
.types-list .item-type {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #000;
    margin-bottom: 3rem;
    font-weight: 700;
}

.types-list .item-type i {
    font-size: 3rem;
    padding-bottom: 1.5rem;
}
.item-type img {
    height: 80px;
    width: auto;
    margin-bottom: 1rem;
    -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
}

.types-list .item-type .item-type--text {
    color: #004a6a;
    position: relative;
    text-align: center;
}

.types-list .item-type.active,
.types-list .item-type:hover {
    text-decoration: none;
    color: #004a6a;
}

.types-list .item-type:hover img,
.types-list .item-type:active img,
.types-list .item-type:focus img {
    -webkit-filter: initial; /* Safari 6.0 - 9.0 */

 filter: initial;
}

.types-list .item-type .item-type--text:after {
    content: '';
    display: block;
    position: absolute;
    background-image: url(img/icon-arrow-right-blue.svg);
    width: 16px;
    height: 16px;
    top: 50%;
    transform: translate(100%,-50%);
    right: 0;
    z-index: 10;
    transition: 1s right;
    opacity: 0;
}

.types-list .item-type.active .item-type--text:after,
.types-list .item-type:hover .item-type--text:after {
    transition: 0.25s ease-in-out all;
    right: -4px;
    opacity: 1;
}

.types-list .item-type .item-type--img {
    max-width: 80px;
    max-height: 80px;
    border-radius: 50%;
    padding: 1rem;
    background-color: #004a6a;
}

.types-list .item-type .item-type--img img {
    filter: brightness(0) invert(1);
    object-fit: contain;
    position: relative;
    width: 48px;
    height: 48px;
}
.types-list .item-type.active .item-type--img,
.types-list .item-type:hover .item-type--img {
    background-color: #004a6a;
}
.types-list .item-type.active .item-type--img img,
.types-list .item-type:hover .item-type--img img {
    /* filter: none; */
}
/* Single service provider */
.single-serviceprovider .decoration--yellow-circles {
    width: 238px;
    height: 238px;
    background: #FFEFCE;
    position: absolute;
    border-radius: 50%;
    z-index: -10;
    left: -3%;
    top: unset;
    bottom: -15%;
    transform: translateX(-50%);
}

.single-service-provider {
    display: grid; 
    grid-auto-flow: row dense; 
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: auto auto; 
    gap: 1.5em 1.5em; 
    grid-template-areas: 
      "accessible-info map"
      "language-used service-provided"; 
    justify-content: center; 
    align-content: center;  
}

.accessible-info { grid-area: accessible-info; }
.service-provided { grid-area: service-provided; }
.language-used { grid-area: language-used; }
.map { grid-area: map; }

.single-service-provider .info-text {
    display: flex;
    align-items: center;
}

.single-service-provider .acf-map {
    width: 100%;
    height: 400px;
    margin: 0;
}

/* Fixes potential theme css conflict. */
.single-service-provider .acf-map img {
    max-width: inherit !important;
}
    
.info-text a {
    color: #000;
    text-decoration: underline;
	    white-space: nowrap;
    text-overflow: ellipsis;
	overflow: hidden;
}

.info-text a:hover,
.info-text a:focus,
.info-text a:active {
    color: #004A6A;
}

.info-text span {
    margin-left: 1rem;
}

.info-text i:before {
    border: 2px solid #004A6A;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    color: #004A6A;
}

.info-text a:hover i:before,
.info-text a:focus i:before,
.info-text a:active i:before {
    background-color: #004A6A;
    color:#fff;
}

.gm-style .gm-style-iw-t {
    transform: translateY(-8px);
}
.gm-style .gm-style-iw-tc::after {
    background: #dc8236;
    width: 20px !important;
}

@media only screen and (max-width: 991px){
    .single-service-provider {
        display: block;
    }

    .single-service-provider > *:not(:last-child) {
        margin-bottom: 1.5rem;
    }
}