body {
    margin: 0px;
    padding: 0px;
    height: 100%;
    box-sizing: border-box;
    background-color: #fff;
    ;
}

html {
    height: 100%;
}

#wrapper_headerbar,
#wrapper_header,
#wrapper_top_menu,
#wrapper_body,
#wrapper_footer,
#wrapper_copyright,
#warpper_strapline,
.wrapper_page_panel,
#wrapper_mailing,
#wrapper_top_social,
#wrapper_testimonials,
#wrapper_copyright,
#wrapper_top_notice {
    padding: 0px;
    width: 100%;
    max-width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
    max-width: 1480px;
}

#wrapper_headerbar {

    background-color: var(--primary_color);
}

#wrapper_header {}

#wrapper_top_menu {}

.wrapper_page_panel {
    padding-left: 0px;
    padding-right: 0px;
}

#wrapper_body {}

#wrapper_mailing {}

#wrapper_footer {
    background-color: var(--primary_color);
}

#layout_headerbar,
#layout_header,
#layout_top_menu,
#layout_body,
#layout_footer,
#layout_copyright,
#layout_strapline,
.layout_page_panel,
#layout_mailing,
#layout_top_social,
#layout_testimonials,
#layout_copyright,
#layout_top_notice {
    width: 100%;
    margin: 0px;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0px;
    height: auto;
}

#layout_headerbar a {

    font-size: 16px;
    display: inline-block;
    padding: 5px;
    font-weight: bold;
}

#layout_headerbar a i {
    margin-right: 10px;
    font-size: 16px;
}

#layout_header {
    background-color: #FFFFFF;
    border-radius: 0px;
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #000;
}

#layout_top_notice {
    padding-bottom: 15px;
}

#layout_top_menu {
    height: 50px;
    text-align: right;
}

#layout_top_notice a {
    color: #000;
    text-decoration: none;
}

#layout_body {
    padding: 0px;
    background-repeat: repeat-y;
    background-color: #FFFFFF;
    display: block;
    width: 100%;
    min-height: 580px;
}

#layout_products h3 {
    text-align: center;
}

#layout_mailing {
    background-color: #f2f2f2;
    padding: 20px;
    margin-bottom: 20px;
    vertical-align: middle;
    text-align: center;
}

#layout_mailing .btn {
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    font-size: 16px;
    margin-top: 0px;
}

#layout_mailing h4 {
    color: var(--primary_color);
    margin: 0px;
    margin-bottom: 20px;
    font-size: 32px;
}

#layout_mailing p {
    color: #000;
}

#layout_mailing label {
    display: none;
}

#layout_mailing input[type='text'],
#layout_mailing input[type='email'] {
    width: 24%;
    vertical-align: middle;
    padding: 11px;
    box-sizing: border-box;
    margin-bottom: 0px;
    border: none;
    display: inline-block;
    vertical-align: middle;
    border-radius: 0px !important;
    border: 1px solid #000
}

#layout_mailing .mc-field-group {

    width: 32.333%;
    display: inline-block;
}

#layout_footer {
    padding-top: 10px;
    font-weight: bold;
    padding-bottom: 10px;
    background-repeat: repeat-y;
    border-radius: 0px;
    border-top: 25px solid var(--primary_color)
}

#layout_footer .col_100 {
    border-top: 1px solid #000;
}

#layout_copyright {
    text-align: center;
    font-size: 12px;
    padding-top: 10px;
    padding-bottom: 10px;
}

#loginstatus {
    padding-top: 5px;
    font-weight: bold;
    color: var(--primary_color);
    height: 20px;
}

#notice_right {
    text-align: right;
}

#notice_full {
    padding: 10px;
    text-align: center;
    color: #fff;
}

#top_btn_login {
    cursor: pointer;
    display: none;
}

#top_btn_logout {
    display: none;
}

#top_review {
    position: absolute;
    top: 10;
    right: 0;
    max-width: 220px;
}

audio {
    width: 320px;
    padding: 0px;
    margin: 0px;
    max-width: 100%;
}


.clear {
    clear: both;
    height: 0px;
}


img {
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
}

#top_logo {
    position: absolute;
    left: 0px;
    top: 10px;
}

#top_logo img {
    height: 120px;
    width: auto;
}

#top_contact {
    text-align: right;
    height: 50px;
}

#top_links {
    width: 320px;
    text-align: right;
    color: #000;
    padding: 10px;
    box-sizing: border-box;
    position: absolute;
    top: 0px;
    right: 80px;
}

#top_links img {
    margin-left: 10px;
}

#top_contact {
    font-size: 16px;
    padding-bottom: 10px;
}

#top_contact img {
    height: 20px;
    width: auto;
    vertical-align: bottom;
}

#top_contact p {
    margin: 0px;
    padding: 0px;
}

#top_contact a {
    color: #000;
    text-decoration: none;
    margin-left: 10px;
}

#top_basket {
    text-align: right;
}

#top_contact p#contact_tel {
    font-size: 24px;
}

#top_contact p#contact_email {}

#top_menu {
    height: 40px;
    width: 100%;
    margin: 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#breadcrumb {
    color: #666;
    padding: 10px;
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 0px;
    padding-left: 0px;
}

#breadcrumb a {
    color: #333;
    text-decoration: none;
}

#layout_footer .col_container {
    grid-row-gap: 20px;
    grid-column-gap: 20px;
}

#layout_footer a {
    text-decoration: none;
    color: #fff;
}

#layout_footer p {
    color: #fff;
}

#layout_footer form {
    max-width: 440px;
}

#layout_footer form label {
    display: none;
}

#layout_footer form input {
    max-width: 420px;
}

#layout_footer form button {
    clear: both;
    background-color: #fff;
    color: var(--primary_color) !important;
    font-weight: bold;
    font-family: var(--heading_font);
}

#foot_cards img {
    max-width: 380px;
    width: 100%;
    height: auto;
}

#layout_footer h4 {
    margin: 0px;
    color: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 20px;
}

#layout_footer ul {
    margin: 0px;
    width: 100%;
    padding: 0px;
}

#layout_footer h4 img {
    vertical-align: middle;
    height: 30px;
    width: auto;
    margin-right: 15px;
}

#layout_footer ul li {
    display: inline-block;
    width: 48%;
    list-style-type: none;
    padding: 3px;
    padding-left: 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    margin: 0px;
    box-sizing: border-box;
}

#layout_footer ul li a {
    font-size: 14px;
    color: #fff;
}

#layout_copyright img {
    height: 60px;
    width: auto;
}

#foot_cards {
    text-align: right;
}

#foot_contact {
    font-size: 22px;
    text-align: right;
}

#foot_contact img {
    height: 30px;
    width: auto;
    vertical-align: middle;
    margin-left: 20px;
}

#page_container {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#layout_body #page_container {
    padding-left: 0px;
    padding-right: 0px;
}

#page_col_centre {

    width: calc(100% - 280px - 320px);
    padding-right: 40px;
    padding-left: 40px;
    padding-top: 20px;
    min-height: 350px;
    flex-grow: 1;
    box-sizing: border-box;
}

#page_col_full {
    padding: 40px;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 0px;
    padding-left: 0px;
    padding-top: 0px;
}

#page_col_main {
    width: 60%;
    padding: 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    flex-grow: 1;
    padding: 40px;
}

#page_col_left {

    width: 280px;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: top;
}

#page_col_right {

    width: 320px;
    padding: 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: top;
    background-color: #fafafa;
}

#page_col_left h5,
#page_col_right h5 {
    display: block;
    padding: 5px;
    color: #036;
    margin: 0px;
    padding-top: 10px;
}

/* in-page columns */

.col_container {
    width: 100%;
    display: grid;
    grid-row-gap: 50px;
    grid-column-gap: 50px;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    box-sizing: border-box;
}

#layout_top_notice .col_container {
    width: 100%;
    display: grid;
    grid-row-gap: 10px;
    grid-column-gap: 10px;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    box-sizing: border-box;
    margin-top: 10px;
}

.col_25 {
    grid-column: span 3;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.col_33 {
    grid-column: span 4;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.col_50 {
    grid-column: span 6;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.col_66 {
    grid-column: span 4;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.col_75 {
    grid-column: span 9;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.col_100 {
    grid-column: span 12;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* Side Menu list */

.side_menu {
    margin: 0px;
    padding: 0px;
}

.side_menu li {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
    border-bottom: 2px solid #999;
    position: relative;
}

.side_menu li:hover {
    background-color: var(--back_grey);
}

.side_menu li::before {
    content: '>';
    position: absolute;
    right: 5px;
    color: #a2a2a2;
    font-size: 18px;
}

.side_menu li a {
    padding: 10px;
    display: block;
    color: #000;
    text-decoration: none;
    font-size: 14px;
    font-weight: normal;
}

.side_menu li.side_menu_heading a {
    color: var(--primary_color);
    font-weight: bold;
}

.side_menu li.side_menu_heading:hover {
    background-color: #fff;
}

.side_menu li.side_menu_heading::before {
    content: '';
}

.side_menu ul {
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
}

.side_menu ul ul li a {
    color: #000;
    font-weight: normal;
    padding-left: 25px;
}

.side_menu ul li {
    border-bottom-width: 1px;
}

.side_menu ul ul li a {
    color: #000;
    font-weight: normal;
    background-color: var(--back_grey);
    padding-left: 20px;
}

.side_menu ul ul ul li a {
    color: #fff;
    font-weight: normal;
    background-color: var(--primary_color);
    padding-left: 40px;
    border-left: 5px solid #f2f2f2;
}

/* Index list with image - grid */

.image_index_grid {
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    width: 100%;
}

.image_index_grid li {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    transition: 0.2s;
}

.image_index_grid li:hover {}

.image_index_grid li a {
    text-decoration: none;
    color: #000;
    display: block;
}

.image_index_grid li .contents {
    padding: 10px;
    display: block;
}

.image_index_grid li .image {
    width: 100%;
    height: auto;
    margin: 0px;
}

.image_index_grid li .image img {
    width: 100%;
    height: auto;
    margin: 0px;
}

.image_index_grid li h3 {
    margin: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 10px;
    padding-left: 0px;
}

.image_index_grid li h3::after {
    margin-left: auto;
    margin-right: auto;
}

.image_index_grid li .btn_more {
    color: #FFF;
    text-decoration: none;
    background-color: #00397A;
    display: block;
    padding: 3px;
}

.image_index_grid li .content {
    padding: 10px;
    display: block;
    padding-bottom: 40px;
}

.image_index_grid li .btn {
    position: absolute;
    bottom: 0px;
    left: 0px;
    margin: 0px;
    width: 100%;
    box-sizing: border-box;
}

/* Image List - Grid */

.image_grid {
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
}

.image_grid li {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
    position: relative;
    transition: 0.2s;
    text-align: center;
    border: 1px solid #f2f2f2;
    box-sizing: border-box;
}

.image_grid li:hover {}

.image_grid li .image {
    width: 100%;
    height: auto;
}

.image_grid li .image img {
    width: 100%;
    height: auto;
}

.image_grid li iframe {
    width: 100%;
    height: 57%;
}

.image_grid li .btn {
    position: absolute;
    bottom: 0px;
    left: 0px;
    margin: 0px;
    width: 100%;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    background-color: rgba(0, 0, 0, .8);
}


/* Media Grid */

.media_grid {
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
}

.media_grid li {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
    position: relative;
    transition: 0.2s;
    text-align: center;
    box-sizing: border-box;
}

.media_grid li .image {
    width: 100%;
    height: auto;
}

.media_grid li .image img {
    width: 100%;
    height: auto;
}

.media_grid li iframe {
    width: 100%;
    height: 57%;
}

.media_grid li .btn {
    position: absolute;
    bottom: 0px;
    left: 0px;
    margin: 0px;
    width: 100%;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    background-color: rgba(0, 0, 0, .8);
}


/* Document Grid */

.document_grid {
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
}

.document_grid li {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
    position: relative;
    transition: 0.2s;
    text-align: center;
    box-sizing: border-box;
}

.document_grid li a {
    text-decoration: none;
}

.document_grid li:hover {}

.document_grid li .image {
    width: 100%;
    height: auto;
    text-align: center;
    border-bottom: 5px solid var(--highlight_color)
}

.document_grid li .image img {
    width: auto;
    height: 260px;
}

.document_grid li iframe {
    width: 100%;
    height: 57%;
}

.document_grid li h3 {
    font-weight: normal;
    color: var(--secondary_color);
}

.document_grid h3 .title_manx {
    font-weight: 700;
    display: block;
    font-size: 24px;
    color: var(--primary_color);
}

.document_grid li a {
    text-decoration: none;
}

.document_grid li .btn {
    position: absolute;
    bottom: 0px;
    left: 0px;
    margin: 0px;
    width: 100%;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
}

/* link index */

.link_index {
    width: 100%;
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 20px;
    grid-column-gap: 20px;
}

.link_index li {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
    text-align: center;
    border: 1px solid var(--box_border);
    box-sizing: border-box;
}

.link_index li a {
    text-decoration: none;
    color: #000;
    padding: 5px;
    display: block;
}

/* link index icon */

.link_index_icon {
    width: 100%;
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 20px;
    grid-column-gap: 20px;
}

.link_index_icon li {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
    text-align: left;

    border: 1px solid #f2f2f2;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    min-height: 50px;
    border-left: 5px solid #003366;
    background-image: url(/images/icon_document.png);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 40px auto;
    box-shadow: 2px 2px 2px #f2f2f2;
}

.link_index_icon li a {
    text-decoration: none;
    color: #000;
    padding: 5px;
    display: block;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    box-sizing: border-box;
    font-size: 14px;
    padding-left: 50px;
}

.link_index_icon li a .heading {
    font-size: 18px;
    font-weight: bold;
    display: block;
}

/* index with side image */

.index_side {
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: auto auto;
    grid-row-gap: 20px;
    grid-column-gap: 20px;
    width: 100%;
}

.index_side li {
    padding: 0px;
    margin: 0px;
    margin-bottom: 5px;
    list-style-type: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.index_side li a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.index_side li .contents {
    width: 50%;
    display: block;
    box-sizing: border-box;
    padding-left: 20px;
}

.index_side li .image {
    width: 50%;
}

.index_side li .contents .date {
    font-size: 12px;
}

.index_side li .image img {
    width: 100%;
}

.index_side li h2,
.index_side li h3,
.index_side li h4,
.index_side li p {
    padding: 0px;
    margin: 0px;
    margin-bottom: 10px;
}

/* Panel index with side image */

.panel_index_side {
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-row-gap: 5px;
    grid-column-gap: 5px;
    width: 100%;
    margin-bottom: 20px;
}

.panel_index_side li {
    padding: 10px;
    margin: 0px;
    border: 1px solid #f2f2f2;
    background-color: #fff;
    list-style-type: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    box-shadow: 2px 2px 2px #d2d2d2;
}

.panel_index_side li a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

.panel_index_side li img {
    width: 25%;
    height: auto;
    float: right;
    margin-left: 10px;
}

.panel_index_side li .heading,
.panel_index_side li p {
    padding: 0px;
    margin: 0px;
    margin-bottom: 10px;
}

.panel_index_side li .heading {
    font-size: 22px;
    font-weight: bold;
}

/* Panel index with image */

.panel_index_image {
    padding: 0px;
    margin: 0px;
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-row-gap: 5px;
    grid-column-gap: 5px;
    width: 100%;
}

.panel_index_image li {
    padding: 10px;
    margin: 0px;
    border: 1px solid var(--box_border);
    list-style-type: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.panel_index_image li a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

.panel_index_image li img {
    width: 100%;
    height: auto;
    margin-bottom: 10px;
}

.panel_index_image li .heading,
.panel_index_image li p {
    padding: 0px;
    margin: 0px;
    margin-bottom: 10px;
}

.panel_index_image li .heading {
    font-size: 22px;
    font-weight: bold;
}


/* page block */

.page_block {
    margin: 0px;
    padding: 0px;
    margin-right: auto;
    display: grid;
    grid-row-gap: 50px;
    grid-column-gap: 50px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    box-sizing: border-box;
}

.page_block.Center, .page_block.Full {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.page_block.vcentre .block_text,
.page_block.vcentre .block_image {
    display: flex;
    align-content: center;
    flex-direction: row;
    flex-wrap: wrap;
}

.page_block .block_addons {
    grid-column: span 2;
    order: 3;
    padding: 0px;
    box-sizing: border-box;
}

.page_block .block_image {
    grid-column: span 2;
    order: 1;
    padding: 0px;
    box-sizing: border-box;
}

.page_block.Left .block_image {
    grid-column: span 1;
    order: 1;
    box-sizing: border-box;
}

.page_block.Right .block_image {
    grid-column: span 1;
    order: 2;
    box-sizing: border-box;
}

.page_block.Center .block_image {

    grid-column: span 1;
    order: 1;
    box-sizing: border-box;
    margin-left: 10%;
    margin-right: 10%;
}

.page_block.Full .block_image {

    grid-column: span 2;
    order: 1;
    box-sizing: border-box;
}

.page_block.Left .block_image img {
    width: 100%;
    height: auto;
}

.page_block.Right .block_image img {
    width: 100%;
    height: auto;
}

.page_block.Center .block_image img {
    width: 100%;
    height: auto;
}

.page_block.Full .block_image img {
    width: 100%;
    height: auto;
}

.page_block .block_text {

    grid-column: span 2;
    order: 2;
    padding: 0px;
    box-sizing: border-box;
}

.page_block.Left .block_text {

    grid-column: span 1;
    order: 2;
    box-sizing: border-box;
}

.page_block.Right .block_text {

    grid-column: span 1;
    order: 1;
    box-sizing: border-box;
}

.page_block.Center .block_text {

    grid-column: span 1;
    order: 2;
    box-sizing: border-box;
    margin-left: 10%;
    margin-right: 10%;
}

.page_block.Full .block_text {

    grid-column: span 2;
    order: 2;
    box-sizing: border-box;
}

.page_block.Left .block_text h3 {

    text-align: left;
}

.page_block.Right .block_text h3 {

    text-align: left;
}

.page_block.Center .block_text h3 {

    text-align: center;
}

.page_block.Full .block_text h3 {

    text-align: center;
}


.page_block .panel_addons {
    width: 100%;
    order: 3;
    grid-column: span 2;
}


/* page panels */

.wrapper_page_panel {
    background-repeat: no-repeat;
    background-size: cover;
}

.layout_page_panel {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    position: relative;
    overflow: hidden;
    padding: 0px;
}

.layout_page_panel.video {
    height: 450px;
}

.layout_page_panel .panel_content {
    margin: 0px;
    padding: 0px;
    margin-right: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    box-sizing: border-box;
}

.layout_page_panel .panel_content .vertical_align {

    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
}

.layout_page_panel .panel_full {
    box-sizing: border-box;
    width: 100%;
}

.layout_page_panel .panel_content .panel_text {
    box-sizing: border-box;
    width: 100%;
}

.layout_page_panel .panel_content .panel_image {
    box-sizing: border-box;
    width: 100%;
}

/* Panel Layout: Standard */

.layout_page_panel .panel_content.Standard .panel_text {
    box-sizing: border-box;
    padding: 40px;
    width: 100%;
}

.layout_page_panel .panel_content.Standard .panel_image {
    box-sizing: border-box;
}

.layout_page_panel .panel_content.Standard .panel_addons {
    box-sizing: border-box;
    padding: 60px;
}

/* Panel Layout: Image Left */

.layout_page_panel .panel_content.Image_Left .panel_image {
    width: 50%;
    order: 1;
    padding: 20px;
}

.layout_page_panel .panel_content.Image_Left .panel_image img {
    width: 100%;
    height: auto;
}

.layout_page_panel .panel_content.Image_Left .panel_text {
    order: 2;
    width: 50%;
    padding: 60px;
}



/* Panel Layout: Image Right */

.layout_page_panel .panel_content.Image_Right .panel_image {
    width: 50%;
    order: 2;
    padding: 20px;
}

.layout_page_panel .panel_content.Image_Right .panel_image img {
    width: 100%;
    height: auto;
}

.layout_page_panel .panel_content.Image_Right .panel_text {
    order: 1;
    width: 50%;
    padding: 60px;
}


/* Panel Layout: Image Panel Left */

.layout_page_panel .panel_content.Image_Panel_Left .panel_image {
    width: 50%;
    order: 1;
    background-size: cover;
    background-position: center center
}

.layout_page_panel .panel_content.Image_Panel_Left .panel_text {
    order: 2;
    width: 50%;
    padding: 60px;
}


/* Panel Layout: Image Panel Right */

.layout_page_panel .panel_content.Image_Panel_Right .panel_image {
    width: 50%;
    order: 2;
    background-size: cover;
    background-position: center center
}

.layout_page_panel .panel_content.Image_Panel_Right .panel_text {
    order: 1;
    width: 50%;
    padding: 60px;
}



/* Panel Layout: Text Overlay */

.layout_page_panel .panel_content.Text_Overlay {
    width: 100%;
    background-size: cover;
    background-position: center center;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    padding-top: 60px;
    padding-bottom: 60px;
    height: 100%;
}

.layout_page_panel .panel_content.Text_Overlay .panel_text {
    width: 50%;
    padding: 60px;
    margin-left: auto;
    margin-right: auto;
    background-color: rgba(255, 255, 255, .8);
}


/* Panel Layout: Text Overlay left */

.layout_page_panel .panel_content.Text_Overlay_Left {
    width: 100%;
    background-size: cover;
    background-position: center center;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    padding: 20px;
    padding-top: 60px;
    padding-bottom: 60px;
}

.layout_page_panel .panel_content.Text_Overlay_Left .panel_text {
    width: 50%;
    padding: 60px;
    margin-left: 0px;
    margin-right: auto;
    background-color: rgba(255, 255, 255, .8);
}



/* Panel Layout: Text Overlay right */

.layout_page_panel .panel_content.Text_Overlay_Right {
    width: 100%;
    background-size: cover;
    background-position: center center;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    padding: 20px;
    padding-top: 60px;
    padding-bottom: 60px;
}

.layout_page_panel .panel_content.Text_Overlay_Right .panel_text {
    width: 50%;
    padding: 60px;
    margin-left: auto;
    margin-right: 0px;
    background-color: rgba(255, 255, 255, .8);
}


/* Panel Layout: Text Box Bottom */

.layout_page_panel .panel_content.Text_Box_Bottom .panel_image {
    width: 100%;
    height: 480px;
    background-size: cover;
    background-position: center center;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: center;

}

.layout_page_panel .panel_content.Text_Box_Bottom .panel_text {
    width: 100%;
    padding: 60px;
}



.layout_page_panel h3 {
    margin: 0px;
    margin-bottom: 20px;
}



/* infobox */

.infoboxes {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    justify-content: center;
    width: 100%;
}

.infoboxes .infobox_container {
    padding: 0px;
    margin: 0%;
    list-style-type: none;
    box-sizing: border-box;
    text-align: center;
    min-height: 500px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}

.infoboxes .infobox_container .infobox_image {
    width: 100%;
}

.infoboxes .infobox_container .infobox_content {
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    position: absolute;
    bottom: 10px;
    width: calc(100% - 20px);
    left: 10px;

    background-color: rgba(111, 34, 119, .8);
}

.infoboxes .infobox_container .infobox_image img {
    clear: none;
    width: 100%;
    padding: 0px;
    height: auto;
    margin-bottom: 10px;
}

.infoboxes .infobox_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
    color: #fff !important;
}

.infoboxes .infobox_container a {
    text-decoration: none;
    color: #000;
    width: 100%;
    height: 100%;
    display: block;
}

.infoboxes .infobox_container .btn {
    width: auto;
    display: inline-block;
    clear: both;
    color: #fff !important;
    background-color: transparent;
    border: 1px solid #fff;
    font-weight: bold;
    text-transform: uppercase;
}

/* ImageGrid */

.imagegrid {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-row-gap: 5px;
    grid-column-gap: 5px;
    justify-content: center;
    width: 100%;
}

.imagegrid.Single {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.imagegrid.DoubleOffset {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.imagegrid.TripleLeft, .imagegrid.TripleRight {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.imagegrid.TripleGrid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.imagegrid .imagegrid_item {
    padding: 0px;
    margin-bottom: 0px;
    list-style-type: none;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    background-size: cover;
    background-position: center center;
    position: relative;
    overflow: hidden;
}

.imagegrid.DoubleOffset .imagegrid_item:nth-child(1), .imagegrid.DoubleOffset .imagegrid_item:nth-child(4) {
    grid-column: span 2
}

.imagegrid .imagegrid_item a {
    display: block;
    width: 100%;
    padding-bottom: 75%;
}

.imagegrid.Single .imagegrid_item a {
    display: block;
    width: 100%;
    padding-bottom: 60%;
}

.imagegrid.Double .imagegrid_item a {
    display: block;
    width: 100%;
    padding-bottom: 150%;
}

.imagegrid_main, .imagegrid_other {
    height: 100%;
}

.imagegrid.TripleRight .imagegrid_main {
    order: 2;
}

.imagegrid.TripleRight .imagegrid_other {
    order: 1;
}

.imagegrid.TripleLeft .imagegrid_main .imagegrid_item a, .imagegrid.TripleRight .imagegrid_main .imagegrid_item a {
    padding-bottom: 150%
}

.imagegrid.TripleLeft .imagegrid_other .imagegrid_item, .imagegrid.TripleRight .imagegrid_other .imagegrid_item {
    display: block;
    width: 100%;
    height: calc(50% - 7.5px);
    margin-bottom: 5px;
}

.imagegrid.TripleGrid .imagegrid_item a {
    display: block;
    width: 100%;
    padding-bottom: 100%;
}

.imagegrid .imagegrid_item .caption {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding: 25px 15px;
    width: 50%;
    background-color: rgba(0, 0, 0, .8);
    color: #fff;
    text-align: center;
    box-sizing: border-box;
    border-radius: 10px;
}

.imagegrid .imagegrid_item .caption::after {
    content: "More Details";
    width: 120px;
    background-color: var(--highlight_color);
    display: block;
    margin-top: 10px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    padding: 10px 15px;
    border-radius: 10px;
    color: #000;
    font-weight: bold;
}

.imagegrid .imagegrid_item .caption .title {
    display: block;
    font-family: var(--heading_font);
    font-size: 24px;
    margin-bottom: 25px;
    position: relative;
}

.imagegrid .imagegrid_item .caption .title::after {
    content: "";
    width: 120px;
    height: 3px;
    background-color: var(--highlight_color);
    display: block;
    margin-top: 10px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
}

.imagegrid .imagegrid_item .caption .text {
    font-size: 14px;
}

/* infopanels */

.infopanels {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    justify-content: center;
    width: 100%;
}

.infopanels .infopanel_container {
    background-color: var(--box_back);
    padding: 0px;
    margin-bottom: 10px;
    border: 1px solid var(--box_border);
    list-style-type: none;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.infopanels .infopanel_container .infopanel_image {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 33.333%;
}

.infopanels .infopanel_container .infopanel_content {

    width: 66.666%;
    padding: 15px;
    box-sizing: border-box;
}


.infopanels .infopanel_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
}

.infopanels .infopanel_container p {}


/* itembox */

.itemboxes {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    justify-content: center;
    width: 100%;
}

.itemboxes .itembox_container {

    padding: 0px;
    justify-content: space-between;
    margin: 0%;
    list-style-type: none;
    box-sizing: border-box;
    margin-bottom: 10px;
    position: relative;
}

.itemboxes .itembox_container .itembox_image {
    width: 100%;
}

.itemboxes .itembox_container .itembox_content {
    width: 100%;
    padding: 10px;
    padding-bottom: 40px;
    box-sizing: border-box;
}

.itemboxes .itembox_container .itembox_content fieldset {
    border: none;
    padding-left: 0px;
}

.itemboxes .itembox_container .itembox_content input {
    width: 40px;
    clear: right;
}

.itemboxes .itembox_container .itembox_image img {
    clear: none;
    width: 100%;
    padding: 0px;
    height: auto;
    margin-bottom: 10px;
}

.itemboxes .itembox_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
}

.itemboxes .itembox_container h3::after {
    display: none;
}

.itemboxes .itembox_container .price {
    font-size: 18px;
    font-weight: bold;
    display: block;
    padding: 10px;
    padding-left: 0px;
    border-top: 2px solid #000;
    box-sizing: border-box;
    width: 100%;
}

.itemboxes .itembox_container a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

/* staffboxs */

.staffboxs {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    justify-content: center;
    width: 100%;
}

.staffboxs .staffbox_container {
    padding: 0px;
    margin: 0%;
    border-bottom: 5px solid #CCC;
    list-style-type: none;
    box-sizing: border-box;
}

.staffboxs .staffbox_container .staffbox_image {
    width: 100%;
    text-align: center;
}

.staffboxs .staffbox_container .staffbox_content {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}

.staffboxs .staffbox_container .staffbox_image img {
    clear: none;
    width: 80%;
    padding: 0px;
    height: auto;
    margin-bottom: 10px;
    border-radius: 250px;
}

.staffboxs .staffbox_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
}

.staffboxs .staffbox_container a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

/* mediaboxes */

.mediaboxes {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    justify-content: space-between;
    width: 100%;
}

.mediaboxes .mediabox_container {

    padding: 0px;
    justify-content: space-between;
    list-style-type: none;
    box-sizing: border-box;
    position: relative;
}

.mediaboxes .mediabox_container .mediabox_image {
    width: 100%;
    padding-bottom: 56.25%;
    /* 16:9 */
    position: relative;
}

.mediaboxes .mediabox_container .mediabox_image>div {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    display: flex;
    align-items: center;
}

.mediaboxes .mediabox_container .mediabox_content {
    width: 100%;
    padding: 10px;
    padding-bottom: 40px;
}

.mediaboxes .mediabox_container .mediabox_image img {
    clear: none;
    width: 100%;
    padding: 0px;
    height: auto;
    margin: 0px;
}

.mediaboxes .mediabox_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
}

.mediaboxes .mediabox_container a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

/* planbox */

.plans {
    margin: 40px auto;
    width: 90%;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 0px;
    zoom: 1;
}


.plan {
    flex-grow: 1;
    margin: 20px 0;
    padding: 20px;
    text-align: center;
    background: #f2f2f2;
    background-clip: padding-box;
    border: solid #d2d2d2;
    border-width: 2px 0 2px 2px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.4);
    position: relative;
    padding-bottom: 50px;
}

.plan:first-child {
    border-top-left-radius: 7px;
    border-bottom-left-radius: 7px;
}

.plan:last-child {
    border-width: 2px;
    border-top-right-radius: 7px;
    border-bottom-right-radius: 7px;
}

.plan-title {
    position: relative;
    margin: 0px;
    padding: 20px;
    line-height: 1;
    font-size: 16px;
    font-weight: bold;
    color: #595f6b;
    border-bottom: 1px dashed #d2d2d2;
    margin-top: 0px;
}

.plan-title:before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    height: 1px;
    background-size: 3px 1px;
}

.plan-price {
    margin: 30px auto;
    width: 90px;
    height: 90px;
    line-height: 90px;
    font-size: 19px;
    font-weight: bold;
    color: white;
    background: #595f6b;
    border-radius: 45px;
    margin-top: 30px;
    padding: 0px;
}

.plan-price>span {
    font-size: 12px;
    font-weight: normal;
    color: rgba(255, 255, 255, 0.9);
}

.plan-features {
    margin-bottom: 20px;
    line-height: 2;
    font-size: 12px;
    color: #999;
    text-align: center;
}

.plan-features ul {
    margin: 0px;
    padding: 0px;
}

.plan-features li {
    list-style: none;
    margin: 0px;
    padding: 5px 0px;
    font-size: 16px;
    display: block;
}

.plan-features>li>strong {
    font-weight: bold;
    color: #888;
}

.plan-button {
    position: absolute;
    bottom: 10px;
    left: 50%;
    width: 140px;
    margin-left: -70px;
    display: inline-block;
    vertical-align: top;
    padding: 10px 15px;
    font-weight: bold;
    color: white;
    text-transform: uppercase;
    text-decoration: none;
    background: var(--primary_color);
    border: 1px solid #222;
    border-bottom-color: black;
    border-radius: 3px;
    box-sizing: border-box;
}

.plan-button:active {
    color: rgba(255, 255, 255, 0.95);
    background: var(--primary_color);
}

.plan-tall {
    margin: 0;
    background-color: white;
    border-width: 2px;
    border-radius: 10px;
    padding-bottom: 70px;
}

.plan-tall::before {
    content: "Recommended";
    display: block;
    background-color: var(--primary_color);
    padding: 10px 15px;
    font-size: 14px;
    font-weight: bold;
    box-sizing: border-box;
    width: 100%;
    top: 0px;
    left: 0px;
    position: absolute;
    border-radius: 10px 10px 0px 0px;
    color: #fff;
}

.plan-tall>.plan-title {
    font-size: 26px;
    margin-top: 10px;
}

.plan-tall>.plan-price {
    width: 110px;
    height: 110px;
    line-height: 110px;
    font-size: 24px;
    border-radius: 90px;
    margin-top: 10px;
}

.plan-tall>.plan-features {
    font-size: 13px;
}

.plan-tall>.plan-button {

    bottom: 30px;
}

.plan-tall+.plan {
    border-left: 0;
}




/* boxgrid */

.boxgrid {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 0px;
    grid-column-gap: 0px;
    justify-content: center;
    width: 100%;
}

.boxgrid .boxgrid_container {
    padding: 0px;
    margin: 0%;
    list-style-type: none;
    box-sizing: border-box;
    position: relative;
    background-position: center center;
    background-size: cover;
    min-height: 420px;
    background-color: var(--back_grey);
}

.boxgrid .boxgrid_container .boxgrid_content {
    width: 100%;
    padding: 40px;
    box-sizing: border-box;
}

/* bullet_list */

.bullet_list {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    width: 100%;
}

.bullet_list .bullet_list_container {
    padding: 0px;
    list-style-type: none;
    box-sizing: border-box;
    position: relative;
    background-image: url(/images/bullet.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 60px auto;
    padding-left: 80px;
}

.bullet_list .bullet_list_container .bullet_list_content {
    width: 100%;
    padding: 10px;
    padding-bottom: 40px;
}

.bullet_list .bullet_list_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
}

.bullet_list .bullet_list_container a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

/* bullet_grid */

.bullet_grid {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    width: 100%;
}

.bullet_grid .bullet_grid_container {
    padding: 0px;
    list-style-type: none;
    box-sizing: border-box;
    position: relative;
    background-image: url(/images/bullet.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 40px auto;
    padding-left: 60px;
}

.bullet_grid .bullet_grid_container .bullet_grid_content {
    width: 100%;
    padding: 10px;
    padding-bottom: 40px;
}

.bullet_grid .bullet_grid_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
}

.bullet_grid .bullet_grid_container a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

/* icon_grid */

.icon_grid {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    width: 100%;
}

.icon_grid .icon_grid_container {
    padding: 0px;
    justify-content: space-between;
    list-style-type: none;
    margin: 0%;
    box-sizing: border-box;
    margin-bottom: 10px;
    position: relative;
    text-align: center;
}

.icon_grid .icon_grid_container .icon_grid_content {
    width: 100%;
    padding: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;
}

.icon_grid .icon_grid_container .icon_grid_image {
    width: 100%;
    padding: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;
}

.icon_grid .icon_grid_container .icon_grid_image img {
    width: 80%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

.icon_grid .icon_grid_container h3 {
    margin-left: 0px;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
}

.icon_grid .icon_grid_container h3::after {
    display: none;
}

.icon_grid .icon_grid_container .btn {
    display: inline-block;
}

.icon_grid .icon_grid_container a {
    text-decoration: none;
    color: #000;
    width: 100%;
    display: block;
}

/* comment_box */

.comment_box {
    margin: 0px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-row-gap: 15px;
    grid-column-gap: 15px;
    width: 100%;
}

.comment_box .comment_box_container {
    padding: 0px;
    list-style-type: none;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    text-align: center;
}

.comment_box .comment_box_container .comment_box_content {
    width: calc(100% - 100px);
    padding: 10px;
    box-sizing: border-box;
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    border-top: 2px solid #a2a2a2;
    border-bottom: 2px solid #a2a2a2;
    padding-top: 60px;
    padding-bottom: 50px;
    font-size: 22px;
    background-color: var(--back_grey);
}

.comment_box .comment_box_container .comment_box_content:before {

    content: url(/images/quote_left.png);
    /*url of image*/
    height: 33px;
    /*height of image*/
    width: 40px;
    /*width of image*/
    position: absolute;
    left: 10px;
    top: 10px;
}

.comment_box .comment_box_container .comment_box_content:after {

    content: url(/images/quote_right.png);
    /*url of image*/
    height: 33px;
    /*height of image*/
    width: 40px;
    /*width of image*/
    position: absolute;
    right: 20px;
    bottom: 15px;
}

/* Infocarousel */

.infocarousel {
    margin-top: 10px;
    margin-bottom: 20px;
}

.infocarousel .infocarousel_item {
    padding: 10px;
    box-sizing: border-box;
}

.infocarousel .infocarousel_image {
    width: 100%;
    height: auto;
}

/* Infotabs */

#accordion-container {
    margin-top: 20px;
    margin-bottom: 20px;
    box-sizing: border-box !important;
    width: 100% !important;
}

#accordion-container h2::after {
    display: none;
}

.accordion-header {
    font-size: 20px;
    margin: 5px 0 0 0;
    padding: 10px 20px;
    padding-left: 40px;
    cursor: pointer;
    color: #000;
    box-sizing: border-box !important;
    width: 100% !important;
    border-bottom: 1px solid #000;
    clear: both;
}

.active-header {
    background: url(/images/bullet_active.png);
    background-repeat: no-repeat;
    background-position: 5px 50%;
    background-size: 25px 25px;
    color: #000;
}

.active-header:hover {
    background: url(/images/bullet_active.png);
    background-repeat: no-repeat;
    background-position: 5px 50%;
    background-size: 25px 25px;
}

.inactive-header {
    background: url(/images/bullet_inactive.png);
    background-repeat: no-repeat;
    background-position: 5px 50%;
    background-size: 25px 25px;
}

.inactive-header:hover {
    background: url(/images/bullet_inactive.png);
    background-repeat: no-repeat;
    background-position: 5px 50%;
    background-size: 25px 25px;
}

.accordion-content {
    display: none;
    padding: 20px;
    border-top: 0;
    -moz-border-radius: 0 0 5px 5px;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    box-sizing: border-box !important;
    width: 100% !important;
    padding-left: 0px;
    padding-right: 0px;
}

/* map box */

.map_box {
    display: block;
    width: 100%;
}

/* page banners */

#banner_image {
    width: 100%;
    height: 240px;
    background-size: cover;
}

#banner_video {
    height: 560px;
    border-right: none;
    border-left: none;
    position: relative;
    padding: 0px;
}

#banner_video #video-container {
    position: absolute;
}

#banner_video #video-container {
    top: 0%;
    left: 0%;
    height: 100%;
    width: 100%;
    overflow: hidden;
}

#banner_video video {
    position: absolute;
    z-index: 0;
}

#banner_video video.fillWidth {
    width: 100%;
}


@media {

    @viewport {
        width: device-width;
    }

    @-ms-viewport {
        width: device-width
    }
}


@media (min-width: 1440px) {
    .imagegrid .imagegrid_item .caption .text {
        font-size: 0.8vw;
    }

}

@media (min-width: 1280px) {

    .imagegrid .imagegrid_item .caption .title {
        font-size: 1.8vw;
    }

    .imagegrid .imagegrid_item .caption .text {
        font-size: 1vw;
    }

}

@media (max-width: 1200px) {
    #foot_contact {
        font-size: 18px;
    }
}

@media (max-width: 1080px) {

    .document_grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    #page_col_left {
        width: 100%;
        order: 3;
        display: none;
    }

    #page_col_right {
        width: 100%;
        order: 2;
    }

    #page_col_centre {
        width: 100%;
        order: 1;
    }

    #page_col_main {
        width: 100%;
        order: 1;
        padding-left: 0px;
        padding-right: 0px;
    }

    #page_col_full {
        width: 100%;
        order: 1;
    }

    .col_25 {
        grid-column: span 6;
    }

    .col_33 {
        grid-column: span 6;
    }

    .col_66 {
        grid-column: span 6;
    }

    .col_75 {
        grid-column: span 6;
    }

    #foot_contact a {
        display: block;
    }
}

@media (max-width: 960px) {
    .boxgrid {
        grid-template-columns: auto;
        min-height: 420px;
    }

    .infoboxes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .itemboxes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .staffboxes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mediaboxes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .imagegrid .imagegrid_item .caption .text {
        display: none;
    }

    .infoboxes {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .infoboxes .infobox_container {
        min-height: 350px
    }

    @media (max-width: 850px) {

        #layout_headerbar,
        #layout_header,
        #layout_top_menu,
        #layout_footer,
        #layout_copyright,
        #layout_strapline,
        .layout_page_panel,
        #layout_mailing,
        #layout_top_social,
        #layout_testimonials,
        #layout_copyright {}

        #top_links {
            right: 40px;
        }

        #top_contact {
            right: 40px;
        }

        #layout_body #page_container {
            padding-left: 0px;
            padding-right: 0px;
        }

        #layout_top_notice .col_container .col_50 {
            grid-column: span 6;
        }

        #breadcrumb {
            padding-right: 0px;
            padding-left: 0px;
        }

        #foot_contact, #foot_cards {
            text-align: center;
            margin-bottom: 10px;
        }

        #foot_contact a {
            margin-bottom: 10px;
        }

        .image_grid {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .image_grid li:hover {}

        .panel_index_image li {}

        .index_side li p {
            font-size: 14px;
        }

        .bullet_grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .plans {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .plan {

            border-radius: 5px;
        }

        .plan-tall {

            border-radius: 5px;
        }

        .plan-tall>.plan-button {

            bottom: 10px;
        }

        .plan-tall {
            padding-bottom: 40px;
        }

        .image_index_grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }


        /* Panel Layout: Image Left */

        .layout_page_panel .panel_content.Image_Left .panel_image {
            width: 100%;
            order: 1;
        }

        .layout_page_panel .panel_content.Image_Left .panel_image img {}

        .layout_page_panel .panel_content.Image_Left .panel_text {
            order: 2;
            width: 100%;
        }



        /* Panel Layout: Image Right */

        .layout_page_panel .panel_content.Image_Right .panel_image {
            width: 100%;
            order: 1;
        }

        .layout_page_panel .panel_content.Image_Right .panel_image img {}

        .layout_page_panel .panel_content.Image_Right .panel_text {
            order: 2;
            width: 100%;
        }


        /* Panel Layout: Image Panel Left */

        .layout_page_panel .panel_content.Image_Panel_Left .panel_image {
            width: 100%;
            order: 1;
            height: 360px;

        }

        .layout_page_panel .panel_content.Image_Panel_Left .panel_text {
            order: 2;
            width: 100%;
        }


        /* Panel Layout: Image Panel Right */

        .layout_page_panel .panel_content.Image_Panel_Right .panel_image {
            width: 100%;
            order: 1;
            height: 360px;
        }

        .layout_page_panel .panel_content.Image_Panel_Right .panel_text {
            order: 2;
            width: 100%;
        }



        /* Panel Layout: Text Overlay */

        .layout_page_panel .panel_content.Text_Overlay {}

        .layout_page_panel .panel_content.Text_Overlay .panel_text {
            width: 80%;
            margin-left: auto;
            margin-right: auto;
        }


        /* Panel Layout: Text Overlay left */

        .layout_page_panel .panel_content.Text_Overlay_Left {}

        .layout_page_panel .panel_content.Text_Overlay_Left .panel_text {
            width: 80%;
            margin-left: auto;
            margin-right: auto;
        }



        /* Panel Layout: Text Overlay right */

        .layout_page_panel .panel_content.Text_Overlay_Right {}

        .layout_page_panel .panel_content.Text_Overlay_Right .panel_text {
            width: 80%;
            margin-left: auto;
            margin-right: auto;
        }


        /* page block */

        .page_block .panel_image {
            width: 100%;
        }

        .page_block.Left .panel_image {
            width: 100%;
        }

        .page_block.Right .panel_image {
            width: 100%;
        }

        .page_block.Center .panel_image {
            width: 100%;
            margin-left: 0%;
            margin-right: 0%;
        }

        .page_block.Full .panel_image {
            width: 100%;
        }


        .page_block .panel_text {
            width: 100%;
        }

        .page_block.Left .panel_text {
            width: 100%;
        }

        .page_block.Right .panel_text {
            width: 100%;
        }

        .page_block.Center .panel_text {
            width: 100%;
            margin-left: 0%;
            margin-right: 0%;
        }

        .page_block.Full .panel_text {
            width: 100%;
        }

        .col_container {
            grid-column-gap: 0px;
        }

        .col_25 {
            grid-column: span 12;
        }

        .col_33 {
            grid-column: span 12;
        }

        .col_66 {
            grid-column: span 12;
        }

        .col_50 {
            grid-column: span 12;
        }

        .col_75 {
            grid-column: span 12;
        }
    }

    @media (max-width: 780px) {
        #top_contact p#contact_tel {
            font-size: 1.6em;
        }


        .link_index, .link_index_icon {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .boxgrid .boxgrid_container {
            min-height: 360px;
        }

        .icon_grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    @media (max-width: 720px) {


        .index_side {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .bullet_list {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .panel_index_image {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .document_grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }


        .imagegrid, .imagegrid.Single, .imagegrid.DoubleOffset, .imagegrid.TripleLeft, .imagegrid.TripleRight, .imagegrid.TripleGrid {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .imagegrid .imagegrid_item .caption .text {
            display: inline;
        }

        .imagegrid.TripleRight .imagegrid_main {
            order: 1;
        }

        .imagegrid.TripleRight .imagegrid_other {
            order: 1;
        }

        .imagegrid.TripleLeft .imagegrid_main .imagegrid_item a, .imagegrid.TripleRight .imagegrid_main .imagegrid_item a {
            height: 150%
        }

        .imagegrid.DoubleOffset .imagegrid_item:nth-child(1), .imagegrid.DoubleOffset .imagegrid_item:nth-child(4) {
            grid-column: span 1;
        }
    }

    @media (max-width: 650px) {
        #wrapper_headerbar, #wrapper_header, #wrapper_top_menu, #wrapper_body, #wrapper_footer, #wrapper_copyright, #warpper_strapline, .wrapper_page_panel, #wrapper_mailing, #wrapper_top_social, #wrapper_testimonials, #wrapper_copyright, #wrapper_top_notice {
            padding-left: 20px;
            padding-right: 20px;
        }

        .wrapper_page_panel {
            padding-left: 0px;
            padding-right: 0px;
        }

        .layout_page_panel .panel_content.Standard .panel_text {
            padding-left: 20px;
            padding-right: 20px;
        }

        #top_logo {
            top: 50px;
        }

        #top_logo img {
            height: 90px;
            width: auto;
        }

        #top_contact a {
            margin-left: 10px;
            font-size: 16px;
        }

        #search_box img {
            display: none;
        }

        /* page block */
        .page_block {
            grid-template-columns: repeat(1, minmax(0, 1fr));
            grid-row-gap: 20px;
            grid-column-gap: 20px;
        }

        .page_block .panel_image {
            grid-column: span 1;
            order: 1;
        }

        .page_block.Left .panel_image {
            grid-column: span 1;
            order: 1;
        }

        .page_block.Right .panel_image {
            grid-column: span 1;
            order: 1;
        }

        .page_block.Center .panel_image {
            grid-column: span 1;
            margin-left: 0%;
            margin-right: 0%;
            order: 1;
        }

        .page_block.Full .panel_image {
            grid-column: span 1;
            order: 1;
        }


        .page_block .panel_text {
            grid-column: span 1;
            order: 2;
        }

        .page_block.Left .panel_text {
            grid-column: span 1;
            order: 2;
        }

        .page_block.Right .panel_text {
            grid-column: span 1;
            order: 2;
        }

        .page_block.Center .panel_text {
            grid-column: span 1;
            margin-left: 0%;
            margin-right: 0%;
            order: 2;
        }

        .page_block.Full .panel_text {
            grid-column: span 1;
            order: 2;
        }

        .page_block .panel_addons {
            grid-column: span 1;
        }

        #layout_footer #foot_contact {
            float: none;
        }

        #layout_footer #foot_menu {
            width: 100%;
        }

        #layout_footer #foot_menu li {
            width: 33.333%;
        }


        .layout_page_panel .panel_content {
            width: auto;
        }

        .image_index_grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .image_index_grid li:hover {}

        #layout_mailing .mc-field-group {
            width: 98%;
        }

        .infopanels .infopanel_container .infopanel_image {
            height: 320px;
        }

        .infopanels .infopanel_container .infopanel_image,
        .infopanels .infopanel_container .infopanel_content {
            width: 100%;
        }

        .bullet_grid {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .media_grid li {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .plan {
            width: 100%;
            margin: 0px;
            margin-bottom: 15px;
        }

        .boxgrid .boxgrid_container {
            min-height: 320px;
        }

        .infoboxes {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .itemboxes {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .staffboxs {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .mediaboxes {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .image_index_grid {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .imagegrid .imagegrid_item .caption .text {
            display: none;
        }

        .layout_page_panel .panel_content.Image_Panel_Left .panel_text, .layout_page_panel .panel_content.Image_Panel_Right .panel_text {
            padding: 20px;
        }

        #layout_top_notice .col_container .col_50 {
            grid-column: span 6;
            font-size: 14px;
        }
    }

    @media (max-width: 480px) {

        #layout_headerbar,
        #layout_header,
        #layout_top_menu,
        #layout_footer,
        #layout_copyright,
        #layout_strapline,
        .layout_page_panel,
        #layout_mailing,
        #layout_top_social,
        #layout_testimonials,
        #layout_copyright {
            padding-left: 0px;
            padding-right: 0px;
        }

        #layout_body #page_container {
            padding-left: 0px;
            padding-right: 0px;
        }

        #breadcrumb {
            padding-right: 0px;
            padding-left: 0px;
        }

        .panel_index_image {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }



        #layout_footer #foot_menu li {
            width: 50%;
        }

        #top_review {
            float: right;
            max-width: 220px;
        }

        .index_side li .contents {
            margin-left: 0px;
            width: 100%;
            padding-left: 0px;
        }

        .index_side li .image {
            width: 100%;
        }

        .image_index_grid {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .image_index_grid li:hover {}

        .image_grid {

            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .image_grid li:hover {}

        #banner_video,
        #banner_image {
            height: 180px;
        }

        #top_logo {
            float: none;
            padding-bottom: 10px;
            position: relative;
            left: auto;
            top: auto;
            width: 100%;
            text-align: center;
        }

        #top_contact {
            font-size: 16px;
            text-align: center;
        }

        #top_contact a {
            margin-left: 10px;
            font-size: 16px;
            white-space: nowrap;
        }


        .link_index, .link_index_icon {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .document_grid {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        #foot_cards img {
            width: 80%;
            height: auto;
        }

        #layout_footer ul li {
            width: 98%;
        }

        .icon_grid {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .infoboxes .infobox_container h3 {
            font-size: 28px;;
        }
    }

    @media (max-width: 380px) {
        #layout_footer #foot_menu li {
            width: 100%;
        }

        .image_index_grid {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .image_grid li {
            grid-template-columns: repeat(1, minmax(0, 1fr));
        }

        .image_grid li:hover {}
    }