@charset "utf-8";
/* CSS Document */

@font-face {
    font-family: OpenSans;
    src: url("/common/fonts/OpenSans-Regular.ttf");
}

@font-face {
    font-family: Financier;
    src: url("/common/fonts/FinancierDisplay-Light.otf");
}

body {
    font-size: 1.1rem;
    font-family: OpenSans, Verdana, "sans-serif";
    color: #666;
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    background-color: #fff;
    display: flex;
    flex-direction: column;
}

.header {
    background: #2F4066;
    width: 100%;
}

img {
    max-width: 100%;
    height: auto;
    border: none !important
}

    img.logo {
        width: 100%;
        max-width: 250px;
        margin: 0.5em 0;
        border: none !important;
        outline: none !important
    }

@media only screen and (max-width: 576px) {
    img.logo {
        max-width: 200px;
        margin: 0.5em
    }
}

h1 {
    font-family: Financier, OpenSans, "sans-serif";
    font-weight: normal;
    text-transform: uppercase;
    text-align: left;
    font-size: 4em;
    margin: 2.5em 0 0.5em 0;
    color: #fff;
    line-height: 1.1em;
    letter-spacing: 3px
}

.pageheader h1 {
    margin: 1em 0 0.5em 0;
    line-height: 1em;
    font-size: 3em;
    text-transform: none
}

.pageheader.biog h1 {
    margin: 1em 0 0.5em 0;
    line-height: 0.75em
}

h2 {
    text-align: left;
    font-weight: normal;
    color: #94B1B1;
    font-size: 1.3em;
    margin: 1.3em 0 1.3em 0
}

h3 {
    margin: 0.5em 0 1em 0;
    font-size: 1.75em;
    color: #666;
    font-weight: normal;
    text-align: center
}

.green h3 {
    color: #fff;
    font-size: 3em;
    margin: 0.5em 0 1em 0;
    font-weight: normal;
    text-align: center;
    font-family: Financier, OpenSans, "sans-serif";
    text-transform: capitalize
}

.blue h3 {
    margin: 0.5em 0 1em 0;
    font-size: 3em;
    color: #fff;
    font-weight: normal;
    text-align: center;
    font-family: Financier, OpenSans, "sans-serif";
    text-transform: capitalize
}

h4 {
    font-size: 1.5em;
    margin: 1em 0;
    color: #42759B;
    font-weight: normal
}

p.margin {
    margin: 2.5em 0;
}

.bigger {
    font-size: 1.55em;
    font-weight: normal;
    line-height: 1.2em;
    padding-bottom: 0.75em
}

span.biggerblue {
    font-size: 1.55em;
    font-weight: normal;
    line-height: 1.2em;
    padding-bottom: 0.75em;
 color: #42759B;
}

@media only screen and (max-width: 576px) {

    .bigger {
        font-size: 1.5em;
        line-height: 1.1em;
    }

    .pageheader h1 {
        font-size: 1.5em;
    }
}

.midsize {
    font-size: 1.25em
}

.smaller {
    font-size: 0.75em
}

h1 span.smaller {
    text-transform: capitalize;
    font-family: OpenSans, Verdana, "sans-serif";
    font-size: 0.5em
}

.bold {
    font-weight: bold
}

h2.strap {
    font-size: 1.5em;
    color: #fff
}

p.margin {
    margin: 2em 0
}

a {
    text-decoration: none !important;
    color: #8AACAC;
}

span.arrow a {
    padding-left: 8px
}

a:hover {
    color: #333;
}

a.button {
    border-top: 2px solid #8AACAC;
    border-bottom: 2px solid #8AACAC;
    padding: 4px 6px;
    margin: 1em 0 !important;
}

    a.button:hover {
        color: #333;
        border-top: 2px solid #333;
        border-bottom: 2px solid #333;
        transition: padding .3s, border-color .3s;
    }

.blue a.button:hover {
    color: #fff;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
}

ul li,
ol li {
    padding-bottom: 5px
}

/*------------------footer ------------*/

.footer {
    background-color: #2F4066;
    color: #fff;
    padding: 0;
    margin: 0;
    width: 100%
}

.footernav {
    margin: 0 4em;
    padding: 4em 1em 1em 1em;
}

    .footernav img.footlogo {
        max-width: 200px;
    }

.footer ul {
    display: block;
    margin: 0 0 2.5em 0;
    padding: 0;
    text-decoration: none;
    text-align: left;
    font-size: 0.9em;
    position: relative
}

    .footer ul li {
        list-style: none;
        padding: 2px 0;
        line-height: 1.3em
    }

.footer a {
    color: #fff;
    text-decoration: none;
    position: relative;
    border-top: none;
    border-bottom: none;
}

    .footer a:hover {
        color: #94B1B1;
        border-top: 2px solid #94B1B1;
        border-bottom: 2px solid #94B1B1;
    }

img.linkedin {
    max-width: 40px !important
}

.base {
    background-color: #407195;
    padding: 2em 0 1em 0;
    margin: 0;
    color: #fff;
}

    .base p {
        font-size: 0.75em;
        text-align: right;
        padding: 2em 2em 0 2em;
        margin: 0;
        color: #ccc
    }

        .base p a {
            color: #ccc;
            text-transform: none;
            border: none
        }

            .base p a:hover {
                color: #A3BDBD;
                border: none
            }

.accreditation {
    text-align: center;
    padding-bottom: 8px;
    min-width: 150px
}

@media only screen and (max-width:1400px) {
    .footernav {
        margin: 0 1em;
    }

        .footernav img.footlogo {
            max-width: 160px;
        }
}

@media only screen and (max-width: 768px) {
    .footer ul {
        margin: 1em 0 1.5em 0;
    }
}

@media only screen and (max-width: 576px) {
    .footernav {
        padding: 3em 0
    }

        .footernav img.footlogo {
            max-width: 180px;
        }

    .base p {
        text-align: center;
    }
}

/*------------Content------------*/

.mainimg {
    background-image: url("/images/mainimg.jpg");
    background-position: center;
    background-repeat: no-repeat;
    min-height: 700px;
    border-top: 10px solid #A3BDBD;
}

.strapline {
    background-image: url("/images/tpsquare.png");
    background-position: top left;
    background-repeat: repeat;
    padding: 0 8em
}

.strapline2 {
    background-image: none;
    background-position: top left;
    background-repeat: repeat;
    padding: 0 8em
}

@media only screen and (max-width:1200px) {
    .strapline {
        padding: 0 4em
    }

    .mainimg {
        min-height: 600px
    }
}

@media only screen and (max-width:768px) {
    .strapline {
        padding: 0 2em
    }

        .strapline h1 {
            font-size: 3em;
            margin: 2.3em 0 0.5em 0;
        }

    .mainimg {
        min-height: 600px
    }
}

@media only screen and (max-width:576px) {

    h1 {
        font-size: 2em
    }

    .strapline h1 {
        font-size: 2.25em;
        margin: 1.5em 0 0.5em 0;
    }

    .mainimg {
        min-height: 650px
    }
}

.blue {
    background-color: #2F4066;
    color: #fff;
    padding: 1em 0 !important
}

.green {
    background-color: #94B1B1;
    color: #fff;
    padding: 1em 0 !important
}

.bluetext {
    color: #42759B;
}

.greentext {
    color: #94B1B1
}

.green a.button {
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    color: #fff;
    padding: 4px 6px;
    margin: 1em 0 !important;
}

    .green a.button:hover {
        border-top: 2px solid #333;
        border-bottom: 2px solid #333;
        color: #333;
    }

.pageheader {
    background-color: #407195;
    color: #fff;
    padding: 1em 0 1em 1em !important;
    border-top: 10px solid #A3BDBD;
    position: relative
}

p.biog {
    margin: 0;
    padding: 1.2em 0
}

.servicesrow {
    background-color: #2F4066;
    color: #fff;
    padding: 2em 0;
    position: relative
}

.servicesrow {
    overflow: hidden
}

    .servicesrow a {
        color: #fff;
        padding: 20px 0 20px 0;
        /*--- background-image:url("/images/thumbprint.png");
background-position:left ;
background-repeat: no-repeat;
margin-left: 2em;---*/
        border-bottom: 0;
    }

    .servicesrow img {
        margin-right: 8px;
        float: left
    }

    .servicesrow a:hover {
        color: #A3BDBD;
    }

.row.testimonial {
    border: 1px solid #ccc;
    padding: 8px
}

.card {
    color: #666666;
}

.card-header {
    background-color: #2F4066;
    color: #fff
}

.card-title {
    font-family: Financier, Verdana, "sans-serif";
    font-size: 1.5em
}

.card-footer {
    border-top: 0;
    padding: 1em
}

    .card-footer a.button {
        border-top: 2px solid #94B1B1;
        border-bottom: 2px solid #94B1B1;
        color: #94B1B1;
        padding: 4px 6px;
        margin: 1em 0 !important;
    }

        .card-footer a.button:hover {
            color: #333;
            border-top: 2px solid #333;
            border-bottom: 2px solid #333
        }

.biog span {
    color: #A3BDBD;
    font-weight: bold;
    width: 1.5em;
    display: inline-block
}

.subhead,
.aboutus h2 {
    color: #94B1B1;
    font-size: 1.3em;
    margin: 1.1em 0 
}

.staffpic {
    margin: 0.5em 0;
    padding: 0;
}

    .staffpic p {
        text-align: center;
        font-size: 1em;
        color: #fff;
        background-color: #A3BDBD;
        padding: 3px 3px 1em 3px;
        line-height: 1.1em
    }

    .staffpic img {
        margin-bottom: 1em
    }

.position {
    display: block
}

.staffpic a {
    color: #fff;
    text-decoration: none;
    border: 0
}

    .staffpic a:hover {
        color: #333
    }

.page-link {
    position: relative;
    display: block;
    color: #94B1B1;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #94B1B1;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

a.page-link {
    color: #94B1B1;
}

    a.page-link:hover {
        color: #333
    }

/*--------- accordion--------

.accordion-button {font-size:1.1rem;
border: 1px solid #A3BDBD;
background-color: #73A2C4;
color: #fff;
min-height: 4.5em}

.accordion-body {border: 1px solid #ccc}

.accordion-item ul {padding-left: 0;
margin-left: 1em;}

.accordion-item ul li {font-size:0.9em;
list-style:disc}

.accordion-item ul li a {border: none;
}

.accordion-button.collapsed:after {color: #FFFFFF}

.accordion-button:not(.collapsed)
{color: #333;
background-color: #fff}

.accordion-button:focus {border-color:#8AACAC!important;
box-shadow:0 0 0 .05rem #8AACAC}

---*/

.services {
    margin: 0;
    padding: 0;
    background-color: #f5f5f5;
    border-left: 4px solid #fff;
    border-right: 4px solid #fff;
    border-bottom: 1px solid #f1f1f1
}

    .services .title {
        border: 1px solid #ccc;
        padding: 1em;
        border-bottom: 0;
        margin-bottom: 0;
        background-color: #8AACAC;
        color: #fff
    }

        .services .title a {
            color: #fff
        }

            .services .title a:hover {
                color: #000
            }

    .services a::after {
        content: "   \00BB";
        font-size: 1.3em
    }

    .services ul {
        margin: 0;
        padding: 1em;
    }

        .services ul li {
            list-style: none;
            padding: 10px 0;
            border-bottom: 1px solid #ccc
        }

            .services ul li:last-child {
                border-bottom: 0;
                padding-bottom: 5px
            }

            .services ul li a {
                border: 0
            }

ul.notablecases {
    margin: 0;
    padding-left: 0
}

    ul.notablecases li {
        list-style: none;
        padding: 1em 0;
        border-bottom: 1px solid #8AACAC;
    }

        ul.notablecases li:first-child {
            padding-top: 0
        }

.news {
    list-style: none;
    padding: 1.2em 0 0 0;
    border-bottom: 1px solid #8AACAC;
}

ul.groupedservices {
    margin: 1.3em 0;
    padding: 0 1em 0 1.3em
}

    ul.groupedservices li {
        list-style: none
    }

        ul.groupedservices li a::after {
            content: "  >>";
        }

        ul.groupedservices li a {
            font-size: 1.2em;
        }

        ul.groupedservices li p {
            padding-top: 1em;
            font-size: 0.9em
        }

@media all and (max-width: 576px) {
    ul.groupedservices {
        margin: 1.3em 0;
        padding: 0 1em 0 0
    }

        ul.groupedservices li a {
            font-size: 1.13em;
        }
}

/*----Forms-------------*/

input,
select,
textarea {
    border: 1px solid #ccc !important;
    background-color: white;
    margin: 0 2em 1em 2em;
    padding: 6px 10px;
    color: #999;
    font-size: 0.9em;
    font-weight: normal
}

select {
    min-width: 300px
}

    select:focus {
        outline: 2px solid #A3BDBD
    }

.containerform {
    margin: 0 auto;
    text-align: center
}

/*-------------megamenu-------------*/

.navbar .megamenu {
    padding: 1rem;
    font-size: 0.9em;
    text-transform: capitalize
}

/* ============ desktop view ============ */

@media all and (min-width: 992px) {

    .navbar .has-megamenu {
        position: static !important;
    }

    .navbar .megamenu {
        left: 0;
        right: 0;
        width: 100%;
        margin-top: 0 !important;
    }

    .megamenu .col-lg-3 {
        width: 24% !important;
        padding-bottom: 2em
    }

    .megamenu li {
        font-size: 0.9em;
        line-height: 1.25em;
        padding-bottom: 12px
    }

    h6.title a {
        color: #333;
        font-size: 1em
    }
}

ul.list-unstyled.megalist {
    text-align: center
}

    ul.list-unstyled.megalist li {
        display: inline;
        margin: 1em;
        font-size: 1em;
    }

@media (min-width: 1200px) {

    .megamenu .col-xl-2 {
        width: 20% !important;
        padding-bottom: 2em
    }
}

/* ============ mobile view ============ */

@media(max-width: 991px) {

    .navbar.fixed-top .navbar-collapse,
    .navbar.sticky-top .navbar-collapse {
        overflow-y: auto;
        max-height: 90vh;
        margin-top: 10px;
    }

    a.nav-link {
        padding: 0 0 0 0.5em !important
    }

    .navbar-nav {
        margin-top: 1em;
        padding-top: 1em;
        border-top: 1px solid #ccc
    }

    .megamenu li a {
        font-size: 0.9em
    }

    h6.title a {
        color: #333;
        font-size: 1em
    }

    .megamenu .col-lg-2 {
        padding-bottom: 3em
    }

    ul.list-unstyled.megalist {
        text-align: left
    }

        ul.list-unstyled.megalist li {
            display: block;
            margin: 0;
        }

    .navbar-dark .navbar-toggler {
        border-color: transparent
    }
}

/* ============ mobile view .end// ============ */

/* ============ Carousel ============ */

.carousel {
    background-color: #CBDADA;
    color: #000;
    padding: 1em 4.5em 0.5em 4.5em
}

@media(max-width: 576px) {

    .carousel {
        padding: 1em 3em 0.5em 3em
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow:  hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}



/*----cookies ---> */

#cookiesAcceptAllButton, #cookiesSaveButton, #cookiesOpenButton, #cookiesSetPrefsButton {display:block;cursor:pointer;box-sizing:border-box;padding:6px 8px!important;border:1px solid #6B8BA5;text-align:center;width:300px;margin:1em auto 1em auto;border-radius:18px;
font-size: 13px}


/*--------search----------*/



.searchnews {text-align:left!important}

.searchnews input, select, textarea {
border: 1px solid #666;
margin-left: 0;
color:#94B1B1;
background-color: #fff;
width: 300px!important;
}


.searchnews input[type=search] {width: 300px!important;
padding: 4px 9px}

.searchnews input[type=button] {width: 100px!important;
    padding: 4px 9px }

.searchnews input[type=search]::placeholder {color:#94B1B1}

.searchnews input:focus {
color: #000;
border:1px solid #000;
outline: none}

/*------- menu transition -------*/

@media (min-width: 992px) {
    .animate {
        animation-duration: 0.4s;
        -webkit-animation-duration: 0.4s;
        animation-fill-mode: both;
        -webkit-animation-fill-mode: both;
        transition-timing-function: ease-out;
    }
}

@keyframes slideIn {
    0% {
        transform: translateY(2rem);
        opacity: 0;
    }

    100% {
        transform: translateY(0rem);
        opacity: 1;
    }

    0% {
        transform: translateY(2rem);
        opacity: 0;
    }
}

@-webkit-keyframes slideIn {
    0% {
        -webkit-transform: transform;
        -webkit-opacity: 0;
    }

    100% {
        -webkit-transform: translateY(0);
        -webkit-opacity: 1;
    }

    0% {
        -webkit-transform: translateY(2rem);
        -webkit-opacity: 0;
    }
}

.slideIn {
    -webkit-animation-name: slideIn;
    animation-name: slideIn;
}