/*
Theme Name: SCC Partner
Theme URI: https://www.somerset.gov.uk
Author: Somerset County Council
Author URI: https://www.somerset.gov.uk
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: scc-partner
Version: 1.1

*/

/*****************************************************************
/*----------------------------------------------------------------
GLOBAL STYLING
----------------------------------------------------------------/*
*****************************************************************/

/* --- Disable Chrome highlight issue */
input:focus,
select:focus,
textarea:focus,
button:focus,
div:focus,
a:focus {
outline: none !important;
}

html {
position: relative;
min-height: 100%;
}

body {
background-color: #f5f5f5 !important;
color: #000;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
padding: 0;
}

.hidden {
display: none;
}

.flex-display {
display:flex;
align-items:center;
justify-content:center;
}

.container {
position: relative;
}

@media only screen and (min-width : 1200px) {

    .container {
    max-width: 1200px;
    }

}

.no-pad {
padding: 0;
}

.no-pad-right {
padding-right: 0;
}

.no-pad-left {
padding-left: 0;
}

.no-dots .slick-dots {
display: none !important;
}

.full-row {
width: 100vw;
height: 100%;
position: absolute;
margin-left: -50vw;
margin-right: 0;
left: 50%;
top: 0;
z-index: 1;
}

.right-align {
justify-content: flex-end;
position: relative;
}

.image-shading {
background: rgba(0, 0, 0, 0.25);
}

.full-height-slider,
.full-height {
height: 100vh !important;
min-height: 500px;
}
    
section,
footer {
position: relative;
overflow: hidden;
}

.main-container {
clear: both;
}


/*****************************************************************
/*----------------------------------------------------------------
CONTENT STYLING
----------------------------------------------------------------/*
*****************************************************************/

img {
height: auto;
max-width: 100%;
}

hr {
border-top: 1px solid #dedede;
margin: 10px 0 0;
width: 100%;
}

a,
a:visited  {
color: #000;
}

a:hover {
color: #000;
text-decoration: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
table,
blockquote,
input,
textarea {
margin-bottom: 20px;
margin-top: 0;
padding: 0;
}

dl,
ol,
ul {
margin: 0 0 24px 30px;
}

    ol {
    list-style: none;
    }

    ol li:before {
    content: '\f00c';
    font-family: "Font Awesome 5 Free";
    font-size: 16px;
    font-weight: bold;
    padding-right: 10px;
    color: #01ad29;
    }

h1,
h2,
h3,
h4,
h5,
h6 {
font-family: "Source Sans Pro", sans-serif !important;
font-weight: 300 !important;
line-height: normal;
}

p,
li,
a,
label,
span {
font-size: 20px;
font-weight: 400;
font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}

	span {
	font-size: inherit;
	}

label {
font-size: 14px;
margin: 0;
display: block;
}

    h1 {
    font-size: 56px;
    }

    h2 {
    font-size: 40px;
    }

    h3 {
    font-size: 32px;
    }

    h4 {
    font-size: 24px;
    }

    h5 {
    font-size: 20px;
    }

    h6 {
    font-size: 14px;
    }


/*****************************************************************
/*----------------------------------------------------------------
INPUT STYLING
----------------------------------------------------------------/*
*****************************************************************/

input,
textarea {
font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
padding: 10px;
}

.key-link,
.default-button,
input[type=submit] {
background: #000;
transition: all 0.3s cubic-bezier(.25,.8,.25,1);
border: 0;
border-radius: 4px;
color: #fff;
cursor: pointer;
margin: 20px 0 0;
padding: 10px 20px !important;
text-align: center;
text-decoration: none;
vertical-align: middle;
position: relative;
display: inline-block;
color: #fff !important;
font-size: 18px !important;
font-family: "Source Sans Pro", sans-serif !important;
font-weight: 300;
transition: all 0.25s;
}

    input[type=submit]:hover {
    box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2);
    transition-delay: 0s;
    }

select {
width: 100%;
padding: 0 15px;
height: 52px;
font-family: 'Raleway';
font-size: 16px;
font-weight: 400;
border: 1px solid #e5e5e5;
}

input[type=text],
input[type=search],
input[type=email],
input[type=tel],
textarea {
background: #fff;
border: 0;
margin: 0;
font-size: 16px;
font-weight: 400;
padding: 15px;
width: 100%;
border: 1px solid #e5e5e5;
}

::placeholder {
opacity: 0.5 !important;
text-transform: none;
font-size: 16px;
letter-spacing: -0.5px;
font-weight: 400;
}

    /*--------------------------------------------------------------
	--  CUSTOM RADIO BUTTONS -- */

    .custom-radio {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 20px;
    line-height: 24px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    }

    .custom-radio input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    }

    .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eaeaea;
    border-radius: 50%;
    }

    .custom-radio:hover input ~ .checkmark {
    background-color: #ccc;
    }

    .custom-radio input:checked ~ .checkmark {
    background-color: #4e3cd3;
    }

    .checkmark:after {
    content: "";
    position: absolute;
    display: none;
    }

    .custom-radio input:checked ~ .checkmark:after {
    display: block;
    }

    .custom-radio .checkmark:after {
    top: 9px;
    left: 9px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: white;
    }


/*****************************************************************
/*----------------------------------------------------------------
404 ERROR PAGE
----------------------------------------------------------------/*
*****************************************************************/

.error404 #background-block {
height: 100%;
clip-path: none;
}

.error404 header .header-search,
.error404 header .breadcrumbs-section {
display: none;
}

.error404 .header-search {
padding: 0;
}

.error404 .header-search button {
top: 0;
}

.error404 h1 {
color: #fff;
font-size: 100px;
font-weight: bold;
margin: 40px 0 10px;
line-height: normal;
}

.error404 h2 {
margin: 0 0 30px;
color: #fff;
}

.error404 .top-block p,
.error404 .top-block li,
.error404 .top-block a {
color: #fff;
font-size: 28px;
margin-bottom: 60px;
}


/*****************************************************************
/*----------------------------------------------------------------
COOKIES BLOCK
----------------------------------------------------------------/*
*****************************************************************/

#cookies {
display: none;
position: fixed;
z-index: 9999999999999999999999;
max-width: 30%;
right: 30px;
bottom: 30px;
padding: 0;
box-shadow: 0 8px 63px rgba(69, 86, 88, .2);
}

    #cookies div {
    padding: 20px;
    background: #fff;
    margin: 0;
    height: 100%;
    position: relative;
    z-index: 1;
    border: 1px solid #e5e5e5;
    }

    #cookies button{
    width: 100%;
    }

    .nav-pills .active .core-box-title {
    z-index: 5;
    }


/*****************************************************************
/*----------------------------------------------------------------
NAVIGATION
----------------------------------------------------------------/*
*****************************************************************/

/* --- CORE HEADER STYLING --- */

#masthead {
position: relative;
z-index: 6;
}

.navigation-header {
background: transparent;
}

    #branded-header {
    padding: 25px 0;
    }

    .stuck-header #branded-header {
    padding: 15px 0;
    }

.main-navigation {
padding: 15px 0;
}

.logo {
max-width: 250px;
max-height: 80px;
}

.menu-extra-menu-container, 
#overlayOpen .menu-main-menu-container {
display: none;
}


/*--------------------------------------------------------------
NAVIGATION STYLING
--------------------------------------------------------------*/

.show-scroll-helper .container-fluid:after {
content: url(inc/img/indicator.svg);
position: absolute;
bottom: 60px;
left: 0;
right: 0;
margin: 0 auto;
text-align: center;
z-index: 3;
-webkit-animation:bounce 1s infinite;
}

    @-webkit-keyframes bounce {
      0%       { bottom:5px; }
      25%, 75% { bottom:15px; }
      50%      { bottom:20px; }
      100%     {bottom:0;}
    }


/* --- SOCIAL MENU BLOCK ---*/

.social-menu {
display: flex;
align-items: center;
}

.site-footer .social-links {
margin: 0;
list-style: none;
}

.social-links li {
text-align: center;
border: 2px solid #fff;
width: 50px;
height: 50px;
border-radius: 50%;
padding: 14px;
display: inline-block;
margin-right: 15px;
opacity: 0.6;
-webkit-transition: all 0.2s linear;
-ms-transition: all 0.2s linear;
transition: all 0.2s linear;
font-size: 18px;
}

    .social-links a {
    color: #fff !important;
    }

    .social-links .facebook:hover {
    opacity: 1;
    background-color: #3B5998;
    }

    .social-links .twitter:hover {
    opacity: 1;
    background-color: #1DA1F2;
    }

    .social-links .linkedin:hover {
    opacity: 1;
    background-color: #0074b6;
    }

    .social-links .instagram:hover {
    opacity: 1;
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285aeb 90%);
    }


/* --- CONTACT HEADER --- */

.contact-header {
background: #3d4959;
padding: 5px 0;
top: 0;
z-index: 2;
width: 100%;
}

    .contact-header .quick-menu {
    display: flex;
    justify-content: flex-end;
    align-content: center;
    }

    .contact-header ul {
    text-align: right;
    margin: 0;
    }

    .contact-header li {
    display: inline-block;
    text-align: right;
    color: #fff !important;
    font-size: 15px;
    padding-right: 10px;
    opacity: 0.75;
    border: 0;
    }

        .contact-header li:last-of-type,
        .contact-header li:last-of-type a {
        opacity: 1;
        font-weight: bold !important;
        }

        .contact-header .telephone {
        border-left: 1px solid #505050;
        padding: 2px 0 0 10px;
        opacity: 1;
        float: right;
        }

        .contact-header .telephone .svg {
        width: 15px;
        height: 15px;
        margin: 3px 8px 0 0;
        opacity: 0.75;
        }

    .contact-header a,
    .contact-header span {
    color: #fff !important;
    font-size: 15px !important;
    }


/* --- OVERLAY MENU --- */

.menu-holder {
display: flex;
justify-content: flex-end;
align-items: center;
}


	/* --- VISIBLE MENU --- */

	#menu-visible-main-menu {
	margin: 0;
    list-style: none;
    display: flex;    
	justify-content: flex-end;
	align-items: center;
    padding-right: 60px;
	}

	#menu-visible-main-menu li {
	margin-right: 40px;
	}

	#menu-visible-main-menu li > a {
    color: #fff;
    font-family: "Source Sans Pro", sans-serif !important;
	}


.overlay {
height: 100%;
width: 0;
position: fixed;
z-index: 2;
right: 0;
top: 0;
background-color: #004177;
overflow: hidden; 
transition: 0.5s;
}

.menu-width {
width: 100%;
}

    .overlay .menu-width {
    width: 75%;
    }

    .overlay .menu-block {
    padding: 80px 120px;
    }

    .overlay .logo-block {
    padding: 80px;
    background: #f9b233;
    text-align: center;
    }

        .overlay .logo-block .promo-space {
        height: 100%;
        padding: 0 50px;
        text-align: left;
        }

        .promo-space .indent-border {
        right: 12px;
        bottom: 12px;
        position: relative;
        border: 1px solid rgba(255, 255, 255, 0.4)
        }

        .promo-space .indent-border img {
        right: -12px;
        position: relative;
        bottom: -12px;
        z-index: 1;
        }

        .promo-space .promo-title {
        color: #fff;
        margin: 15px 0 0;
        }

        .promo-space .promo-caption {
        color: #fff;
        font-size: 20px;
        margin: 10px 0 15px;
        }

        .promo-space a {
        color: #fff !important;
        }

    .primary-pages {
    margin: 12px 60px 0 0;
    list-style: none;
    float: right;
    }

    .primary-pages li {
    display: inline-block;
    padding-right: 10px;
    border-right: 1px solid #445566;
    }

        .primary-pages li.active a {
        color: #f9b233;
        }

        .primary-pages li:last-of-type {
        border-right: 0;
        }
        
.overlay .closebtn,
.overlay .backbtn {
position: absolute;
top: 30px;
left: 95px;
line-height: 38px;
color: #fff;
z-index: 3;
}

    .overlay .backbtn {
    display: none;
    color: #000;
    z-index: 999;
    }

    .overlay .closebtn:before {
    content: url('inc/img/close.svg');
    width: 40px;
    height: 40px;
    float: left;
    }

#overlay-menu ul {
margin: 0;
list-style: none;
}

#overlay-menu > ul > li {
width: 100%;
border-bottom: 1px solid rgb(255 255 255 / 15%);
position: relative;
}

	#overlay-menu .sub-menu > li {
	width: 100%;
	border-bottom: 1px solid rgb(0 0 0 / 15%);
	position: relative;
	}

#overlay-menu ul > li > a {
font-weight: bold !important;
font-family: 'Roboto', sans-serif !important;
color: #fff;
margin: 15px 0;
font-size: 42px;
display: block;
}

	#overlay-menu .sub-menu li > a {
	color: #000;
	font-size: 32px !important;
	margin: 22px 0;
	}

	#overlay-menu a:after {
    content: '\f105';
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    opacity: 1;
    font-size: 28px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
	}

#overlayOpen > a {
padding: 5px 0 0 0;
opacity: 0;
position: absolute;
right: 12px;
top: 15px;
color: #fff;
z-index: 9999999999;
}

#overlayOpen:before {
content: '';
background-image: url('inc/img/menu.svg');
background-repeat: no-repeat;
width: 35px;
height: 35px;
display: block;
position: absolute;
right: 15px;
top: 20px;
transform: rotate(180deg);
}


    /* SUB MENU */
    
    .overlay .sub-menu {
    height: 100%;
    padding: 80px;
    background: #f5f5f5;
    }
    
    .overlay .sub-menu a {
    color: #000;
    margin: 10px 0;
    font-size: 38px !important;
    display: block;
    }
    
        .overlay .sub-menu > li:first-of-type a {
        font-weight: bold !important;
        }
    
        .overlay .sub-menu > .menu-item-has-children > a {
        font-size: 26px !important;
        }
        
    .second-sub-menu {
    margin: 15px 0 30px 15px !important;
    }


/* BASE MENU IN OVERLAY */

.base-menu-block {
position: absolute;
bottom: 0;
left: 0;
padding: 80px 120px; 
}

    .base-menu-block ul {
    margin: 0;
    list-style: none;
    }

    .base-menu-block ul > li {
    display: inline-block;
    padding: 0 20px 0 0;
    margin: 0 20px 0 0;
    border-right: 1px solid rgba(255, 255, 255, 0.25);
    }

    .base-menu-block ul > li > a {
    color: #fff;
    }


/* --- BREADCRUMB NAVIGATION --- */

.breadcrumb-header {
background: rgba(0, 0, 0, 0.05);
}

.breadcrumb-header .breadcrumbs {
padding: 5px 0;
}

    .breadcrumbs .fa-home {
    color: #fff;
    font-size: 16px;
    }

    .breadcrumbs span, 
    .breadcrumbs a {
    color: #fff;
    font-size: 16px;
    font-family: "Source Sans Pro", sans-serif !important;
    font-weight: 300 !important;
    }

    .breadcrumbs i {
    padding: 0 5px;
    font-size: 16px;
    }

    .breadcrumbs span:last-child i {
    display: none;
    }


/* --- QUICK BAR --- */

.quick-bar {
background: #000;
padding: 10px 0;
color: #fff;
}

    .quick-bar p {
    margin: 0;
    font-weight: bold !important;
    }

    .quick-bar a {
    text-decoration: underline;
    color: #fff;
    font-weight: bold !important;
    }



/**
/*--------------------------------------------------------------
CONTENT - ALL PAGES
--------------------------------------------------------------*/


/* --- OVERARCHING STYLING --- */

section {
padding: 30px 0;
border: 0;
}

.icons {
display: flex;
justify-content: center;
}

.svg {
float: left;
max-width: 40px;
max-height: 40px;
margin: 5px 0 0;
overflow: visible !important;
}

svg path,
svg circle {
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-ms-transition: all .3s ease;
-o-transition: all .3s ease;
}

#split-block  {
background: #fff;
padding: 60px 0;
}

    #split-block p {
    column-count: 2;
    margin: 0;
    }


    /* --- PRIMARY CONTENT --- */

    .tab-content {
    background: #fff;
    padding: 20px;
    margin: 0;
    position: relative;
    z-index: 1;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
    }


/**
/*--------------------------------------------------------------
TABLES
--------------------------------------------------------------*/

table {
font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
width: 100%;
}

table td {
font-size: 16px;
font-weight: 400;
}

.tablepress {
margin: 30px 0 !important;
}

caption {
display: none !important;
}

.tablepress thead th {
background-color: #009eaa !important;
border: 6px solid #fff !important;
font-weight: 700 !important;
vertical-align: middle !important;
padding: 15px !important;
color: #fff !important;
font-weight: bold !important;
font-size: 18px !important;
font-weight: 600 !important;
font-family: "Roboto", sans-serif !important;
}

.tablepress tbody td {
font-size: 16px !important;
font-size: 16px !important;
font-weight: 400 !important;
font-family: "Raleway", sans-serif !important;
background: #f5f5f5;
padding: 15px !important;
border: 6px solid #fff !important;
}

.op-table tbody td {
background: 0 !important;
padding: 0 !important;
border: 0 !important;
}

table input[type=submit] {
margin: 5px 0 !important;
height: 36px !important;
border-radius: 6px !important;
}


/*********************************************************************************************************
--- END OF STANDARD PAGE TEMPLATES
/*****************************************************************
/*----------------------------------------------------------------
----------------------------------------------------------------/*
*****************************************************************/
/*****************************************************************
/*----------------------------------------------------------------
PAGE BUILDER
----------------------------------------------------------------/*
*****************************************************************/


    /*--------------------------------------------------------------
    --  OVERARCHING
    --------------------------------------------------------------*/

    .emotive-link {
    background: rgb(78, 60, 211);
    border: 2px solid #fff !important;
    }

    .emotive-link:after {
    background-color: transparent;
    }

    .full-height-slider,
    .full-height {
    height: 100vh !important;
    min-height: 500px;
    }

	.white-text h1,
	.white-text h2,
	.white-text h3,
	.white-text h4,
	.white-text h5,
	.white-text h6,
	.white-text p,
	.white-text li,
	.white-text span,
	.white-text a {
	color: #fff !important;
    }

    .bold-headers h1,
    .bold-headers h2,
    .bold-headers h3,
    .bold-headers h4,
    .bold-headers h5,
    .bold-headers h6 {
    font-weight: bold !important;
    }

	.align-centre,
	.align-centre h1,
	.align-centre h2,
	.align-centre h3,
	.align-centre h4,
	.align-centre h5,
	.align-centre h6,
	.align-centre p,
	.align-centre li,
	.align-centre span,
	.align-centre a {
	text-align: center;
	}

    .background-video {
    position: absolute;
    object-fit: cover;
    object-position: 50%;
    min-height: 100%;
    min-width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    }
    
    .video-title {
    z-index: 1;
    }
    
    
    /*--------------------------------------------------------------
    --  SLIDER
    --------------------------------------------------------------*/

    #slides {
    padding: 0;
    height: 650px;
    position: relative;
    overflow: visible;
    background: #000;
    }
    
    #slides div,
    .content-gallery div {
    height: 100%;
	background-size: cover;
	background-repeat: no-repeat;
    }
    
    #slides .row {
    align-items: center;
    }
    
    #slides .slider-content {
    height: auto;
    z-index: 2;
    }
    
    .slick-slide {
    background-size: cover !important;
    background-position: center !important;
    }
        
        
        /* --- SLIDER CONTENT--- */
    
        .slider-content h1 ,
        .slider-content h3 {
        color: #fff;
        margin: 0 0 10px;
        font-weight: bold;
        }
    
        .slider-content p {
        color: #fff;
        font-size: 24px;
        margin: 0 0 20px;
        }
    
    
    /*--- SLIDER CONTROL UI --- */
    /*--- Arrows --- */
    
    .slick-prev {
    left: 2rem;
    }
    
    .slick-prev:after {
    content: '\f053';
    font-family: "Font Awesome 5 Free";
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    }
    
    .slick-next {
    right: 2rem;
    }
    
    .slick-next:after {
    content: '\f054';
    font-family: "Font Awesome 5 Free";
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    }
    
    .slick-arrow {
    position: absolute;
    top: 50%;
    z-index: 3;
    background: transparent;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #fff;
    transition: all 0.3s cubic-bezier(.25,.8,.25,1);
    text-align: center;
    font-size: 0;
    color: #fff;
    opacity: 0.3
    }
    
    .slick-arrow:hover {
    opacity: 1;
    }
    
    /*--- Dots--- */
    
    .slick-dots {
    position: absolute;
    bottom: 60px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    z-index: 9999999;
    }
    
    .slick-dots li {
    display: inline-block;
    }
    
    .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding-right: 5px;
    margin-right: 10px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: rgba(255,255,255,0.3);
    border-radius: 50%;
    }
    
    .slick-dots .slick-active button {
    background: rgba(255,255,255,0.6);
    }
    

    /*--------------------------------------------------------------
    --  SIMPLE PAGE TITLE
    --------------------------------------------------------------*/

    .simple-page-title h1 ,
    .simple-page-title h3 {
    color: #fff;
    margin: 0 0 10px;
    font-weight: bold;
    }

    .simple-page-title p {
    color: #fff;
    font-size: 24px;
    margin: 0;
    }
    
    
    /*--------------------------------------------------------------
    --  HERO BLOCKS
    --------------------------------------------------------------*/
    
    .indicator {
    position: absolute;
    z-index: 2;
    bottom: 20px;
    width: 100%;
    text-align: center;
    display: none;
    
    animation-name: bounce;
    animation-timing-function: ease;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    }
    
        @keyframes bounce {
            0%   { transform: translateY(0); }
            30%  { transform: translateY(-20px); }
            50%  { transform: translateY(0); }
            100% { transform: translateY(0); }
        }
    
        .emotive-grid:first-of-type .emotive-box-border.h-100 #indicator {
        display: block;
        }
    
        #indicator h4 {
        color: #fff;
        font-weight: 600 !important;
        text-transform: uppercase;
        font-size: 14px;
        margin: 0;
        }
    
        #indicator img {
        max-width: 16px;
        }
    
    .emotive-grid .news-box {
    padding: 0;
    }
    
    .emotive-box-border {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    min-height: 500px;
    display: flex;
    align-items: center;
    }
    
    .emotive-content-block {
    position: relative;
    height: 100%;
    width: 100%;
    z-index: 1;
    }
    
        .emotive-content-block.h-100 {
        padding-top: 0;
        }
    
    .emotive-content-block .content-column {
    padding: 100px 15px;
	justify-content: flex-start;
    }

        .emotive-content-block.h-100 {
		background: radial-gradient(circle at center left,#000,rgba(255,255,255,0) 80%);
        }

            .emotive-content-block.h-100 .content-column {
            color: #fff;
            }

            .content-column {
            display: flex;
            align-items: center;
            }

            .content-column > div {
            height: fit-content;
            width: 100%;
            }
    
        .section-title {
        font-size: 32px;
        position: relative;
        z-index: 2;
        font-weight: bold;
		line-height: normal;
        }

        .section-title span {
        display: block;
        font-size: 22px;
        }
    
        .emotive-content-block p {
        position: relative;
        z-index: 2;
        }
    
    
    /*--------------------------------------------------------------
    --  TABBED CONTENT BLOCK
    --------------------------------------------------------------*/

    .page-anchors {
    margin: 0;
    }

        .page-anchors li {
        width: 100%;
        margin: 0 0 15px;
        }

        .page-anchors h4 {
        margin: 0;
        }
    
    
    /*--------------------------------------------------------------
    --  FAQ CONTENT BLOCK
    --------------------------------------------------------------*/

    .faq-content-block .article {
    margin: 0 15px;
    padding: 40px 0;
    border-top: 1px solid black;
    }

        .pill .question {
        font-size: 26px;
        font-weight: bold !important;
        margin: 0;
        }

        .pill .question:after {
        content: '\f061';
        font-family: "Font Awesome 5 Free";
        font-weight: 600;
        float: right;
        }

        .faq-content-block .tab-pane p {
        margin: 20px 0 0;
        }

    
    /*--------------------------------------------------------------
    --  CONTENT WITH GALLERY
    --------------------------------------------------------------*/

        /* --- SLIDING CONTENT GALLERY --- */
        
        .sliding-gallery {
        padding: 80px 0 0 !important;
        }

		.sliding-gallery .content-column {
		padding: 100px 15px;
        }
        
        .sliding-gallery .container-fluid {
        background-color: rgb(0 0 0 / 0.1);
        }
    
    .gallery-item {
    position: relative;
    }
    
        .gallery-item div {
        background-size: cover;
        background-position: center;
        }
    
        .gallery-item-title {
        position: absolute;
        bottom: 10px;
        right: 15px;
        color: #fff;
        font-style: italic;
        font-size: 20px;
        }
    
        .gallery-item-title a {
        color: #fff;
        text-decoration: underline;
        }

            .video-class:after {
            content: url(inc/img/play-button.svg);
            display: flex;
            height: 100%;
            justify-content: center;
            align-items: center;
            background: rgba(0,0,0,0.25);
            }
    
    .image-gallery .slick-arrow,
    .quote-deck .slick-arrow {
    top: auto;
    background: rgba(0, 0, 0, 0.5);
    width: 80px;
    height: 50px;
    bottom: 0;
    left: 0;
    border-radius: 0;
    border: 0;
    opacity: 1;
    z-index: 3;
    }

        .quote-deck .slick-arrow {
        background: #000;
        bottom: -20px;
        }
    
    .image-gallery .slick-prev {
    left: 0px;
    }

        .quote-deck .slick-prev {
        right: 80px;
        left: auto;
        }
    
    .image-gallery .slick-next {
    left: 80px;
    }

        .quote-deck .slick-next {
        right: 0;
        left: auto;
        }
    
    .content-gallery,
    .content-carousel {
    height: fit-content;
    padding: 80px 0;
    }

    .content-gallery .abs .right-align .col-lg-5 {
    clip-path: polygon(10% 0, 100% 0, 100% 100%, 0% 100%);
    }

    .content-gallery .abs .left-align .col-lg-5 {
    clip-path: polygon(0 0, 100% 0, 90% 100%, 0% 100%);
    }
    
    .abs {
    position: absolute;
    top: 0;
    left:0;
    bottom:0;
    right:0;
    min-height:100%;
    }
    
    .image-block-bg {
    margin-top: -100px;
    min-height: 100vh;
    border: 2px solid #759194;
    border-right: 0;
    padding: 5px 0 0 5px;
    }
    
        .image-block-bg > div {  
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
        height: 100%;
        }
    
    
    /*--------------------------------------------------------------
    --  IMAGE GRID
    --------------------------------------------------------------*/
    
    .row:before, 
    .row:after {
    width: 0px !important;
    height: 0px !important;
    }
    
    .container-fluid .grid-image {
    min-height: 500px;
    padding: 0;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    }
    
    .container .grid-image {
    min-height: 250px;
    }
    
        .grid-image > div {
        min-height: 100%;
        background-size: cover;
        background-position: center;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        padding: 60px;
        }
    
        .container-fluid .grid-image > div:after {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: rgb(43 54 66 / 0.5);
        }

        .grid-image .key-link {
        background: transparent;
        width: 100%;
        }
    
        .grid-image > div h4,
        .grid-image > div p {
        color: #fff;
        position: relative;
        z-index: 1;
        }

            .grid-image > div h4 {
            font-size: 32px;
            margin: 0;
            }

            .grid-image > div p {
            line-height: normal;
            margin-top: 10px;
            }
    
        .wedding-image:hover,
        .grid-image:hover {
        opacity: 1;
        z-index: 1;
        }


        /* --- LARGE IMAGE GRID --- */

		.large-image-grid {
        height: 50vh;
        }

        .large-image-grid .section-title,
        .large-image-grid .custom-font,
        .large-image-grid > .container {
        display: none;
        }

        .large-image-grid div {
        height: 100%;
        }

            .large-image-grid .grid-image > div {
            align-items: flex-end;
            padding: 0;
            }

            .large-image-grid .grid-image > div:after {
            background: #000;
            opacity: 0;
            display: block;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            content: ' ';
            position: absolute;
            transition: all 0.25s ease-out;
            }

                .large-image-grid .grid-image:hover > div:after {
                opacity: 0.75;
                }

                .large-image-grid .grid-image:first-of-type > div:after {
                background: #8A0F94;
                }

                .large-image-grid .grid-image:last-of-type > div:after {
                background: #459407;
                }

            .large-image-grid .grid-content {
            padding: 30px 60px;
            height: auto;
            z-index: 1;
            width: 100%;
            text-align: left;
            }

            .large-image-grid .grid-content h4 {
            font-size: 42px;
            margin: 0 0 10px;
            line-height: normal;
            }

            .large-image-grid .grid-content p {
            font-size: 22px;
            line-height: normal;
            color: #fff;
            z-index: 1;
            position: relative;
            max-height: 0;
            opacity: 0;
            transition: all 0.25s ease-out;
            overflow: hidden;
            margin: 0;
            }

                .large-image-grid .grid-image:hover .grid-content p {
                max-height: 500px;
                opacity: 1;
                transition: all 0.25s ease-in
                }


    /*--------------------------------------------------------------
    --  MAPS
    --------------------------------------------------------------*/
            
    #map {
    height: 50vh;
    width: 100%;
    }

    .leaflet-container {
    position: relative;
    z-index: 1;
    }

        #map .custom-popup {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        padding: 10% 5%;
        }

        #map .custom-popup .tab-content {
        border-radius: 10px;
        padding: 30px;
        background: #3d4959;
        color: #fff;
        border: 0;
        box-shadow: 0 8px 63px rgba(69, 86, 88, .6);
        }

            #map .custom-popup h4 {
            font-weight: bold;
            font-size: 28px;
            margin: 0 0 30px;
            }

            #map .custom-popup img {
            border-radius: 4px;
            }

        #map .custom-popup .directions input[type=text] {
        margin: 0;
        border-top-left-radius: 4px;
        border-bottom-left-radius: 4px
        }

        #map .custom-popup .directions input[type=submit] {
        padding: 10px !important;
        width: 100%;
        height: 56px;
        border: 0 !important;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        text-align: center;
        }

    
    /*--------------------------------------------------------------
    --  CTA BLOCK
    --------------------------------------------------------------*/
    
    .cta-block {
    background: #000;
    }

        .cta-block .col {
        display: flex;
        align-items: center;
        }

        .cta-block .col-lg-3 {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        }
    
    .cta-block p {
    margin: 0;
    font-size: 20px;
    font-weight: bold;
    }
    
    .cta-block .key-link {
    margin: 0;
    }
    
    .cta-block strong {
    font-weight: bold;
    }
    
    .cta-block .default-button {
    margin: 0;
    width: 100%;
    }
    
            
    /*--------------------------------------------------------------
    --  PAGE MENU
    --------------------------------------------------------------*/

    #libraries #page-menu .section-title:after {
    content: "";
    background: #5357d7;
    width: 50px;
    height: 4px;
    display: block;
    margin-top: 10px;
    }

    .page-menu-block {
    position: relative;
    margin: 0 0 30px;
    background: #fff;
    padding: 25px 40px 25px 20px;
    color: #000;
    transition: all 0.3s cubic-bezier(.25,.8,.25,1);
    border: 1px solid #e5e5e5;
    }
    
    .page-menu-block h4,
    .page-menu-block label {
    color: #000;
    margin: 0;
    display: block;
    line-height: normal;
    }

        .page-menu-block h4 {
        line-height: 24px;
        font-size: 20px;
        margin-bottom: 5px;
        }

        .page-menu-block:after {
        content: '\f105';
        font-family: "Font Awesome 5 Free";
        font-weight: 600;
        opacity: 0.5;
        font-size: 20px;
        position: absolute;
        right: 30px;
        top: 35%;
        }

        .page-menu-link {
        border-right: 1px solid rgba(255, 255, 255, 0.15);
        }
    
        .page-menu-link a:target {
        background: #fff;
        }
    
        .page-menu-link:last-of-type {
        border-right: 0;
        }

            
    /*--------------------------------------------------------------
    --  VIDEO CONTENT BLOCK
    --------------------------------------------------------------*/
    
    .video-block {
    padding: 0;
    text-align: center;
    }
    
        .video-title h4 {
        margin: 0;
        color: #fff;
        }
    
    .video-title {
    padding: 30px;
    }
    
        .video-title span {
        font-size: 24px;
        }
    
    .video-overlay {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background-position: center;
    background-size: cover;
    }
    
        .video-overlay p {
        margin: 0;
        color: #fff;
        font-size: 24px;
        position: relative;
        z-index: 2;
        border: 2px solid #fff;
        padding: 10px 30px;
        border-radius: 30px;
        }
    
        .video-overlay p:after {
        content: '';
        float: right;
        padding-top: 3px;
        padding-left: 5px;
        line-height: 0;
        }
    
        .video-overlay:after {
        content: '';
        background: #000;
        opacity: 0.2;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        position: absolute;
        }

    
    /*--------------------------------------------------------------
    --  CAROUSELS
    --------------------------------------------------------------*/
    
    .slick-dots {
    position: relative;
    padding: 0;
    bottom: 0;
    z-index: 0;
    margin-top: 30px;
    display: none;
    }
    
    .slick-dots li button {
    background: rgba(0, 0, 0, 0.05);
    }
    
    .slick-dots .slick-active button {
    background: rgba(0, 0, 0, 0.5);
    }


        /*--------------------------------------------------------------
        DESCRIPTIVE CONTENT SLIDER
        --------------------------------------------------------------*/

        .sliding-content {
        padding: 80px 0;
        }

            /* --- NAVIGATION --- */
            
            .content-sliding-nav {
            padding: 0 0 60px;
            }

            .content-sliding-nav .nav-title {
            padding: 20px 0; 
            background: rgba(0,0,0,0.3);
            border-radius: 4px;
            text-align: center;
            }
                
                .content-sliding-nav p {
                margin: 0;
                font-size: 20px;
                font-weight: bold !important;
                }
                
                
            /* --- CONTENT --- */

            .content-sliding-blocks h4 {
            font-weight: bold;
            font-size: 28px;
            }

            .content-sliding-blocks .slick-dots {
            position: absolute;
            bottom: 30px !important;
            }


        /*--------------------------------------------------------------
        PAGES CAROUSEL
        --------------------------------------------------------------*/
        
        .carousel-deck .tab-content {
        padding: 20px;
        }
        
        .carousel-deck .slick-arrow {
        background: #759194;
        }
        
            .carousel-deck .slick-list {
            overflow: visible;
            }
        
            .carousel-title {
            margin-bottom: 30px;
            }
        
                .carousel-border {
                position: relative;
                z-index: 2;
                clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);
                min-height: 250px;
                background-size: cover;
                background-position: center;
                background-repeat: no-repeat;
                }
        
                .carousel-deck h3 {
                color: #000;
                font-size: 26px;
                margin: 0 0 5px;
                }
        
            .carousel-deck p {
            color: #000;
            }
            
            .carousel-deck .default-button {
            width: 100%;
            }
        
        
        /*--------------------------------------------------------------
        CONTENT CAROUSEL
        --------------------------------------------------------------*/
        
        .quote-image {
        height: 250px;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        }
        
        .quote-deck .tab-content {
        padding: 30px;
        box-shadow: none;
        }
        
            .quote-deck .tab-content h5 {
            text-align: right;
            margin: 0;
            }

            .quote-deck .tab-content p:before {
            content: '\f10d';
            font-family: "Font Awesome 5 Free";
            font-size: 62px;
            font-weight: bold;
            float: left;
            line-height: 80px;
            padding-right: 20px;
            }

        .content-carousel .slick-list {
        overflow: visible;
        }

        .shading {
        width: 20%;
        height: 100%;
        top: 0;
        position: absolute;
        z-index: 2;
        }

        .right-shade {
        background: linear-gradient(to right, rgba(245,245,245,0) 0%, rgba(245,245,245,0.5) 24%, rgba(245,245,245,0.8) 50%, rgba(245,245,245,1) 75%);
        right: 0;
        }

    
    /*--------------------------------------------------------------
    --  BLOGS
    --------------------------------------------------------------*/

    .box-image {
    background-size: cover;
    height: 200px;
    text-align: left;
    }

    .box-border {
    background: #fff;
    display: flex;
    border: 1px solid #e5e5e5;
    transition: all 0.2s ease;
    }

    .box-content {
    padding: 15px;
    }

    .box-content p {
    margin: 0;
    }

    .box-title h5 {
    margin: 0 0 10px !important;
    font-weight: 600;
    font-size: 20px;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 5px;
    }

    .box-title h4 {
    margin: 0 0 10px;
    font-size: 22px;
    font-weight: bold;
    color: #000;
    }

    .blog .blog-date {
    font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    line-height: 30px;
    background: #0099bb;
    color: #fff;
    padding: 5px 10px;
    border-bottom-right-radius: 4px;
    }


    /*--------------------------------------------------------------
    --  SOCIAL WIDGET
    --------------------------------------------------------------*/

    .social-link {
    margin: 0 0 15px;
    width: 100%;
    line-height: inherit;
    border: 1px solid #fff;
    }   

        .social-link:before {
        display: none;
        }

        .social-link:last-of-type {
        margin: 0;
        }

        .social-link.fa-facebook-f {
        background: #3B5998;
        }

        .social-link.fa-linkedin-in {
        background: #0074b6;
        }

        .social-link.fa-instagram {
        background: linear-gradient(225deg,#b900b4 0%,#f50000 100%);
        }

        .social-link.fa-twitter {
        background: #1DA1F2;
        }


    /* -- CURATOR FEED -- */

    .crt-post {
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: 10px 10px 20px -10px rgba(0,0,0,0.25);
    margin: 0 10px 10px;
    }

    .crt-post .crt-post-header {
    text-align: left !important;
    padding-top: 15px !important;
    }

    .crt-post .crt-post-header a,
    .crt-post-date a {
    font-family: "Source Sans Pro", sans-serif !important;
    font-weight: bold !important;
    color: #000 !important;
    }

    .crt-post .crt-post-text {
    text-align: left !important;
    padding-bottom: 15px !important;
    }

    .crt-post .crt-post-text a,
    .crt-social-icon,
    .crt-post-userimage,
    .crt-post-username {
    display: none !important;
    }

    .crt-post-share a:first-of-type {
    color: #3b5998 !important;
    }

    .crt-post-share a:last-of-type {
    color: #1DA1F2 !important;
    }

    .crt-image-responsive {
    height: 200px !important;
    padding: 0 !important;
    }

    .crt-post-image {
    object-fit: cover;
    }

    .crt-post-footer {
    text-align: left !important;
    padding: 0 15px !important;
    }

    .crt-post-date {
    text-transform: lowercase !important;
    font-size: 14px !important;
    }

    .crt-post-date a {
    font-size: 16px !important;
    }

    .crt-panel-next, .crt-panel-prev {
    top: -30px !important;
    background: transparent !important;
    }

    .crt-panel-next:before,
    .crt-panel-prev:before {
    font-weight: bold;
    }

    .crt-panel-next {
    right: 0 !important;
    }

    .crt-panel-prev {
    right: 60px !important;
    left: auto !important;
    }

    .crt-widget.crt-widget-branded .crt-logo {
    bottom: -30px !important;
    right: 15px !important;
    }

    
    /*--------------------------------------------------------------
    --  DIRECTORIES
    --------------------------------------------------------------*/

    .directory-padding {
    padding-bottom: 90px;
    }
        
    .directory-search input,
    .directory-search button {
    height: 56px;
    }
    
    .result-image-col {
    padding-right: 0;
    }
    
    .result-data-col {
    padding-left: 0;
    }

    
        /*--------------------------------------------------------------
        SEARCH BLOCK
        --------------------------------------------------------------*/

        .search-results-block {
        position: relative;
        padding: 30px 0;
        background: #f0f0f0;
        border-bottom: 1px solid #e5e5e5;
        }
        
            .search-results-block input,
            .search-results-block button {
            margin: 0 !important;
            height: 52px !important;
            }  

        .filter-clear {
        float: right;
        }


        /*--------------------------------------------------------------
        FILTER BLOCK
        --------------------------------------------------------------*/
        
        #filter-block .tab-content {
        padding: 20px;
        height: auto;
        box-shadow: none;
        border: 1px solid #e5e5e5;
        }

            #daterange {
            display: flex;
            align-items: center;
            cursor: pointer;
            padding: 5px 15px;
            border: 1px solid #e5e5e5;
            width: 100%;
            height: 52px;
            margin-bottom: 15px;
            }
                
            #reportrange {
            background: #fff; 
            cursor: pointer; 
            padding: 11px; 
            margin: 0 0 10px;
            border: 1px solid #e4e4e4; 
            width: 100%;
            font-size: 16px;
            font-weight: 400!important;
            line-height: 28px;
            font-family: "Raleway","Helvetica Neue",Helvetica,Arial,sans-serif!important;
            }
        
                #reportrange .date-to {
                padding: 10px 15px;
                background: #f0f0f0;
                border: 1px solid #e4e4e4;
                margin: -12px 0;
                }
        
            .filter-terms {
            margin: -10px 0 10px;
            }
        
            .filter-terms label {
            margin-right: 15px; 
            display: inline-block;
            }
        
            .filter-terms .category-label {
            font-weight: bold !important;
            }
        
            .filter-clear {
            position: absolute;
            right: 15px
            }


        /*--------------------------------------------------------------
        RESULTS BLOCK
        --------------------------------------------------------------*/

        #directory .event-featured {
        height: 100%;
        background-size: cover;
        }

        #result {
        margin: 0 0 30px;
        border: 1px solid #e5e5e5;
        }
    
        .result-image {
        min-height: 200px;
        height: 100%;
        background-size: cover;
        background-position: center;
        }
        

        /* --- SPELL CHECK --- */

        .did-you-mean {
        margin: 0 0 25px;
        font-size: 18px;
        background: white;
        padding: 10px;
        border: 1px solid #e4e4e4;
        }
    
            .did-you-mean p {
            display: inline;
            }
    
            .did-you-mean a {
            font-weight: bold !important;
            font-size: 18px;
            text-decoration: underline;
            }
        

        /* --- INDIVIDUAL BLOCK --- */

        #directory #response .section-title strong,
        #directory #response .section-title span {
        display: inline-block;
        }

            #directory #response .section-title span {
            font-size: 32px;
            font-weight: bold;
            }

        #response > div {
        position: relative;
        margin-bottom: 30px;
        }

        #response > div .tab-content {
        padding: 20px;
        }
    
            /* --- EVENTS CATEGORIES LABELS --- */

            .event-list .events-title a {
            color: #4e3cd3;
            font-family: 'Roboto', sans-serif !important;
            letter-spacing: -1px;
            display: block;
            }
    
            .category-label {
            background: #c92e6f !important;
            text-align: center;
            border-radius: 30px;
            padding: 5px 15px;
            margin: 5px 10px 0 0;
            width: fit-content;
            color: #fff;
            display: inline-block;
            }
    
            .events .category-label,
            .single-events .category-label {
            background: rgb(78, 60, 211)!important;
            }


        .directory-title {
        margin: 0 0 10px;
        font-weight: bold;
        }
    
        .directory-table label {
        margin: 0 0 5px;
        font-weight: bold;
        }
    
        .directory-border {
        padding: 10px;
        margin-bottom: 20px;
        background: #f5f5f5;
        border: 1px solid #eee;
        }

        .directory-image {
        height: 100%;
        background-size: cover;
        background-position: center;
        }

            .directory-table div:last-of-type .directory-border {
            margin: 0;
            }
    
        .directory-border p {
        margin: 0;
        }

        .provider-description {
        padding: 15px 0;
        margin: 10px 0;
        border-top: 1px solid #e8e8e8;
        border-bottom: 1px solid #e8e8e8;
        }

        .provider-address {
        margin: 0;
        font-weight: bold !important;
        font-size: 16px;
        }
        
        .provider-footer {
        position: relative;
        padding: 10px 20px;
        background: #f0f0f0;
        border: 1px solid #e4e4e4;
        border-top: 0;
        z-index: 1;
        }
        
            .provider-footer p {
            margin: 0;
            }
            
        .recurring-flag {
        position: absolute;
        right: -25px;
        top: 0;
        z-index: 2;
        }
       
        #result .data-footer {
        padding: 10px 15px;
        margin-top: 20px;
        border-top: 1px solid #e5e5e5;
        }
    
        #result .data-footer:last-of-type {
        border-left: 1px solid #e5e5e5;
        }
    
            #result .data-row:first-of-type p {
            font-weight: bold !important;
            margin: 0 0 15px !important;
            }
    
            #result .data-row:first-of-type label {
            display: none;
            }
    
            #result .data-footer p {
            margin: 0;
            }

            /* --- EVENTS TWEAKS --- */
                    
            .event-title {
            font-size: 28px;
            margin: 0 0 10px;
            color: #4e3cd3;
            font-weight: bold;
            }


        /*--------------------------------------------------------------
        SINGLE DIRECTORY TEMPLATE
        --------------------------------------------------------------*/

        .single #masthead .breadcrumbs-section {
        display: none;
        }

        .single .tab-content {
        height: auto;
        padding: 20px;
        margin-bottom: 30px;
        }


            /* --- EVENTS TWEAKS --- */

            .single-meta {
            background: #213686;
            padding: 20px 0;
            }
            
            .single-meta .single-data {
            border-right: 1px solid #49578b;
            }
            
                .single-meta .single-data:last-of-type {
                border-right: 0;
                }
                
            .single-meta p,
            .single-meta label {
            margin: 0;
            color: #fff;
            }
        
            .single-meta label {
            opacity: 0.5;
            }
        
            .search-again .social-links {
            float: right;
            margin: 0;
            }
        
            .search-again .social-links li {
            opacity: 1;
            }
            
                .search-again .social-links a:last-of-type li {
                margin-right: 0;
                }
        
            .search-again .facebook {
            background-color: #3B5998;
            }
        
            .search-again .twitter {
            background-color: #1DA1F2;
            }
        
            .search-again .mailto {
            background-color: #f4971e;
            }
        
        .single-content .section-title,
        .single-sidebar .section-title  {
        margin: 0 -15px;
        background: #213686;
        color: #fff;
        padding: 15px;
        font-size: 22px;
        }
        
        .single-content .section-title {
        margin: -20px -20px 20px;
        }
        
            .single-content .section-title:after {
            display: none;
            }
        
            .single-sidebar .single-featured {
            max-height: 300px;
            }
        
            .single-label {
            margin: 0 -15px;
            background: #eee;
            padding: 10px 15px;
            border-top: 1px solid #e5e5e5;
            border-bottom: 2px solid #213686;
            }
        
            .single-value p {
            padding: 15px 0;
            margin: 0;
            }
            
            .provider-header {
            padding: 0 0 40px;
            margin-top: -10px;
            width: 100%;
            color: #fff;
            }
            
            .provider-header h3 {
            color: #fff;
            margin: 0 0 10px;
            font-weight: bold;
            }
            
            .search-again {
            padding: 20px 0;
            margin-top: -30px;
            background: linear-gradient(145deg,rgba(0,0,0,.1),rgba(0,0,0,0.05))
            }
            
            .provider-share .social-links {
            float: right;
            }
            
            .provider-share .social-links label {
            color: #fff;
            }
            
            .provider-share .social-links li {
            background: #4e3cd3 !important;
            opacity: 1 !important;
            }
            
            .provider-share .social-links a:last-of-type li {
            margin-right: 0 !important;
            }
            
            .provider-info .provider-footer label {
            margin-bottom: 5px;
            padding-bottom: 5px;
            border-bottom: 1px solid #ddd;
            }
            
            .provider-info .provider-footer label:last-of-type {
            border-bottom: 0;
            margin: 0;
            padding: 0;
            }
            
            .content-list {
            margin: 0 -15px;
            list-style: none;
            }
            
            .single-send .information li,
            .single-childcare .information li {
            background: #f5f5f5;
            padding: 10px 15px;
            border-bottom: 1px solid #e5e5e5;
            font-size: 16px;
            }
            
            .content-list p:last-of-type {
            border-bottom: 0;
            }
            
            .content-list p {
            margin: 0;
            padding: 15px;
            border-bottom: 1px solid #e5e5e5;
            }
            
            .content-list li {
            background: #fff;
            display: flex;
            padding: 0;
            border-bottom: 1px solid #e5e5e5;
            }
            
            .content-list li:last-of-type {
            border: 0;
            }
            
            .content-list li span,
            .content-list li strong,
            .content-list li a {
            padding: 15px;
            }
            
            .content-list li span:first-of-type {
            border-right: 1px solid #e5e5e5;
            }
            
            .provider-content .tab-content {
            margin-bottom: 30px;
            }
            
            .provider-content .tab-content:last-of-type {
            margin-bottom: 0;
            }
            
            .content-title {
            font-size: 20px;
            font-weight: 600;
            color: #fff;
            margin: 0 -15px;
            background: #213686;
            padding: 15px;
            border-bottom: 1px solid #e5e5e5;
            }
            
            .send-information .content-title {
            background: #e48a0a;
            margin-top: -15px;
            margin-bottom: 15px;
            }
            
            .single-events .image-slide:after {
            background: #5357d7 !important;
            }
            

/*****************************************************************
--- END OF PAGE BUILDER STYLING
/*****************************************************************

/*****************************************************************
/*----------------------------------------------------------------
FOOTER
----------------------------------------------------------------/*
*****************************************************************/

/* --- OVERARCHING STYLING --- */

footer {
padding: 30px 0;
}

.footer-block {
position: absolute;
z-index: 5;
width: 100%;
bottom: 0;
left: 0;
overflow: hidden;
}

.footer-navigation a {
color: #fff;
font-size: 16px;
}


    /* --- FOOTER BLOCK ONE --- */

    .footer-credits img {
    max-height: 120px;
    }

	.footer-credits p {
	font-size: 14px;
	color: #fff;
	margin: 0;
	}

    .rights-message {
    margin-top: 20px;
    color: #fff;
    opacity: 0.5;
    text-align: right;
    }
    
    .footer-menu,
    .footer-menu ul {
    margin: 0;
    list-style: none;
    }

    .footer-menu > .menu-item {
    width: 25%;
    }

    .footer-menu .cbp-hrsub > .cbp-hrsub-inner > .container > li {
    width: 50%;
    float: left;
    }

    .site-footer {
    width: 100%;
    padding: 30px 0;
    background: #3d4959;
    }


    /* --- FOOTER BLOCK TWO ---*/

	.footer-block .base-footer {
    padding: 0;
    background: #2b3642;
    }

        .base-footer .address {
        color: #fff;
        font-size: 16px;
        padding: 5px 0;
        font-family: "Source Sans Pro", sans-serif;
        }
        
        .base-footer .address .phone {
        border-left: 1px solid rgba(0, 0, 0, 0.2);
        padding-left: 10px;
        margin-left: 10px;
        font-weight: bold;
        font-size: 18px;
        }

    .base-footer .footer-links {
    text-align: right;
    float: right;
    display: table;
    margin: 0;
    list-style: none;
    }
		
		.base-footer .footer-links ul {
		margin: 0;
		}

        .base-footer .footer-links li {
        display: table-cell;
        padding: 5px 15px;
        border-right: 1px solid #3e4e60;
        text-align: center;
        }

        .base-footer .footer-links a {
        font-size: 14px;
        color: #fff;
        }

        .base-footer .footer-links li:first-child {
        padding-left: 0;
        }

        .base-footer .footer-links.contact li:last-child {
        border-right: 0;
        }


	/* --- LARGE NAVIGATION FOOTER --- */

	.navigation-footer-menu,
	.navigation-footer-menu ul {
	margin: 0;
	list-style: none;
	}

	.navigation-footer-menu > li {
	flex: 0 0 25%;
	border-right: 1px solid rgb(255 255 255 / 0.25);
	}

		.navigation-footer-menu > li:last-of-type {
		border: 0;
		}

	.navigation-footer-menu > li.menu-item-77759 {
	flex: 0 0 50%;
	}

	.navigation-footer-menu > li.menu-item-77759 li {
	width: 50%;
	display: inline-block;
	}

	.navigation-footer-menu > li.menu-item-77759 li:nth-child(even) {
	float: right;
	}

	.navigation-footer-menu a {
	font-size: 16px;
	color: #fff;
    font-weight: bold !important;
	}

	.navigation-footer-menu > li > a {
	font-family: "Source Sans Pro", sans-serif !important;
    font-weight: bold;
    font-size: 26px;
	}

		.navigation-footer-menu > li a {
		padding-left: 30px;
		}

		.navigation-footer-menu > li:first-of-type a,
		.navigation-footer-menu > li:first-of-type .sub-menu {
		padding: 0;
		}




        
/**
/*--------------------------------------------------------------
RESPONSIVE OPTIMISATION AND STYLING
--------------------------------------------------------------*/
/* --- 1199px = Desktop
/* --- 1024px = Tablet
/* --- 768px = Phone
**
** please note these are boostrap break points and will differ between devices **
**
*/


/*--------------------------------------------------------------
TABLET - GLOBAL STYLING
--------------------------------------------------------------*/

@media screen and (max-width: 1024px) {

    /*--------------------------------------------------------------
    OVERARCHING
    --------------------------------------------------------------*/

    /* --- COOKIE MESSAGE --- */

    #cookies {
    max-width: 100%;
    right: 0px;
    bottom: 0px;
    }

    h1 {
    font-size: 42px;
    line-height: 40px;
    font-weight: 300;
    }

    h2 {
    font-size: 32px;
    line-height: 40px;
    }

    h3 {
    font-size: 24px;
    line-height: 32px;
    }

    h4 {
    font-size: 20px;
    line-height: 26px;
    }

    h5 {
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    }

    h6 {
    font-size: 12px;
    line-height: 24px;
    font-weight: 700;
    }

    p {
    font-size: 18px;
    }

    a,
    a:visited,
    a:focus,
    a:active,
    a:hover {
    cursor: poitner;
    outline: none;
    word-wrap: break-word;
    }


        /* --- TABLES --- */

        tbody td {
        border: 0 !important;
        }

        table {
        width:100%;
        }

        thead {
        display: none;
        }

        tbody td::before {
        display: none !important;
        }

        tbody > tr > td:first-child {
        background: #009eaa;
        color: #fff !important;
        }

        tr:nth-of-type(2n) {
        background-color: inherit;
        }

        tr td:first-child {
        background: #f0f0f0; font-weight:bold;font-size:1.3em;
        }

        tbody a {
        color: #c92e6f !important;
        }

        tbody td {
        display: block;  text-align:center;
        }

        tbody td:before {
        content: attr(data-th) ' - ';
        font-weight: bold;
        }

        tbody .column-1 {
        background: #009eaa !important;
        color: #fff !important;
        }

        tbody td:last-child {
        margin-bottom: 20px;
        }

        tbody .even .column-2,
        tbody .even .column-3 {
        background-color: #f5f5f5 !important;
        }

}

/**
/*--------------------------------------------------------------
MOBILE - GLOBAL STYLING
--------------------------------------------------------------*/


@media screen and (max-width: 992px) {

    .content-gallery .abs {
    display: none;
    }

}

@media screen and (max-width: 768px) {

    /*--------------------------------------------------------------
    OVERARCHING
    --------------------------------------------------------------*/

    .key-link {
    width: 100%;
    }

    section {
    padding: 20px 0;
    }

    #split-block p {
    column-count: 1 !important;
    }


    /*--------------------------------------------------------------
    -- HEADER
    --------------------------------------------------------------*/

    /* --- NAVIGATION --- */

    .logo {
    max-width: 160px !important;
    padding: 0 !important;
    }

    .overlay .closebtn {
    top: 25px;
    left: 25px;
    }

    #overlayOpen > a {
    z-index: 99999999 !important;
    }

    #overlay-menu > ul > li > .menu-width {
    width: 100%;
    }

    .overlay .menu-block {
    padding: 80px 50px;
    }

        #overlay-menu .new-menu > li > a {
        margin: 5px 0 0;
        }

    .overlay .logo-block {
    display: none;
    }

    .overlay .base-menu-block {
    display: none;
    }

        .base-menu-block ul > li {
        margin: 0;
        padding: 0 0 5px;
        width: 100%;
        border: 0;
        }

        .base-menu-block ul > li > a {
        font-size: 20px
        }

    .overlay .sub-menu {
    padding: 80px 40px;
    }

        .overlay .sub-menu > .menu-item-has-children > a {
        font-size: 18px !important;
        }

        .overlay .sub-menu a {
        font-size: 24px !important
        }

        .overlay .sub-menu > li:first-of-type a:after,
        .overlay .second-sub-menu a:after {
        right: 30px;
        left: auto !important;
        }


    /*--------------------------------------------------------------
    PAGE BUILDER
    --------------------------------------------------------------*/
    
    /* --- SLIDER --- */

    .slick-arrow {
    display: none !important;
    }

    .no-dots .slick-dots {
    display: block !important;
    position: absolute;
    bottom: 20px;
    }

    .no-dots .slick-dots li button {
    background: rgb(255 255 255 / 20%);
    }

    .no-dots .slick-dots .slick-active button {
    background: rgb(255 255 255 / 50%);
    }

        /* --- QUOTE SLIDER --- */

        .quote-deck .slick-list {
        padding: 0 !important;
        }

        .quote-image {
        height: 300px;
        }

        .quote-deck .tab-content {
        padding: 20px;
        }


    /* --- CONTENT GRID LAYOUT --- */

    .emotive-grid .news-box {
    flex: 0 0 100% !important;
    }

    .emotive-content-block {
    padding: 0;
    min-height: 100%;
    }

        .emotive-content-block h3 {
        font-size: 28px !important;
        line-height: normal !important;
        margin: 0 0 5px !important;
        }

        .emotive-content-block h4 {
        font-size: 26px;
        text-align: left;
        }

    
    /* --- VIDEO BLOCK --- */

    .video-title {
    padding: 15px 0 !important;
    background: none;
    color: #fff;
    text-align: center;
    }


    /* --- CONTENT GALLERY --- */

    .content-gallery {
    padding: 40px 0 !important;
    }

	
    /* --- PAGE MENU --- */

    #page-menu {
    display: none;
    }


    /* --- CTA BLOCK --- */

    .cta-block p {
    margin-bottom: 20px;
    }


    /* --- IMAGE GRID --- */

    .grid-image {
    min-height: auto;
    }

    .grid-image > div {
    padding: 60px 30px;
    }
	
        /* --- LARGE IMAGE GRID -- */

        .large-image-grid,
        .large-image-grid div {
        height: auto;
        }

        .large-image-grid .grid-content {
        padding: 30px;
        }


    /* --- DIRECTORIES --- */

    #directory {
    padding: 0 0 30px;
    }

    #directory .section-title {
    margin: 30px 0 20px;
    font-size: 28px;
    }

    .directory-search button {
    border-radius: 0;
    }

    .search-results-block {
    padding: 20px 0;
    }

    .result-image-col {
    padding-right: 15px;
    }
    
    .result-data-col {
    padding-left: 15px;
    }

    #result .data-footer:last-of-type {
    border-left: 0;
    margin: 0;
    }

        /* --- SINGLE DIRECTORY TEMPLATE --- */

        #single-main-content {
        padding: 15px 0;
        }
    
        .course-meta {
        padding: 0;
        }

        .course-meta .col-sm {
        padding: 15px;
        border-bottom: 1px solid #505050;
        }

        .course-meta .col-sm:last-of-type {
        border: 0;
        }

        .course-sidebar {
        padding: 15px 15px 30px;
        }

        .course-sidebar .image-gallery div {
        padding: 0 !important;
        }
    
    
    /*--------------------------------------------------------------
    FOOTER
    --------------------------------------------------------------*/

    /* --- FOOTER --- */

	#footer {
    padding-top: 0;
    }
    
    #footer .navigation-footer {
    padding: 30px 0;
    }
    
    #footer-block {
    padding-bottom: 20px;
    }
    
    .footer-inner .footer-menu li {
    display: none;
    }
    
    .navigation-footer-menu > li {
    flex: 0 0 100% !important;
    margin: 0 0 20px;
    }
    
    .navigation-footer-menu > li a {
    padding: 0;
    }

    .site-footer {
    padding: 0;
    }

    .footer-navigation {
    display: none;
    }

    .base-footer .address {
    font-size: 14px;
    }

    #footer-menu {
    padding: 0 15px;
    margin: 0;
    }

    #footer-menu:first-of-type {
    background: #6c8587;
    }

        #footer-address .address span {
        width: 100%;
        margin: 5px 0;
        padding: 5px 0;
        border-left: 0;
        border-top: 1px solid rgba(0, 0, 0, 0.1);
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        width: 100%;
        display: block;
        color: #fff;
        font-size: 14px;
        padding: 5px 0;
        font-family: "Source Sans Pro", sans-serif !important;
        font-weight: bold !important;
        }
        
        #footer-menu .footer-links {
        text-align: left;
        float: left;
        width: 100%;
        }

        #footer-menu .footer-links li {
        display: block;
        padding: 5px 0 !important;
        border-right: 0;
        border-bottom: 1px solid #708688;
        text-align: left;
        width: 100%;
        }

        #footer-menu .footer-links li:last-of-type {
        border: 0;
        }

    .footer-credits {
    display: none;
    }
    
    .rights-message {
    position: relative;
    margin: 15px 0;
    text-align: left;
    }

    .site-footer .footer-links {
    text-align: left;
    float: left;
    }

}


/**
/*--------------------------------------------------------------
SMALL DEVICE - GLOBAL STYLING
--------------------------------------------------------------*/

@media screen and (max-width: 568px) {

    /*--------------------------------------------------------------
    OVERARCHING
    --------------------------------------------------------------*/

    .icons .svg {
    max-height: 35px;
    max-width: 35px;
    margin: 5px 20px 0 5px;
    }

}

/*****************************************************************************************************************************
END OF MAIN STYLE SHEET
Additional testing styles below
******************************************************************************************************************************
******************************************************************************************************************************
******************************************************************************************************************************/