:root {
  --body-font-family : Arial;
  --cassiopeia-font-family-headings : Arial;
}



.h2, h2 {
        font-size: calc(1.3rem + .6vw);
    }

.h3, h3 {
    font-size: calc(1.275rem + .6vw);
}

.h4, h4 {
    font-size: calc(1.25rem + .6vw);
}

.h5, h5 {
    font-size: 1.1rem;
}


@media (min-width: 1200px) {
    .h2, h2 {
        font-size: 1.75rem;
    }

    .h3, h3 {
        font-size: 1.532rem;
    }

    .h4, h4 {
        font-size: 1.316rem;
    }
}




.grid-child.container-nav {
    background: #432B89;
}

header.header.container-header.full-width {
    background-image: none;
    background-color: unset;
}

.container-topbar {
    background-color: #0072BB;
}

#main-menu {
    padding: 0px;
}

#main-menu>ul>li {
    padding-left: 2.0em;
    border-right-width: 1px;
    border-right-color: #605582;
    border-right-style: solid;
    margin-left: 0px;
    padding-right: 2.0em;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
}

#main-menu>ul>li.active {
    background-color: #00ad9a;
}
 

.mod-finder__search.input-group>input, .mod-finder__search.input-group>button  {
    padding-top:5px;
    padding-bottom:5px;
}

.mod-finder__search.input-group {
    width: 350px;
    float: right;
}

.mod-finder__search.input-group>input {
    width: 200px;
    border-radius: 0px;
}

.mod-finder__search.input-group>button {
    background: white;
    border-left: none;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-right: 5px;
    border-radius: 0px;
    border-top-color: rgb(206, 212, 218);
    border-right-color: rgb(206, 212, 218);
    border-bottom-color: rgb(206, 212, 218);
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
}

.mod-finder__search.input-group>button>span.icon-search {
    color: #0072BB;
}


.brand-logo>img {
    padding-top: 25px;
    width: 400px;
    padding-bottom: 25px;
}

#mod-custom195 {
    float: right;
    padding-top: 20px;
}


#footer-border {
    background-color: #0072BB;
    min-height: 40px;
}

.footer {
    border-top-color: #EAEEF9 !important;
    border-top-style: solid !important;
    border-top-width: 2px!important;
    background-color:white;
    background-image: url("/images/hex-cropped.jpg");;
    color: #0072BB;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 350px;
}

.footer .grid-child {
    flex-direction: column;
    align-items: normal;
}

.footer .socials span{
    padding-right: 15px;
}

.frimley-copyright {
    color: #0072BB;
    font-weight: 600;
    font-size: 18px;
}

.footer ul.nav {
    flex-direction: row;
}

.footer ul.nav>li {
    margin-right: 15px;
    font-size: 18px;
}

.footer ul.nav>li>a {
    text-decoration: underline;
}

.footer ul.nav>li>a:hover {
    color: var(--link-hover-color);
}

.frim-news div.com-content-category-blog__item.blog-item {
    background-color: #F0F4F9;
    padding: 15px;
    margin: 15px;
}


.frim-news div.com-content-category-blog__item.blog-item h2{
    font-size: 1.2em;
    color: #0071BB;
}

.frim-news div.com-content-category-blog__item.blog-item div.item-content {
    padding: 10px;
    flex: 1 0 auto;
}

.fr-article-list {
    background: #F0F4F9;
    border: none;
}

.fr-article-list .card-body{
    padding: 0px;
}

.fr-article-list .card-footer{
    background: #F0F4F9;
    border: none;
    padding: 0px;
}

.fr-article-list .card-footer a{
    color: #0071BB;
    font-weight: 600;
}
.frim-news img{
    background: #fff;
}


.fr-news-pagination {
    background: #0072BB;
    display: flex;
    justify-content: center;
    margin-left: 15px;
    margin-right: 15px;
}

.fr-news-pagination .page-link {
    border: none;
    background: #0072BB;
    border-radius: 0px;
    color: #fff;
}

.fr-news-pagination a.page-link {
    text-decoration: underline;
}

.fr-news-pagination ul.pagination{
    margin: 0.5rem !important;
}

@media (max-width: 599px) {
  .pagination .page-item a {
    display: none;
  }
  /* Display only the 'First', 'Previous', 'Active', 'Next', and 'Last' links */
  .pagination .page-item:first-child a,
  .pagination .page-item:last-child a,
  .pagination .page-item.active a,
  .pagination .page-item:nth-child(2) a,
  .pagination .page-item:nth-last-child(2) a {
    display: block;
    margin: 0 5px; /* Adjust spacing as needed */
  }
}

.pagination .page-item.active a {
  text-decoration: none;
  font-weight: bold;
}

.left-hand-menu a {
    display: block;
    height: 100%;
    width: 100%;
    background: #432B89;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    padding-right:15px;
    color: white;
    font-weight: 400;
}

.left-hand-menu li.active>a {
    background: #BE0177;
    text-decoration: none;
}

.breadcrumb {
    background-color: #fff; 
    margin-bottom: 0;
    padding-bottom: 16px !important;
}


.left-hand-menu {
    margin-right: 20px;
}
    
.footer {
    margin-top: 0px;
}

/* related articles */

.related-articles-content {
    flex-direction: column;
    flex: 1;
    display: flex;
    column-gap: 1em;
    width: 100%;
    max-width: none;
    grid-column-end: main-end;
    width: 100%;
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}

.related-articles-bottom {
    margin-top: 20px;
}

.related-articles-bottom>ul>li {
    display: flex;
}


.frim-rel-article .mod-articles-title {
    font-size: 1.2em;
}

.frim-rel-article .frim-carousel .mod-articles-title {
    color: #BE0177
}

.frim-rel-article {
    background-color: #ffffff;
    padding: 15px;
    margin: 10px;
    display: flex;
    flex-direction: column;
}

.frim-rel-article .card {
    padding: 10px;
    flex: 1 0 auto;
    border: none;
}

.frim-rel-article .card-body {
    padding: 0px;
}

.frim-rel-article .card-footer {
    background: unset;
    border: none;
    padding: 0px;
}

.frim-rel-article .card-footer a {
    color: #0071BB;
    font-weight: 600;
    text-decoration: underline;
}

.related-articles-bottom>h3, .related-articles-bottom>h2  {
    margin-left: 10px;
}


/* green related articles */

.frim-related-green div.container-related-articles {
    background-color: #E6F2DE;
}

.frim-related-green div.container-related-articles .mod-articles-title {
    color: #5FBB46;
}

.frim-related-green .container-related-articles .related-articles-bottom>h3  {
    color: #5FBB46;
}


/* blue related articles */

.frim-related-blue div.container-related-articles {
    background-color: #F0F4F9;
}

.frim-related-blue div.container-related-articles .mod-articles-title {
    color: #0071BB;
}

.frim-related-blue .container-related-articles .related-articles-bottom>h3, .frim-related-blue .container-related-articles .related-articles-bottom>h2  {
    color: #0071BB;
}


/* make the right choice home */



#frim-right-choice .sppb-addon.sppb-addon-module {
    flex-direction: column;
    flex: 1;
    display: flex;
    column-gap: 1em;
    width: 100%;
    max-width: none;
    grid-column-end: main-end;
    width: 100%;
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}

#frim-right-choice li {
    display: flex;
}


/* frimley homepage  */

.frim-home .container-related-articles {
    background-color: #BC0F83;
    margin-top: 25px;
}


.frim-home .frim-home-views h3, .frim-home .frim-home-views p {
    color: #ffffff;
}

.frim-home-views {
    padding-top: 25px;
    padding-bottom: 25px;
}

.sppb-btn-primary {
  background-color: #432B89!important;
  border-color: #432B89!important;
  text-decoration: none!important;
  border-radius: 0px!important;
}

.sppb-btn-primary:hover {
  text-decoration: underline!important;
}

.rc-blue h4, .rc-blue h3 {
  color:#0068A7;
}
.rc-teal h4, .rc-teal h3 {
  color:#05A092;
}
.rc-purple h4, .rc-purple h3 {
  color:#362A72;
}
.rc-green h4, .rc-green h3 {
  color:#0DA048;
}
.rc-orange h4, .rc-orange h3 {
  color:#DE7A17;
}
.rc-dblue h4, .rc-dblue h3 {
  color:#114078;
}
.rc-pink h4, .rc-pink h3 {
  color:#AA1C72;
}
.rc-red h4, .rc-red h3 {
  color:#EF2E24;
}

#scw-mainmenu>li>a {
    width: 100%;
    text-align: center;
    display: block;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
}

#scw-mainmenu>li {
    border-right-width: 1px;
    border-right-color: #605582;
    border-right-style: solid;
    margin-left: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    width: 14.28%;
    align-items: center;
}

#main-menu>nav {
    width: 100%;
    margin-top:0px;
}

#scw-mainmenu>li.active {
    background-color: #BE0177;
}

#scw-mainmenu>li.active a {
    font-weight: 600;
    text-decoration: underline;
}

#scw-mainmenu>li>a:hover {
    text-decoration: underline;
}

@media (width >= 768px) {
    #scw-mainmenu {
        flex-direction: row;
        flex: 1;
        display: flex;
    }
}

@media (width < 768px) {
    #main-menu>nav {
        margin-top: 0.5em;
        margin-bottom: 0.5em;
    }

    #main-menu>nav li {
        width: 100%;
    }

    .footer .mod-menu.mod-list.nav {
        flex-direction: column;
    }

    .footer .socials {
        margin-bottom: 90px;
    }
}

#main-menu button.navbar-toggler {
    border: none;
}

#main-menu button.navbar-toggler .icon-menu:before {
        font-size: 25px;
}

.fr-service-finder>div {
    background: #0072BB;
    padding: 15px;
    padding-bottom: 60px;
}

#findservice {
    background: #432B89;
    color: white;
    float: right;
}


.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 0px) !important;
  background: #00ad9a;
  padding: 10px !important;
}

.swiper-button-next:after {
  font-weight: 900;
  font-size: 30px !important;
  color: white;
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 0px) !important;
  background: #00ad9a;
  padding: 10px !important;
}

.swiper-button-prev:after {
  font-weight: 900;
  font-size: 30px !important;
  color: white;
}
/* Make the container actually sized */
.mySwiper {
  block-size: 430px !important; /*we have to give a proper height!!!*/
}
/* Inherit that height down */
.mySwiper .swiper-wrapper,
.mySwiper .swiper-slide {
  block-size: 100%;
}

/* Keep slides flex so inner content can stretch */
.mySwiper .swiper-wrapper {
  align-items: stretch;
}
.mySwiper .swiper-slide {
  display: flex;
  flex-direction: column;
  min-height: 0; /* prevents children from forcing extra height */
}
.frim-rel-article {
  /*height: 100%;*/
}
/* Inside each slide, make the article a column layout */
.swiper-slide .swiper-article,
.swiper-slide .frim-rel-article {
  /* keep both in case either wraps your content */
  display: flex;
  flex-direction: column;
  min-height: 0; /* critical so children can shrink */
  block-size: 100%; /* fill slide vertically */
}

/* The text body grows to fill available space */
.swiper-slide .swiper-article-body {
    flex: 1 1 auto;
    min-height: 0; /* allows scroll/overflow when tall */
    overflow: hidden; /* or auto if you prefer a scrollbar */
    padding-top: 0px;
    padding-right: 15px;
    padding-bottom: 0px;
    padding-left: 15px;
}

/* Footer sits at the bottom */
.swiper-slide .swiper-article-footer,
.swiper-slide .card-footer {
  margin-top: auto;
}
.swiper-slide .swiper-article-footer {
    padding-top: 0px;
    padding-right: 15px;
    padding-bottom: 0px;
    padding-left: 15px;
}

/* Images shouldn’t force the slide taller */
.swiper-slide figure.mod-articles-image {
  margin: 0;
  flex: 0 0 auto;
}
.swiper-slide figure.mod-articles-image img {
  display: block;
  max-width: 100%;
  height: auto; /* avoid stretching */
}
.swiper-article-title {
    padding-top: 15px;
    padding-right: 15px;
    padding-bottom: 0px;
    padding-left: 15px;
}

.swiper-article-body dl {
    margin-bottom: 0.5rem;
}

.swiper-article-body .mod-articles-date {
    font-size: 14px;
    color: var(--secondary-color);
}


.frim-rel-article p {
    margin-bottom: 0.5rem;
}

.site .sppb-row-container {
    padding-left: 0px;
    padding-right: 0px;
}


.frim-carousel .frim-rel-article {
    margin-top: 10px;
    margin-right: 35px;
    margin-bottom: 10px;
    margin-left: 35px;
}


.frim-news.view-article .left-hand-menu {
  display:none;
}

.frim-news.view-category .related-articles-content {
  display:none;
}

a.article-link-block {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    flex: auto;
}

.footer div:first-child {
  padding-bottom: 0px;
}

.footer .mod-menu.mod-list.nav {
  width: 100%;
  padding-bottom: 40px;
}

.frimley-copyright {
  width:100%;
}

.article-link-block:hover .item-content .readmore span {
  text-decoration:underline!important;
}

.view-category.layout-blog.frim-news .archive-news-button ul.mod-menu.mod-list.nav {
    margin-bottom: 20px;
    margin-left: 15px;
    flex-direction: row;
    width: 100%;
    align-items: flex-end;
}

#mod-custom200 a {
  color:white;
}

.frim-carousel h3 {
  color: #BE0177;
}


.frim-home h1 {
  position: absolute !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.mod-finder.js-finder-searchform.form-search button {
  color:black;
}

a.skip-link {
  color: #fff !important;
  padding: 10px;
  position: absolute;
  transform: translateY(-200%);
}

a.skip-link:focus {
  transform: translateY(0%);
}