@import url("https://fonts.googleapis.com/css?family=Source Sans Pro");

body, 
.digitalplace-wrapper, 
.digitalplace-wrapper a,
.digitalplace-wrapper p,
.digitalplace-wrapper h1, 
.digitalplace-wrapper .h1,
.digitalplace-wrapper h2, .digitalplace-wrapper .h2, 
.digitalplace-wrapper h3, .digitalplace-wrapper .h3, 
.digitalplace-wrapper h4, .digitalplace-wrapper .h4 {
 font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", sans-serif !important;
}

.digitalplace-wrapper h2{
    font-size: 22px;
    font-weight: 500;
}

.digitalplace-wrapper #content {
  padding-bottom: 0 !important;
}

.digitalplace-wrapper ol.breadcrumb li.breadcrumb-item a.breadcrumb-link .breadcrumb-text-truncate {
    text-decoration-line: unset;
}
.digitalplace-wrapper ol.breadcrumb li.breadcrumb-item a.breadcrumb-link .breadcrumb-text-truncate:hover {
    text-decoration-line: underline;
}

#portlet_com_placecube_cookieconsent_web_portlet_CookieConsentPortlet header {
  display: none !important;
}

#portlet_com_placecube_digitalplace_local_webcontent_review_portlet_WebContentReviewPortlet {
  margin-bottom: 0 !important;
}

#portlet_com_placecube_digitalplace_local_webcontent_review_portlet_WebContentReviewPortlet header {
  display: none !important;
}

#portlet_com_placecube_digitalplace_local_webcontent_review_portlet_WebContentReviewPortlet .portlet-content-editable {
  border: none !important;
}

.portlet-navigation .nav-pills>li.active>a, .nav-pills .nav-link.active{
    background-color: #212743 !important;
}

.page-maximized #wrapper #content{
    max-width: none !important;
}

.tilesMenu{
    display: flex;
}

.tilesMenu p, 
.tilesMenu h1, 
.tilesMenu h2, 
.tilesMenu h3, 
.tilesMenu h4, 
.tilesMenu td, 
.tilesMenu tr, 
.tilesMenu li, 
.tilesMenu div, 
.tilesMenu span {
    position: relative;
}

.tilesMenu, 
.lfr-layout-structure-item-row.tilesMenu .col {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 60px 20px;
    padding-bottom: 45px;
}
.lfr-layout-structure-item-row.tilesMenu .col{
    display: inline-table;
}

.tilesMenu .image, 
.lfr-layout-structure-item-row.tilesMenu .col .image {
    overflow: hidden;
    width: 360px;
    height: 240px;
}

.tilesMenu .text, 
.lfr-layout-structure-item-row.tilesMenu .col .text {
    position: absolute;
    width: 85%;
    bottom: -40px;
}

.tilesMenu a, 
.lfr-layout-structure-item-row.tilesMenu .col .component-html a{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100% + 40px);
    display: block;
    opacity: 0;
    z-index: 2;
}
/* component-html is a temporary class to help with styling links for fragment landing pages . */

.lfr-layout-structure-item-row.tilesMenu .col .component-html a:link {
    text-decoration: underline;
    text-decoration-thickness: max(1px, 0.0625rem);
    text-underline-offset: 0.1em;
    text-decoration-skip-ink: none;
    transition: color 250ms, background-color 250ms;
    outline-offset: 0;
    outline: 3px solid transparent;
}

.lfr-layout-structure-item-row.tilesMenu .col .component-html a:hover, 
.lfr-layout-structure-item-row.tilesMenu .col .component-html a:focus {
    text-decoration: underline;
    text-decoration-thickness: max(3px, 0.1875rem, 0.12em);
    transition: background-color 250ms, text-decoration-thickness 250ms, outline-color 250ms;
    outline-offset: 0;
}

.tilesMenu > div, 
.lfr-layout-structure-item-row.tilesMenu .col .component-html > div {
    text-decoration: none;
    position: relative;
}

.tilesMenu .text p, 
.lfr-layout-structure-item-row.tilesMenu .col .component-html .text p {
    color: #6B6974;
    line-height: 1.2rem;
    font-size: 1.125rem;
    letter-spacing: -0.5px;    
    padding: 0 10px 10px 10px;
    margin: 0;
    background-color: #ffffff;
    border-bottom: 3px solid #347ab7;
}

.fr-view img.fr-dib.fr-fil {
    margin-left: 0;
    text-align: left;
}

.tilesMenu .image img, 
.lfr-layout-structure-item-row.tilesMenu .col .image img {
    width: 360px;
    margin-left: 0;
    margin-top: 0;
    transition: margin-left 250ms, margin-top 250ms, width 250ms;
    position: absolute;
    max-width: 400px;
}
.fr-view img.fr-dib {
    margin: 5px auto;
    display: block;
    float: none;
    vertical-align: top;
}

.tilesMenu .text h2,
.lfr-layout-structure-item-row.tilesMenu .col .component-html .text h2 {
    ont-size: 1.375rem;
    font-weight: 500;
    line-height: 1.8rem;
    letter-spacing: -1px;
    background-color: #ffffff;
    padding: 8px 10px;
    color: #005299;
    margin: 0;
}

.tilesMenu > div:not(.row):hover .text h2,
.lfr-layout-structure-item-row.tilesMenu .col .component-html:hover .text h2,
.tilesSubMenu > div:hover h2{
    color: #347ab7;
    text-decoration: underline;
}

.tilesSubMenu {
    display: grid;
    justify-content: center;
    gap: 10px;
    max-width: 825px;
    margin: 0 auto 0 auto;
    justify-items: center;
    grid-auto-rows: 1fr;
    grid-template-columns: repeat(4, 25%);
}

.tilesSubMenu div {
    padding: 10px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    outline: solid 2px transparent;
    transition: outline 500ms;
    width: 100%;
    border-bottom: 3px solid #347ab7
}


.tilesSubMenu a {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    opacity: 0;
    z-index: 2;
    overflow: hidden;
}

.tilesSubMenu div h2, .tilesSubMenu div h3 {
    font-size: 1.375rem;
    font-weight: 500;
    line-height: 1.8rem;
    letter-spacing: -1px;
    padding: 0 30px 20px 0;
    color: #005299;
    margin: 0;
    transition: color 500ms;

}

.tilesSubMenu div h2::after, .tilesSubMenu div h3::after {
    display: block;
    width: 30px;
    height: 30px;
    background-color: #347ab7;
    background-size: 30px 30px;
    position: absolute;
    bottom: 0;
    right: 0;
    transform: rotateX(0);
    transition: transform 500ms, background-color 500ms;    
    /*
    content: '';
    -webkit-mask-image: url(/documents/d/publicsite/arrow-right) !important;
    mask-image: url(/documents/d/publicsite/arrow-right) !important;*/
}

.tilesSubMenu div p{
    color: #6B6974;
    line-height: 1.2rem;
    font-size: 1.125rem;
    letter-spacing: -0.5px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;    
}
.tilesSubMenu div p > br {
    display: none;
}

@media(max-width: 1140px) {
    .tilesSubMenu div {
        aspect-ratio:auto;
    }
}

@media(max-width: 900px) {
    .tilesSubMenu {
        /*grid-template-columns:repeat(3,33.3333%);*/
    }
}

@media(max-width: 750px) {
    .tilesSubMenu {
        grid-template-columns:repeat(2,50%);
    }
}

@media (max-width: 650px) {
    .infopage h2 {
        /*font-size:24px;
        font-size: 1.5rem;*/
        margin: 0 0 20px 0;
    }
}

@media(max-width: 600px) {
    .tilesSubMenu {
        grid-template-columns:1fr;
    }
}

@media(max-width: 400px) {
    .tilesMenu .image img, 
    .lfr-layout-structure-item-row.tilesMenu .col .image img {
        width:270px;
    }

    .tilesMenu .image, 
    .lfr-layout-structure-item-row.tilesMenu .col .image {
        width: 270px;
        height: 180px;
    }

    .tilesMenu a:hover + .image img,
    .tilesMenu a:focus + .image img,
    .lfr-layout-structure-item-row.tilesMenu .col .component-html a:hover + .image img,
    .lfr-layout-structure-item-row.tilesMenu .col .component-html a:focus + .image img
    {
        width: 310px;
    }

    .tilesMenu, 
    .lfr-layout-structure-item-row.tilesMenu .col .component-html{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 90px 20px;
        padding-bottom: 45px;
    }

    .tilesMenu .text,
    .lfr-layout-structure-item-row.tilesMenu .col .component-html .text {
        position: absolute;
        width: 85%;
        bottom: -70px;
    }
}

@media (min-width: 768px) {
    .lfr-layout-structure-item-row.tilesMenu .col-md-4{
        /**flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;**/
    }
}

.fr-video.fr-dvb {
    display: block;
    clear: both;
}

.fr-video {
    text-align: center;
    position: relative;
}

.fr-video > * {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    max-width: 100%;
    border: none;
}

.alignright {
    float: right;
}

#mainDisplay {
    display: flex;
    flex-wrap: wrap;
    column-gap: 10px;
    row-gap: 10px;
    justify-content: center;
    margin: 0 0 20px 0;
}

#mainDisplay .elements {
    float: none;
    min-height: 125px;
    margin: 0;
    width: auto;
    flex: 0 0 calc(25% - 10px);
    display: flex;
    padding-right: 12px;
}
.elements {
    background-color: #DDF4FF;
    border-radius: 10px;
    float: left;
    min-height: 125px;
    margin-top: 10px;
    margin-right: 1%;
    margin-bottom: 10px;
    width: 275px;
}

.elementText {
    font-size: 14px;
    float: left;
    margin-left: 5px;
    width: 180px;
}
.elementImage {
    float: left;
    margin-top: 12px;
    margin-left: 12px;
    width: 50px;
}



a#webchat {
    background: #005b80;
    color: var(--white);
    font-size: 1.5rem;
    position: fixed;
    padding: 15px;
    bottom: 20px;
    right: 20px;
    border-radius: 15px;
    text-decoration: none;
    align-items: center;
    box-shadow: 0px 0px 10px 3px var(--dark-grey);
    z-index: 100;
    display: none;
    outline: solid 5px transparent;
    outline-offset: 0;
    transition: background 250ms,outline-color 250ms;
}

a#webchat img {
    float: left;
    padding-right: 10px;
}

a#webchat:hover,a#webchat:focus {
    background: #347ab7;
}

a#webchat:focus-visible {
    background: #347ab7;
    outline-color: #347ab7;
}

@media(max-width: 990px) {
    a#webchat span {
        position:absolute;
        width: 1px;
        height: 1px;
        margin: 0;
        padding: 0;
        overflow: hidden;
        clip: rect(0 0 0 0);
        -webkit-clip-path: inset(50%);
        clip-path: inset(50%);
        border: 0;
        white-space: nowrap;
    }

    a#webchat img {
        padding: 0;
    }
}

@media(max-width: 800px) {
    a#webchat {
        position:relative;
        right: 0;
        bottom: 0;
        box-shadow: none;
        width: calc(100% - 30px);
        margin: 15px auto 10px auto;
        color: #fff;
        border-radius: 6px;
        max-width: 253px;
        padding: 8px;
    }

    a#webchat img {
        padding-right: 6px;
    }

    a#webchat span {
        position: relative;
        width: auto;
        height: auto;
        margin: 0;
        padding: 6px 0 6px 0;
        overflow: visible;
        -webkit-clip-path: none;
        clip-path: none;
    }
}

@media(max-width: 450px) {
    a#webchat {
        float:none;
        margin-top: 10px
    }

    a#webchat span {
        white-space: normal;
    }
}

div.portlet-journal-content ul li, 
div.portlet-asset-publisher ul li,
.site-map .list-menu ul li { 
    list-style-type: none;
    background: url(/documents/d/guest/bullet) no-repeat 2px 8px;
    margin-bottom: 5px;
    padding-left: 18px;
}

div.portlet-journal-content ul li::before, 
div.portlet-asset-publisher ul li::before,
.site-map .list-menu ul li::before{
    content: "" !important;
    margin-left: 0 !important;
    width: 0 !important;
    display: inline !important;
}

.site-map .list-menu ul li a {
    text-decoration: none;
}

.site-map .list-menu ul li a:hover {
    text-decoration: underline;
}

.page-header .col-md-12 {
    padding-left: 0;
}


.digitalplace-wrapper .page-header h1.page-title{
    font-size: 2.5rem;
    font-weight: 500 !important;
    line-height: 3rem;
    letter-spacing: -1px;
}


div.nav-menu-links-asset-publisher-widget ul li {
    list-style-type: none;
    background: url(/documents/d/guest/arrow-right) no-repeat 2px 0px;
    margin-bottom: 5px;
    padding-left: 18px;
    background-size: 1.7rem 1.7rem;
}

div.nav-menu-links-asset-publisher-widget ul li a{
    padding-left: 15px;
    display: block;
}

img.fr-dii.fr-fir {
    float: right;
    margin: 5px 0 5px 5px;
    max-width: calc(100% - 5px);
}

img.fr-dib {
    margin: 5px auto;
    display: block;
    float: none;
    vertical-align: top;
}

.infopage img.fr-dib {
    margin: 5px auto;
    display: block;
    float: none;
    vertical-align: top;
}

.infopage img {
    position: relative;
    max-width: 100%;
}

img:not(.infopage img){
    max-width: 100%;
}

/* Related content*/
.related-content a{
    text-decoration: none;
    font-size: 18px;
}
.related-content a:hover{
    text-decoration: underline;
}
.related-content h2 {
    font-size: 18px;
}

/*Contact Information*/

.contact-us{
    background-color: #F7FBFD;
    margin: 0 calc((70% - 615px) / 2) 0 calc((70% - 615px) / 2);
}

.contact-us h2 {
    padding: 5px 8px 5px 8px;
    margin: 0;
    flex: 1 0 100%;
    font-size: 28px;
}

.contact-us p{
    padding: 5px 8px 5px 8px;
    font-size: 18px;
    font-weight: bold;
}

.contactDetails {
    display: flex;
    flex: 1 0 70%;
   /* padding: 0 15px 15px 15px;*/
   
    max-width: 400px;
    flex-wrap: wrap;
    
}

.contactDetails:not(:has(.address)) {
    max-width: 400px;
    margin: 0 auto 0 auto;
}

.contactDetails:has(.address) {
    max-width: 600px;
}



.contactDetails div span.icon {
    font-size: 2.5rem;
    padding: 0 0.1rem 0 0;
    display: inline-block;
    width: 32px;
    height: 32px;    
    background-size: cover;
    vertical-align: middle;
}

.contactDetails div a, .contactDetails div span {
    display: inline;
    font-size: 18px;
    font-weight: normal;
    margin-left: 3px;
    text-decoration: none;
}
.contactDetails div a:hover {
    text-decoration: underline;
}

.contactDetails > div span:not(.icon) {
    flex: 1 1 0;
}

.contactDetails > div div {
    flex: 1 0 100%;
    padding: 10px;
    display: flex;
}

.contactDetails > div {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

.contactDetails:has(div.address) > div {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    border-right: none;
}

.contactDetails > div.address div {
    border: none;
    padding: 0;
}

.contactDetails:has(div.address) > div.address {
    padding: 10px;
}

@media (max-width: 900px) {
    .contact-us {
        max-width:70%;
        margin: 0;
    }
}

@media (max-width: 800px) {
    .contact-us {
        max-width:600px;
        margin: 0 auto 0 auto;
    }
}

@media (max-width: 650px) {
    .contact-us h2 {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.mail {
    background-image: url('/documents/d/guest/icon_letter');
}

.phone {
    background-image: url('/documents/d/guest/icon_phone');
}

.fax {
    background-image: url('/documents/d/guest/icon_fax');
}

.contact-link {
    background-image: url('/documents/d/guest/icon_email-link');
}

.message {
    background-image: url('/documents/d/guest/icon_message-us');
}
.location {
    background-image: url('/documents/d/guest/icon_location');
}

.a-z a {
    text-decoration: none;
    font-size: 22px;
}

.a-z a:hover {
    text-decoration: underline;
}

.a-z dd {
    font-size: 17px;
}

.a-z .nav-pills .nav-link {
    border-radius: unset !important;
}

.journal-content-article iframe[title^="YouTube"] {
    max-width: 100%;
}