@charset "UTF-8";
/* CSS Document */

/* The flip card container - set the width and height to whatever you want. We have added the border property to demonstrate that the flip itself goes out of the box on hover (remove perspective if you don't want the 3D effect */
.flip-card {
    background-color: transparent;
    /*    perspective: 1000px;  Remove this if you don't want the 3D effect */
}

/* This container is needed to position the front and back side */
.flip-card-inner {
    /*    position: relative;*/
    /*    width: 100%;
    height: 100%;*/
    text-align: center;
    transition: transform 0.8s;
    /*    transform-style: preserve-3d;*/
}

/* Do an horizontal flip when you move the mouse over the flip box container */
/*.flip-card:hover .flip-card-inner {
    transform: rotateX(180deg);
}*/

/* Position the front and back side */
.flip-card-front, .flip-card-back {
    /*    position: absolute;*/
    /*    width: 100%;
    height: 100%;*/
    /*    -webkit-backface-visibility: hidden;  Safari */
    /*    backface-visibility: hidden;*/
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
    background-color: white;
    color: black;
}

/* Style the back side */
/*.flip-card-back {
    background-color: white;
    color: black;
    transform: rotateX(180deg);
}*/

.card-image {
    border-top-left-radius: calc(.25rem - 1px);
    border-top-right-radius: calc(.25rem - 1px);
}


body {
    font-family: 'Montserrat', sans-serif;
    color: #333333;
}

footer {
    margin-top: 40px;
    padding-top: 40px;
    background: #F2F2F2;
}

header {
    padding: 40px;
}
.Button {
    color: #3c3c3b;
    border-color: #838380;
    border-width: 2px;
    border-style: outset;
    background-color: #d0d0cf;
    padding-left: 4px;
    padding-right: 4px;
    border-radius: 4px;
}

    .Button:hover {
        text-decoration: underline #d0d0cf;
        color: #3c3c3b;
        border-color: #9c151a;
        border-style: inset;
        border-width: 2px;
    }



h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 32px;
    letter-spacing: 1px;
    /* font-weight: lighter; */
    color: #991521;
    border-bottom: 1px solid #991521;
    margin-top: 16px;
    letter-spacing: 1px;
}

h2 {
    font-family: 'Montserrat light', sans-serif;
    font-size: 21px;
    /* letter-spacing: 1px; */
    /* font-weight: lighter; */
    color: #991521;
    /* text-decoration: underline; */
}

h3 {
    font-family: 'Montserrat light', sans-serif;
    font-size: 20px;
    font-weight: lighter;
}

h4 {
    text-transform: uppercase;
    font-size: 14px;
    color: #991521;
    margin-bottom: 20px;
}

h5 {
    font-size: 24px;
    color: #991521;
    margin-bottom: 16px;
}

    h5 span {
        font-size: 14px;
        text-transform: uppercase;
        font-weight: lighter;
    }

h6 {
    color: #991521;
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

a:link {
    color: #333333;
    text-decoration: none;
}

a:hover {
    color: #333333;
    text-decoration: underline;
}

a:visited {
    color: #333333;
    text-decoration: none;
}

.menu-title {
    border-bottom: 0.5px solid #CCCCCC;
    margin-bottom: 20px;
}


.card-area {
    padding: 40px 0 60px 0;
    background: #F2F2F2;
}


.grey-band {
    padding: 40px 0 60px 0;
    background: #F2F2F2;
    margin-bottom: 40px;
}


.FSP-nav {
    border-top: 0.5px solid #CCCCCC;
    border-bottom: 4px solid #991521;
    background: #991521;
}

.FSP-nav-blue {
    border-top: 0.5px solid #CCCCCC;
    border-bottom: 4px solid #2383AF;
    background: #2383AF;
}

.nav-item {
    text-transform: uppercase;
    font-size: 11px;
    padding-right: 20px;
    letter-spacing: 2px;
}

a.nav-bar-toggle {
    font-size: 14px;
    font-weight: bold;
    color: rgba(255,255,255,0.55);
    text-decoration: none;
}

.dropdown-item {
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 2px;
}

    .dropdown-item:hover {
        color: #991521;
    }


.blue-hover:hover {
    color: #2383AF;
}

.dropdown-menu-new {
    top: 47px;
    border-radius: 0;
    border-color: #991521;
}

.dropdown-menu-blue {
    top: 47px;
    border-radius: 0;
    border-color: #2383AF;
}

.brand-message {
    font-size: 22px;
    margin-top: 60px;
    margin-bottom: 20px;
}

    .brand-message span {
        color: #991521;
        font-weight: bold;
    }

.message-area {
    text-align: center;
}

.brand-message-side p {
    font-size: 20px;
    padding-top: 9px;
    border-top: 2px solid #991521;
}

    .brand-message-side p strong {
        color: #991521;
        font-weight: bold;
    }

.footer-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .footer-list li {
        text-transform: uppercase;
        font-size: 11px;
        letter-spacing: 2px;
        margin-bottom: 10px;
    }

.footer-contact-list {
    font-size: 13px;
}

.post-footer {
    background: #991521;
    margin-top: 40px;
    padding: 40px;
    text-align: center;
    color: #FFFFFF;
}

.tiny-text {
    margin-top: 30px;
    font-size: 12px;
    margin-bottom: 30px;
}

.log-in-area {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .log-in-area li {
        display: inline-block;
        margin: 20px;
    }

.card {
    box-shadow: 0 0 8px rgba(0,0,0,0.10);
}

h5.card-title {
    color: #991521;
}


#accordion .card {
    box-shadow: 0 0 8px rgba(0,0,0,0.00);
    border: 0px;
}

#accordion .card-header {
    background: #FFFFFF;
    border-bottom: 1px solid #991521;
}

    #accordion .card-header:hover {
        background: #bbb;
        border-bottom: 1px solid #991521;
        cursor: pointer;
    }

.btn-link {
    color: #333333;
    text-decoration: none;
    font-size: 16px;
    margin: 0;
    padding: 0;
}

    .btn-link:hover {
        color: #333333;
    }

.btn-fspgrey {
    background-color: #c7c8ca;
}

    .btn-fspgrey:hover {
        background-color: #929396;
    }


.social-media {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .social-media li {
        padding-top: 20px;
        width: 40px;
        display: inline-block;
    }

.pageTitle {
    margin-top: 30px;
    margin-bottom: 20px;
}

.pageTitle-centre {
    margin-top: 20px;
    margin-bottom: 40px;
    text-align: center
}

.center-aligned-column {
    text-align: center;
}

.topBand {
    margin-bottom: 40px;
}

.bottomDeck {
    margin-top: 30px;
}

.productsSection {
    padding-top: 40px;
    background-color: #F2F2F2;
    color: black;
    padding: 80px;
}

.productsSection {
}

    .productsSection img {
        padding-bottom: 25px;
    }

.personal-lines-banner {
    background-image: url(../img/personal-banner.jpg);
    height: 600px;
    padding-top: 500px;
    margin-bottom: 60px;
}

    .personal-lines-banner h1 {
        text-align: center;
        color: #FFFFFF;
        text-transform: uppercase;
        letter-spacing: 3px;
        text-shadow: 0 0 8px rgba(0,0,0,0.60);
    }


.commercial-banner {
    background-image: url(../img/commercial-banner.jpg);
    height: 600px;
    padding-top: 500px;
    background-repeat: no-repeat;
    background-size: 100%;
    overflow: auto;
    overflow-x: auto;
}

    .commercial-banner h1 {
        text-align: center;
        color: #FFFFFF;
        text-transform: uppercase;
        letter-spacing: 3px;
        text-shadow: 0 0 8px rgba(0,0,0,0.60);
    }


.tableHeading {
    border-bottom: 1px solid #991521;
    margin: 10px 0 10px 0;
}

.downloadTable td {
    padding: 8px 0 8px 0;
    font-size: 14px;
}

    .downloadTable td em {
        color: #CCCCCC;
    }



.generalTable {
    margin-bottom: 20px;
}

    .generalTable td {
        padding: 8px 0 8px 8px;
        font-size: 14px;
    }

        .generalTable td em {
            color: #CCCCCC;
        }

    .generalTable tr:nth-child(even) {
        background: #F2F2F2;
    }



.tableHeading-commercial {
    border-bottom: 1px solid #2383AF;
    margin: 10px 0 10px 0;
}

    .tableHeading-commercial h6 {
        color: #2383AF
    }

.downloadTable-commercial td {
    padding: 8px 0 8px 0;
    font-size: 14px;
}

    .downloadTable-commercial td em {
        color: #CCCCCC;
    }

.commercialPage h1 {
    color: #2383AF;
    border-bottom: 1px solid #2383AF;
}

.commercialPage h2 {
    color: #2383AF;
}

.commercialPage h5 {
    color: #2383AF
}

.commercialPage {
    color: #2383AF
}


#accordion .commercialcard {
    background: #FFFFFF;
    border-bottom: 1px solid #2383AF;
    padding: .75rem 1.25rem;
}

    #accordion .commercialcard:hover {
        background: #bbb;
        border-bottom: 1px solid #2383AF;
        cursor: pointer;
    }


.commercial-accordion-body {
    padding: 1.25rem;
}


#accordion .personalcard {
    background: #FFFFFF;
    border-bottom: 1px solid #991521;
    padding: .75rem 1.25rem;
}

    #accordion .personalcard:hover {
        background: #bbb;
        border-bottom: 1px solid #991521;
        cursor: pointer;
    }

.personal-accordion-body {
    padding: 1.25rem;
}

.accordionSection {
    /* margin-top: 30px; */
}

.product-image {
    padding: 10px;
    border: 1px solid #CCCCCC;
    padding-bottom: 20px;
}

.benefitsSection {
    /* border-top: 1px solid #991521; */
}

.legalArea li {
    padding: 6px;
}

.legalArea h2 {
    margin-bottom: 20px;
    margin-top: 40px;
}

.legalArea h3 {
    margin-bottom: 10px;
    margin-top: 40px;
}


.newsContent h2 {
    border-top: 1px #CCCCCC solid;
    padding-top: 20px;
    margin-top: 40px;
}


.newsContent strong {
    color: #991521;
    font-size: 18px;
}


.dateAndAuthor p {
    margin: 20px 0 40px;
    font-size: 12px;
    color: #991521;
}


.newsImage img {
    width: 100%;
    margin: 40px 0 40px;
}

.newsArchives ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.newsArchives li {
    padding-top: 6px;
}

.callToBox {
    background-color: #FFFFFF;
    box-shadow: 0 0 8px rgba(0,0,0,0.10);
    padding: 20px 20px 10px 20px;
    border-radius: 4px;
}

    .callToBox p {
        text-align: center;
        font-size: 18px;
    }

.blue {
    color: #2383AF;
}

.blue-background {
    background: #2383AF;
}


.CookieHeader {
    color: white;
    height: 33px;
    background-color: #5d5d5d;
    border-bottom: 1px solid #21212a;
    font-size: larger;
    font-weight: bold;
    display: flex;
    justify-content: center;
}

.lblCookie {
    display: inline;
    width: fit-content;
    margin: 5px;
}

.CookieContainer {
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    height: 100%;
    z-index: 100000;
    display: flex;
    align-items: flex-end;
}

.CookieBody {
    position: fixed;
    z-index: 100000;
    overflow: auto;
    background-color: white;
    transition: width .5s ease,height .5s ease,top .5s ease,left .5s ease;
    /* top: 25%; */
    /* left: 30%; */
    /* width: 40%; */
    right: 0%;
}

.CookieContent {
    margin: 5px;
}

.CookieButton {
    color: #3c3c3b;
    border-color: #838380;
    border-width: 2px;
    border-style: outset;
    background-color: #d0d0cf;
    padding: 6px !important;
    font-weight: bold;
    font-size: 10px !important;
    border-radius: 4px;
    min-width: 50px;
    margin: 10px;
    margin-top: 0px;
    float: right;
}

    .CookieButton:hover {
        text-decoration: underline #d0d0cf;
        color: #3c3c3b;
        border-color: #9c151a;
        border-style: inset;
        border-width: 2px;
    }

.FullMask {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: black;
    opacity: .2
}
