/*
STYLESHEET INFORMATION

Name: Wiltshire Council - Skimmed version

Branding guidelines:

body-text-color: #0b0c0c;
link-color: #004331;
link-color-hover: #007253;
primary-color: #006851;
accent: #fff;
secondary-color: #004331;
secondary-text: #fff;
primary-button-color: #006851;
primary-button-text-color: #fff;
secondary-button-color: #4a4a4a
secondary-button-text-color: #0b0c0c;


Font-family: Noto Sans
Fall back font-family: Sans-serif

NOTE: The font is currently referenced via Google Fonts. If changed to reference locally, apply 'Noto Sans Regular' and Noto Sans Bold'.

*/


/* Fonts */


@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,300;1,600;1,700&display=swap');

@font-face {
    font-family: "icons";
    src: url("./fonts/icons.woff") format("woff");
}

@font-face {
    font-family: "Noto Sans Regular";
    src: url("./fonts/Noto_Sans/ttf/NotoSans-Regular.ttf") format("woff");
    src: url("./fonts/Noto_Sans/woff/NotoSans-Regular.woff") format("woff");
}

@font-face {
    font-family: "Noto Sans Bold";
    src: url("./fonts/Noto_Sans/ttf/NotoSans-Bold.ttf") format("ttf");
    src: url("./fonts/Noto_Sans/woff/NotoSans-Bold.woff") format("woff");
    
}


/* Fonts end */




/* Styles below cover the main styles required to align with the Wiltshire Council styling. */

/* There should be no need to edit these although in some cases some styles from Global styles can be removed. Focus states must remain. */

/* Not all rules will apply as these styles are in the context of other features */

/* There's also Component styles for GDS rules delcared but these can be removed or applied to the apprppriate selectors */

/* Global styles */



html {
    width: 100%;
}

html,
body {
    font-family: 'Noto Sans', sans-serif;
    margin: 0;
}


::after,
::before {
    font-family: "icons", sans-serif;
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    vertical-align: middle;
    font-variant: normal;
    text-transform: none;
    line-height: 1.2em;
    font-size: 100%;
}

.govuk-width-container {
    position: relative;
    box-sizing: border-box;
    display: flex;
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 20px;
    clear: both;
    flex-direction: column;
    justify-content: space-between;
}

@media (max-width: 1024px) {
    .govuk-width-container {
        padding: 0 20px;
    }

}


.accessibility {
    display: flex;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    background: #fff
}

p,
h1,
h2,
h3,
h4 {
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    clear: left;
}

h1 {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 0.5em;
    font-family: 'Noto Sans', sans-serif;
    /* font-family: Noto Sans Bold, sans-serif; */
}

h2 {
    font-size: 1.8rem;
    font-weight: 700;
    padding: 0; 
    margin: 1em 0 .5em 0; 
    line-height: 1.11111;
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
    
}

h3 {
    font-size: 1.6rem;
    font-weight: 700;
    padding: 0; 
    margin: 1em 0 .5em 0; 
    line-height: 1.11111; 
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
}

h4 {
    font-size: 1.4rem;
    font-weight: 700;
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
}

h5, h6 { 
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0; 
    margin: 1em 0 .5em 0; 
    line-height: 1.11111; 
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
 } 

p {
    margin: 20px 0;
    font-size: 1rem;
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Regular, sans-serif; */
}

a:focus,
button:focus {
    outline: 3px solid transparent ;
    color: #0b0c0c;
    background-color: #fd0;
    box-shadow: 0 -3px #fd0, 0 4px #0b0c0c;
    text-decoration: none;
    outline-offset: -2px;
    z-index: 20;
}


a.gi-sitenav__link--lvl1:focus {
    box-shadow: inset 0 -4px #0b0c0c;
}

.wc-sitelogo .wc-sitelogo-link:focus {
    box-shadow: 0 0 #fd0, 0 4px #0b0c0c;
}

.wc-sitelogo .wc-sitelogo-link:focus .wc-sitelogo-image {
    filter: invert(1);
}

.wc-nav-menu-toggle:focus {
    outline: 3px solid #fd0;
    outline-offset: -4px;
}

.imagelink--footerlogo:focus {
    outline: 3px solid transparent;
    color: #0b0c0c;
    background-color: #fd0;
    text-decoration: none;
    border-bottom: 2px solid #fd0;
}

.imagelink--footerlogo:focus img {
    filter: invert(1);
}

a:focus .imagelink-image {
    filter: invert(1);
}

.nav-menu a:hover:focus {
    color: #007253;
}

.header__nav a:hover:focus {
    color: #007253;
}

.footer-navitem a:hover:focus {
    color: #007253;
}


/* Global styles end */

.sis-loader {
    max-width: 150px;
}

/* Header styles */


@media (max-width: 1024px) {


        .toputils-nav  {
          transition: max-height .5s ease;
          max-height: 0;
          overflow: hidden;
          padding-top: 40px;
          background: #004331;
        }
        .toputils-nav.expanded  {
          max-height: 406px; /* This may need to be increased depending on number of items in the mobile nav*/
          transition: max-height .5s ease;
        }

        .mob-nav-list-container {
            background: #004331;
            padding: 0 14px;
            box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
        }

    .wc-nav-menu-toggle:focus {
        outline: #fd0 solid 3px;
        outline-offset: -4px;

    }

    .responsive .toputils-nav .toputils-nav-list {
        display: block;
        padding: 14px 0 14px 0;
    }

    .responsive .header-nav-menu-toggle {
        border-top: 1px solid #666;
        display: block;
        padding: 14px 0 14px 0;
    }


    .topnav .govuk-width-container {
        display: block;
    }


    .nav-div-bar {
        padding: 0px;
    }

    .nav-menu a {
        line-height: 1;
        font-size: 1rem;
    }

    .nav-menu.responsive .wc-nav-menu-toggle {
        position: absolute;
        right: 0;
        top: 0;
        padding: 2px 4px 6px 4px;
    }

    .nav-menu.responsive a {
        float: none;
        display: block;
        text-align: left;
        padding: 10px 0px 10px 5px;
    }

    .nav-menu a {
        display: none;
    }

    .nav-menu .wc-nav-menu-toggle {
        color: white;
        float: right;
        display: block;
        padding: 4px;
    }

    #wc-nav-menu {
        margin-left: -20px;
        margin-right: -20px;
    }

    .wc-nav-menu-toggle {
        display: block;
        position: relative;
        cursor: pointer;
        right: 0;
        top: 0;
        width: 32px;
        height: 32px;

    }

    .wc-nav-menu-toggle-bar:first-child { 
        margin-top: 6px; 
    }

    .wc-nav-menu-toggle-bar {
        display: block;
        width: 20px;
        height: 4px;
        border-radius: 1px;
        margin: 4px auto;
        background-color: white;
        transition: all .5s ease-in-out;
    }

    .wc-nav-menu-toggle.active .wc-nav-menu-toggle-bar:nth-child(2) {
        opacity: 0;
    }

    .wc-nav-menu-toggle.active .wc-nav-menu-toggle-bar:nth-child(1) {
        transform: translateY(10px) rotate(135deg);
        background-color: #fff;
        border-radius: 1px;
        width: 20px;
        height: 4px;
        margin-top: 5px;
    }

    .wc-nav-menu-toggle.active .wc-nav-menu-toggle-bar:nth-child(3) {
        transform: translateY(-6px) rotate(225deg);
        background-color: #fff;
        border-radius: 1px;
        width: 20px;
        height: 4px;
    }


    .gi-sitenav__link--lvl1 {
        display: none;
    }

    .gi-sitenav__list {
        display: none;
    }


}

@media (min-width: 1025px) {

    .wc-sitelogo {
        width: auto;
    }


    .wc-nav-menu-toggle {
        visibility: hidden;
        display: none;
    }



    .header-nav-menu-toggle {
        display: none;
    }


    .toputils-nav-item {
        float: left;
        display: flex;
    }
    
    .account-manage-items {
        float: right;
        display: flex;
    }

    .toputils-nav-link {
        display: block;
        color: #fff;
        text-decoration: none;
        line-height: 2.5rem;
        font-size: 1rem;

    }


    .nav-menu a {
        line-height: 2.5rem;
    }


    .toputils-nav-item:first-child a {
        padding: 0 1em 0 0;
    }

    .toputils-nav-item:not(:first-child) .toputils-nav-link {
        padding: 0 1em;
    }

    .account-manage-link:not(:last-child) {
        padding: 0 1em;
    }

    .account-manage-link:last-child {
        padding-left: 1em;
    }
    


    .gi-sitenav__link--lvl1 {
        display: inline-block;
    }


    .gi-sitenav__link--lvl1::after {
        content: "\f107";
        margin-left: 12px;
        top: 46%;
        font-size: 1.85rem;
        position: absolute;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    .gi-sitenav--toplevel:first-child,
.gi-sitenav--toplevel:nth-child(2) {
    padding-right: 0;
}

.gi-sitenav--toplevel:nth-child(3) {
    margin-right: 1px;
}

    #site-search::after {
        content: "\e800";
    }


    .gi-sitenav__item--lvl1.active {
        background-color: #004331;
        color: white;
        outline: none;
        text-decoration: none;
        border-bottom: 0;
    }

    .gi-sitenav__item--lvl1 a:hover {
        color: white;
        text-decoration: underline;
    }

    .gi-sitenav__item--lvl1.active a:focus {
        color: #fff;
        box-shadow: none;
        border-bottom: solid 3px #004331;
        background: #004331;

    }
}

ul.toputils-nav-list {
    margin: 0;
}

#my-account-link {
    font-weight: bold;
}

#site-search-mob::after {
    content: "\e800";
    color: white;
    font-weight: 100;
    font-size: 24px;
}


.toputil-mob-search {
    display: inline-block;
    position: absolute;
    right: 45px;
    font-size: 22px;
    top: 0px;
}

#site-search-mob:focus::after {
    filter: invert(1);
}


@media (min-width: 1025px) {
    .toputil-mob-search {
        display: none;
    }
}


.nav-menu.responsive .wc-nav-menu-toggle {
    position: absolute;
    right: 0;
    top: 0;
}

.nav-menu.responsive a {
    float: none;
    display: block;
    text-align: left;
    padding-bottom: 10px;
}

nav {
    overflow: hidden;
}

.wc-head {
    background-color: #006851;
    display: block;
    width: 100%;

}

.wc-sitelogo {
    display: table;
}

.wc-sitelogo .wc-sitelogo-image {
    height: auto;
    max-width: 100%;
    padding: 22px 0;
    display: inline-block;
}

.wc-sitelogo .wc-sitelogo-image {
    width: 250px;
    float: left;
}

.wc-sitelogo .wc-sitelogo-link {
    display: inline-block;
}

.wc-sitelogo .wc-sitelogo-link {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}



.topnav {
    background-color: #004331;
    z-index: 1;
    position: relative;
    display: flex;
    justify-content: space-around;
}


.nav-menu a {
    color: #fff;
    text-decoration: none;
    font-size: 1rem;
}


.nav-menu a:hover {
    text-decoration: underline;
    color: white;
}



.topnav .govuk-width-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}



.nav-menu {
    overflow: hidden;
    display: contents;
    flex-direction: column;
    background-color: #fff;
    width: 100%;
    border-radius: 10px;
    text-align: center;

}


.mainnav,
.gi-sitenav--toplevel {
    float: right;
    opacity: 1;
}

.mainnav__lvl1,
.gi-sitenav__list--lvl1 {
    padding: 0;
    list-style: none;
    display: inline-block;
}

.mainnav__lvl2-item,
.gi-sitenav__item--lvl2 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    padding: 0 20px 0 30px;
}

.mainnav__lvl2-link,
.gi-sitenav__link--lvl2 {
    position: relative;
    display: block;
    text-decoration: none;
    font-size: 1.125rem;
    font-weight: normal;
}

.gi-sitenav__link--lvl1[aria-expanded="true"]::after {
    transform: translateY(-50%) rotate(180deg); 
  }

.gi-sitenav__list {
    color: #fff;
}


.nav-div-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
}



.header__nav {
    text-align: right;
    display: flex;
}

.gi-sitenav__link--lvl1 {
    padding: 20px 52px 30px 18px;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
    font-size: 1.125rem;
}

.gi-sitenav__list--lvl1 {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}

.gi-sitenav__item--lvl1:hover .gi-sitenav--lvl2 {
    display: block;
}

.gi-sitenav--lvl2 {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #fff;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
    z-index: 1;
}

.gi-sitenav__list--lvl2 {
    list-style: none;
    padding: 0;
    margin: 0;
}

.gi-sitenav__item--lvl2:not(:last-child) {
    padding: 10px;
}

.gi-sitenav__item--lvl2:last-child {
    border-bottom: none;
    grid-column: span 4;
    justify-content: center;
}

.gi-sitenav__list--lvl2 {
    display: none;
    position: absolute;
    top: 100%;
    background-color: white;
    border: 1px solid #ccc;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    z-index: 999;
}

.gi-sitenav__list--lvl2.active {
    display: flex;
}

.gi-sitenav__list {
    display: flex;
    flex-wrap: wrap;
    max-width: 400px;
}



.gi-sitenav__item {
    position: relative;
    list-style: none;
    display: inline-flex;
}


.gi-sitenav__item:not(:last-child) {
    padding: 0 20px 0 50px;
    margin: 0 0px 27px 0;
}


.gi-sitenav__link {
    text-decoration: none;
    color: white;
    display: block;
    text-align: left;
    width: 100%;
}

.gi-sitenav__item--viewall {
    width: 100%;
}

.gi-sitenav__link--viewall {
    background-color: #FF5733;
    color: white;
    border: none;
}

.gi-sitenav__list--lvl2 {
    display: none;
}

.gi-sitenav__list--lvl2.active {
    position: absolute;
    top: calc(100% + -16px);
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% + -41px);
    max-width: 1024px;
    background-color: #004331;
    border: solid 1px #004331;
    z-index: 99;
    padding: 36px 0px 0px 0px;
    display: grid;
    grid-template-columns: repeat(4, 2fr);
}


.gi-sitenav__item--lvl2:last-child .gi-sitenav__link {
    text-align: center;
    background: white;
    color: #006851;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    right: 5px;
    width: 50%;
    padding: 10px 12px;
    margin-bottom: 30px;
}

.gi-sitenav__item--lvl2:last-child .gi-sitenav__link:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,.2);
    color: #004331;
}

.gi-sitenav__item--lvl1.active .gi-sitenav__link--lvl1::after {
    content: "\f107";
    margin-left: 12px;
    top: 20%;
    font-size: 1.85rem;
    position: absolute;
    -webkit-transform: translateY(50%);
    -ms-transform: translateY(50%);
    transform: rotate(180deg)
}


a#site-search {                     
    padding: 8px 50px 42px 5px;
    margin-top: 10px;
}

a#site-search:hover {
    background: #004331;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
}


.gi-sitenav__link--lvl1#site-search::after {
    color: #fff;
    background-color: transparent;
    border: 0;
    position: absolute;
    font-size: 24px;
 
}

.gi-sitenav__list--lvl1 #site-search {
    position: relative;
    left: 0px;
}

.gi-sitenav--toplevel {
    margin-top: 4px;
    padding-right: 1px;
    margin-right: 0px;
}

#FeaturedNav1 .gi-sitenav__item--viewall {
    display: none;
}



.gi-sitenav__item--lvl1 .gi-sitenav__link--lvl1[aria-expanded="true"]:focus {
    background: #004331 !important;
    color: #fff !important;
    box-shadow: none;
    border-bottom: none;
}


/* Header styles end */




/* Footer styles */


@media (min-width: 1025px) {

    .d-flex {
        display: flex;
        align-items: center;

        .govuk-footer__inline-list {
            margin-bottom: 0;
            margin-left: 15px;
        }
    }

    .footer .container {
        position: relative;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        max-width: 1024px;
        margin: 0 auto;
        padding: 0 20px;
        clear: both;
    }

    .footer__left::after {
        content: url(https://www.wiltshire.gov.uk/image/11562/wiltshirefooterlogo/original.png);
        position: absolute;
        right: 20px;
        top: 0;
    }

  
    .footer__right {
        position: relative;
        width: 100%;
        float: right;
        padding-left: 20px;
        box-sizing: border-box;
    }

    .footer__left {
        float: left;
        width: 35%;
        margin: 0 10px 13px 20px;
    }

    .footer-navitem {
        float: left;
    }


    .footer-navitem:not(:last-child) {
        border-right: 1px solid #fff;
    }


    .footer__logo {
        text-align: left;
        margin: 7px 0px;
    }


    .footer-navlink {
        padding: 0 10px 0 0;
        text-align: left;
    }

     
    .footer-navitem:not(:first-child) {
        padding-left: 10px;
        text-align: left;
    }

    .imagelink--footerlogo .imagelink-image, .footer__logo .imagelink-image {
        display: none;
    }


    .footer__socialmedia {
        display: flex;
        text-align: left;
    }

    .footer__copyright {
        text-align: left;
     }

}

@media (max-width: 1024px) {

    .footer-navlink {
        padding: 10px 0;
    }

    .footer .govuk-width-container {
       display: flex;
    }

    .footer--logo {
        padding: 50px 14px 20px 14px;
    }

    .footer-socialmedia {
        display: flex;
        justify-content: center;
        text-align: center;
        margin-left: 20px;
        margin-bottom: 20px
    }

    .footer-copyright {
       text-align: center;
    }

    .footer__left {
        flex-direction: column-reverse;
        display: flex;
    }

    .footer__logo {
      margin: 0 auto 20px auto;
    }

}

.footer-navigation>ul {
    list-style: none;
    padding: 0;
}

.footer {
    background: #006851;
    padding-top: 30px;
    display: block;
}

.footer--logo {
    overflow: hidden;
    padding: 50px 14px 20px 14px;
    color: white;
    margin-top: 0;
}

.footer__logo {
    display: block;
    text-align: center;
    max-width: 100%;
}


.footer-navigation {
    padding: 0 0 20px 0;
}

.footer-copyright {
    clear: both;
    font-weight: 700;
}

.footer-navlink {
    color: #fff;
    font-weight: 400;
}

.footer-navlink {
    text-decoration: none;
    display: block;
    text-align: center;
}


.imagelink-socialmedia .imagelink-link {
    display: flex;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    margin-right: 24px;
}


.copyright-container {
        position: relative;
        box-sizing: border-box;
        display: flex;
        width: 100%;
        max-width: 1024px;
        margin: 0 auto;
        padding: 0 20px;
        clear: both;
        flex-direction: column;
        justify-content: space-between;
}

.copyright-container p { 
    margin-top: 1.15rem; 
}

.copyright-container p::before {
    content: '\00A9';
    font-size: 16px;
  }

a:hover, a:focus {
    color: #007253;
}

.footer-navlink:hover {
    color: #fff;
    text-decoration: underline;
}


/* Footer ends */



/* Component styles for GDS */


/* Headings and text */

h1, .govuk-heading-xl {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 0.5em;
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
}

h2, .govuk-heading-m {
    font-size: 1.8rem;
    font-weight: 700;
    padding: 0; 
    margin: 1em 0 .5em 0; 
    line-height: 1.11111; 
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
}

h3, .govuk-heading-s {
    font-size: 1.6rem;
    font-weight: 700;
    padding: 0; 
    margin: 1em 0 .5em 0; 
    line-height: 1.11111; 
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
}

h4 {
    font-size: 1.4rem;
    font-weight: 700;
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
}

h5, h6 { 
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0; 
    margin: 1em 0 .5em 0; 
    line-height: 1.11111; 
    font-family: 'Noto Sans', sans-serif;
   /* font-family: Noto Sans Bold, sans-serif; */
 } 

p, .govuk-body {
    margin: 20px 0;
    font-size: 1rem;
    font-family: 'Noto Sans', sans-serif;
    /* font-family: Noto Sans Regular, sans-serif; */
}

/* Links */

.govuk-link:link {
    color: #004331;
    text-decoration: underline;
}

.govuk-link:link:hover {
    color: #007253;
    text-decoration: underline;
}

.govuk-link:focus {
    background-color: #fd0;
    text-decoration: none;
    border-bottom: 2px solid #0b0c0c;
    box-shadow: 0 0 0 2px transparent;
    outline: 0;
    outline-offset: -2px;
}


/* Breadcrumbs */


.govuk-breadcrumbs {
    float: left;
    width: 100%;
    margin: 10px 0;
    padding: 10px 0;
    list-style: none;
}

.govuk-breadcrumbs__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.govuk-breadcrumbs__list-item {
    display: inline;
    margin-right: 10px;
}

.govuk-breadcrumbs__link {
color: #004331
}

.govuk-breadcrumbs__list-item:not(:last-child)::after {
    content: "\f105";
    margin-top: -4px;
    font-size: 1.25em;
    margin-left: 10px;
}


/* Lists */


.govuk-list.govuk-list--bullet {
    list-style: disc;
}

.govuk-list.govuk-list--bullet,
.govuk-list.govuk-list--number {
        padding: 0 0 0 40px;
        margin: 0 0 20px 0;
        overflow: hidden;
    }


/* Input fields - Form elements */ 

.govuk-label {
    font-size: 1rem;
    line-height: 1.31579;
    display: block;
    margin: 0 0 10px;
    font-weight: bold;
}

.govuk-input {
    border: 2px solid #767676;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.6;
    white-space: pre;
    height: unset;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    margin: 0 0 20px;
    margin: 0 0 20px;
}

.govuk-input:focus {
    outline: #fd0 solid 3px;
    outline-offset: 0;
    border: 2px solid #0b0c0c;
     box-shadow: inset 0 0 0 2px; 
    }

/* Text area styles */

.govuk-textarea {
    border: solid 2px #767676;
    width: 100%;
    padding: 10px;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.6;
    margin: 0 0 20px 0;
    box-sizing: border-box;
}

.govuk-textarea:focus {
    outline: #fd0 solid 3px;
    outline-offset: 0;
    border: 2px solid #0b0c0c;
     box-shadow: inset 0 0 0 2px; 
}



/* Hint styles */

.govuk-form-group .govuk-hint {
    position: relative;
    background-color: #efefef;
    padding: 1rem 2rem 1.4rem 5rem;
    display: block;
    color: #0b0c0c;
    margin: 0 0 25px 0;
}

.govuk-form-group .govuk-hint::before {
    content: "\e83a";
    display: inline-block;
    margin: -2px 5px 0 0;
    vertical-align: middle;
    font-weight: normal;
    position: absolute;
    font-size: 2.5rem;
    top: .5rem;
    left: 1.2rem;
    color: #0b0c0c;
}



/* Buttons - Form elements */ 

.govuk-button {
        font-weight: 600;
        padding: 12px 20px;
        letter-spacing: .6px;
        line-height: 1.6;
        font-size: 1rem;
        font-family: "Noto Sans", Arial, sans-serif;
        display: inline-block;
        position: relative;
        border: 2px solid transparent;
        border-radius: 0;
        color: #fff;
        background-color: #004331;
        -webkit-box-shadow: 0 2px 0 #003618;
        box-shadow: 0 2px 0 #003618;
        text-align: center;
        vertical-align: top;
        cursor: pointer;
        -webkit-appearance: none;
        margin: 0 0 20px;

    }

    .govuk-button:hover {
        color: #fff;
        background-color: #006851;
        border: 2px solid #006851;
    }

.govuk-button::before {
        display: block;
        position: absolute;
        top: -2px;
        right: -2px;
        bottom: -4px;
        left: -2px;
        background: 0 0;
    }       

    .govuk-button:focus {
        outline: transparent solid 3px;
        color: #000;
        background-color: #fd0;
        border: 2px solid #fd0;
        text-decoration: none;
        outline-offset: -2px;
        z-index: 1;
    }


    .govuk-button--secondary {
        background-color: #4a4a4a;
        color: #fff;
        border: 2px solid transparent;
        border-radius: 0;
        box-shadow: 0 2px 0 #000;
        font-weight: 600;
        padding: 12px 20px;
        letter-spacing: .6px;
        line-height: 1.6;
        position: relative;
        font-size: 1rem;
        cursor: pointer;
        -webkit-appearance: none;
        margin: 0 0 20px;
        font-family: "Noto Sans", Arial, sans-serif;
    }

    .govuk-button--disabled, .govuk-button[disabled=disabled], .govuk-button[disabled] {
        opacity: .81;
        background: #004331;
        margin: 0 0 20px;
        pointer-events: none;
    }


    .govuk-form-group .govuk-button {
        vertical-align: bottom;
        min-height: 40px;
        margin: 0px 20px 20px 0px;
    }



/* Fieldset - Form elements */     

.govuk-fieldset {
    border: 0;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

/* Legend - Form elements */     

.govuk-fieldset .govuk-fieldset__legend {
    border-bottom: 0 solid #e5e5e5;
    margin: 0;
}

.govuk-fieldset__legend {
    font-size: 1rem;
    font-weight: bold;
    margin: 0 0 20px 0;
    padding: 20px 0;
    width: 100%;
    position: relative;
}


/* Checkboxes - Form elements */ 

    .govuk-checkboxes__input {
        cursor: pointer;
        pointer-events: auto;
        width: 22px;
        height: 22px;
        margin: 10px 10px;
        border-radius: 0px;
        position: relative;
    }
    
    
    .govuk-checkboxes__input:before {
        position: relative;
        display: block;
        top: auto;
        width: 34px;
        height: 34px;
        right: 8px;
        border: 2px solid black;
        content: "";
        background: #FFF;
    }
    
    
    .govuk-checkboxes__input:after {
        position: relative;
        display: block;
        top: -44px;
        width: 40px;
        height: 40px;
        content: "";
        background-repeat: no-repeat;
        background-position: center;
    }
    
    .govuk-checkboxes__input:checked:after {
        content: "";
        position: relative;
        border: solid;
        border-width: 0 0 5px 5px;
        background: transparent;
        border-top-color: transparent;
        width: 17px;
        height: 6px;
        z-index: 1;
        top: -27px;
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
        color: black;
        cursor: pointer;
        -moz-box-sizing: content-box;
        -webkit-box-sizing: content-box;
        box-sizing: content-box;
    }
    

    .govuk-checkboxes__item  {
        display: block;
        margin-bottom: 10px;
        padding: 0;
    }
    
    .govuk-checkboxes__label {
            display: inline-block;
            font-weight: normal;
            max-width: calc(100% - 25px);
            vertical-align: top;
            font-size: 1rem;
        }
    
    .govuk-checkboxes__input:disabled:after {
        -webkit-filter: opacity(0);
    }
    
    
    .govuk-checkboxes__input:focus:before {
        border-width: 4px;
        box-shadow: 0 0 0 3px #fd0;
        height: 30px;
        width: 30px;
    }
    
    .govuk-checkboxes__input:checked:focus {
        top: 0;
        left: 0;
        position: relative;
    }


/* Radio buttons - Form elements */ 


.govuk-radios__item {
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 0;
}

.govuk-radios__input {
    position: relative;
    width: 36px;
    height: 36px;
    opacity: 1;
    cursor: pointer;
    z-index: 99;
    appearance: none;
    top: 0;
    left: 0;
    flex-shrink: 0;
}

.govuk-radios__input:focus {
    outline: none;
    box-shadow: none;
}

.govuk-radios__label {
    display: inline-block;
    line-height: 36px;
    vertical-align: top;
    font-size: 1rem;
    font-weight: normal;
}

.govuk-radios__label::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 0;
    width: 36px;
    height: 36px;
    border: 2px solid #767676;
    border-radius: 50%;
    z-index: 0;
}

.govuk-radios__input:checked + .govuk-radios__label::after {
    content: "";
    position: absolute;
    top: 26px;
    transform: translateY(-50%);
    left: 6px;
    width: 24px;
    height: 24px;
    background: #333;
    border-radius: 50%;
    z-index: 3;
    border: 2px solid;
    opacity: 1;
}

.govuk-radios__input:focus+label::before {
    outline: 3px solid #fd0;
    outline-offset: 0;
    box-shadow: inset 0 0 0 2px;
    border: 2px solid #0b0c0c;
}

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;600;700&display=swap');html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,progress,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

audio:not([controls]) {
    display: none;
    height: 0
}

html {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

*,*:before,*:after {
    -webkit-box-sizing: inherit;
    -moz-box-sizing: inherit;
    box-sizing: inherit
}

a {
    color: #005EA5;
    text-decoration: underline
}

a:hover {
    color: #2B8CC4;
    cursor: pointer
}

button {
    font-size: 1rem
}

button:hover {
    cursor: pointer
}

button,input,optgroup,select,textarea {
    font-family: inherit
}

::placeholder {
    color: #767676;
    opacity: 1
}

:-ms-input-placeholder {
    color: #767676
}

::-ms-input-placeholder {
    color: #767676
}

a:focus,button:focus,input:focus,select:focus,textarea:focus,*[tabindex]:focus {
    outline: 2px solid #0064FF;
    outline-offset: 0;
    z-index: 1
}

h1 {
    font-size: 2.5rem;
    font-weight: bold
}

h2 {
    font-size: 1.5rem;
    font-weight: bold
}

h3 {
    font-size: 1.25rem;
    font-weight: bold
}

h4 {
    font-weight: bold
}

p,h1,h2,h3,h4 {
    margin: 0 0 20px 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word
}

small {
    font-size: .8rem
}

hr {
    margin: 20px 0;
    background-color: #fff;
    border: 1px inset
}

ul,ol {
    list-style: none
}

table,th,td {
    border: 1px solid #ccc;
    padding: 5px
}

th {
    background-color: #ddd;
    text-align: left
}

table p,table h1,table h2,table h3,table h4 {
    word-wrap: unset;
    overflow-wrap: unset;
    word-break: unset
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

figure {
    margin: 1em 40px
}

pre {
    white-space: pre-wrap
}

.accessibility,.hide {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    color: #000;
    background: #fff
}

.a-intro {
    margin: 10px 0;
    font-size: 1.3rem;
    font-weight: bold
}

.container {
    position: relative;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 20px;
    clear: both
}

.skip-link {
    height: 1px;
    width: 1px;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    overflow: hidden;
    position: absolute;
    top: 10px;
    left: 10px;
    background: #fff;
    border: 1px solid #ccc;
    line-height: 2;
    z-index: 10;
    display: block;
    padding: 5px
}

.skip-link:focus,.skip-link:active {
    height: auto;
    width: auto;
    clip: auto;
    margin: auto
}

.a-relimage img,.a-body__image {
    max-width: 100%;
    height: auto
}

.a-pagemodifieddate {
    margin: 0 0 20px 0;
    padding: 40px 0 0 0;
    clear: both;
    color: #333
}

@media print {
    .cookie-consent-prompt,.gi-feedback,.gi-breadcrumb {
        display: none
    }
}

*[data-resize-block-debug] {
    outline: solid 3px rgba(255,0,0,75%)
}

.a-body__link {
    position: relative
}

.a-body hr,.cke_editable hr {
    clear: both
}

.a-body ul,.cke_editable ul {
    padding: 0 0 20px 40px;
    list-style: disc;
    overflow: hidden
}

.a-body ol,.cke_editable ol {
    padding: 0 0 20px 40px;
    list-style: decimal;
    overflow: hidden
}

.a-body ul ul,.cke_editable ul ul,.a-body ol ol,.cke_editable ol ol {
    padding-bottom: 0
}

.a-body li,.cke_editable li {
    padding: 5px 0
}

.alignleft {
    text-align: left
}

.aligncenter {
    text-align: center
}

.alignright {
    text-align: right
}

.a-body caption,.cke_editable caption {
    text-align: left;
    padding: 0 5px 10px 5px;
    font-weight: bold;
    font-size: 1.1rem
}

.cke_editable .icm-blockinline[data-cke-realelement*="imageclass%3Dleft%"],.cke_editable .icm-blockinline[data-cke-realelement*="imageclass%3Dright%"],.cke_editable .icm-blockinline[data-cke-realelement*="imageclass%3Dcentre%"],.cke_editable .icm-blockinline[data-cke-realelement*="imageclass%3Dinline%"] {
    display: inline-block;
    width: 22px
}

.cke_editable .icm-blockinline[data-cke-realelement*="imageclass%3Dleft%"] {
    float: left
}

.cke_editable .icm-blockinline[data-cke-realelement*="imageclass%3Dright%"] {
    float: right
}

.cke_editable .icm-blockinline[data-cke-realelement*="imageclass%3Dcentre%"] {
    margin: 0 calc(50% - 11px)
}

.tablenoborder {
    border: 0
}

.tablenoborder td {
    border: 0 solid #fff
}

.tablenoborder th {
    border: 0 solid #fff;
    background: transparent
}

.tabledark {
    border: 0
}

.tabledark caption {
    padding: 0 10px 10px 10px
}

.tabledark td {
    border: 1px solid #fff;
    padding: 15px 10px
}

.tabledark th {
    background-color: #000;
    color: #fff;
    text-align: left;
    padding: 15px 10px
}

.tabledark tr:nth-child(even) {
    background-color: #d7d7d7
}

.tabledark tr:nth-child(odd) {
    background-color: #ededed
}

.tablelight {
    border: 0
}

.tablelight caption {
    padding: 0 10px 5px 10px
}

.tablelight td {
    border: 0;
    border-bottom: 1px solid #ccc;
    padding: 15px 10px
}

.tablelight th {
    border: 0;
    background-color: transparent;
    border-bottom: 2px solid #000;
    text-align: left;
    padding: 15px 10px
}

.tableprimary {
    border: 0
}

.tableprimary td {
    border: 1px solid #fff;
    padding: 15px 10px
}

.tableprimary th {
    background-color: #453853;
    color: #fff;
    text-align: left;
    padding: 15px 10px
}

.tableprimary tr:nth-child(even) {
    background-color: rgba(69,56,83,0.3)
}

.tableprimary tr:nth-child(odd) {
    background-color: rgba(69,56,83,0.1)
}

.tablesecondary {
    border: 0
}

.tablesecondary td {
    border: 1px solid #fff;
    padding: 15px 10px
}

.tablesecondary th {
    border: 1px solid #fff;
    background-color: #b8d138;
    text-align: left;
    padding: 15px 10px
}

.tablesecondary tr:nth-child(even) {
    background-color: rgba(184,209,56,0.3)
}

.tablesecondary tr:nth-child(odd) {
    background-color: rgba(184,209,56,0.1)
}

.tablehorizontal {
    border: 0
}

.tablehorizontal caption {
    padding: 0 0 5px 0
}

.tablehorizontal th {
    border: 0;
    background-color: transparent;
    padding: 10px 20px 10px 0;
    border-bottom: 1px solid #aaa;
    text-align: left;
    vertical-align: top
}

.tablehorizontal td {
    border: 0;
    padding: 10px 20px 10px 0;
    border-bottom: 1px solid #b1b4b6;
    text-align: left;
    vertical-align: top
}

.cke_editable .disclosurestart {
    display: block;
    margin: 0 0 10px 0;
    font-weight: bold;
    color: #0070ba;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: calc(100% - 20px);
    border-top: 2px solid #aaa
}

.cke_editable .disclosurestart::before {
    content: "Disclosure start";
    display: block;
    font-weight: bold;
    color: #000;
    margin: 0 0 10px 0;
    font-size: 14px;
    background-color: #e5e5e5;
    border-bottom: 1px solid #ccc;
    padding: 5px
}

.cke_editable .disclosureend {
    border-bottom: 2px solid #aaa;
    width: calc(100% - 20px);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.cke_editable .disclosureend::after {
    content: "Disclosure end";
    display: block;
    font-weight: bold;
    padding: 5px;
    background-color: #e5e5e5;
    margin: 10px 0 0 0;
    border-top: 1px solid #ccc;
    font-size: 14px
}

.gi-info {
    background-color: #efefef;
    padding: 10px;
    display: block;
    width: 100%;
    max-width: calc(100% - 20px)
}

p.gi-info--alert {
    background-color: #d4090e;
    color: #fff;
    text-decoration: none
}

.gi-info--alert a {
    color: #fff
}

p.gi-info--primary {
    background-color: #4b0a65;
    color: #fff;
    text-decoration: none
}

.gi-info--primary a {
    color: #fff
}

p.gi-info--secondary {
    background-color: #2e818c;
    color: #fff
}

p.gi-info--secondary a {
    color: #fff
}

.a-body blockquote,.cke_editable blockquote {
    background: #f1f1f1;
    border-left: 10px solid #aaa;
    margin: 20px 0;
    padding: 10px;
    quotes: "\201C""\201D"
}

.a-body blockquote::before,.cke_editable blockquote::before {
    display: inline-block;
    color: #aaa;
    content: open-quote;
    font-size: 6rem;
    line-height: 1rem;
    margin-right: 10px;
    vertical-align: text-bottom;
    transform: translateY(23px);
    font-family: sans-serif
}

.a-body blockquote p,.cke_editable blockquote p {
    display: inline
}

.grid {
    width: 100%;
    margin: 0
}

.grid:after {
    content: "";
    display: table;
    clear: both
}

.grid--center {
    text-align: center
}

.grid__cell {
    float: left;
    width: 100%;
    padding: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.grid--center .grid__cell {
    display: inline-block;
    float: none;
    vertical-align: top;
    margin: 0 -2px
}

.grid__cell--hide {
    display: none
}

.grid__cell:only-child {
    width: 100%
}

.grid__cellwrap {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.grid[data-grid-mincolwidth="150"]>.grid__cell {
    min-width: 150px
}

.grid[data-grid-mincolwidth="235"]>.grid__cell {
    min-width: 235px
}

.grid[data-grid-mincolwidth="246"]>.grid__cell {
    min-width: 246px
}

.grid[data-grid-mincolwidth="250"]>.grid__cell {
    min-width: 250px
}

.grid[data-grid-mincolwidth="280"]>.grid__cell {
    min-width: 280px
}

.grid[data-grid-mincolwidth="300"]>.grid__cell {
    min-width: 300px
}

.grid[data-grid-mincolwidth="500"]>.grid__cell {
    min-width: 500px
}

.grid--1col>.grid__cell {
    width: 100%;
    clear: both
}

.grid--2col>.grid__cell {
    width: 50%
}

.grid--2col>.grid__cell:nth-child(2n+1) {
    clear: both
}

.grid--3col>.grid__cell {
    width: 33.33%
}

.grid--3col>.grid__cell:nth-child(3n+1) {
    clear: both
}

.grid--4col>.grid__cell {
    width: 25%
}

.grid--4col>.grid__cell:nth-child(4n+1) {
    clear: both
}

.grid--5col>.grid__cell {
    width: 20%
}

.grid--5col>.grid__cell:nth-child(5n+1) {
    clear: both
}

.grid--6col>.grid__cell {
    width: 16.66%
}

.grid--6col>.grid__cell:nth-child(6n+1) {
    clear: both
}

.grid--7col>.grid__cell {
    width: 14.28%
}

.grid--7col>.grid__cell:nth-child(7n+1) {
    clear: both
}

.grid--8col>.grid__cell {
    width: 12.5%
}

.grid--8col>.grid__cell:nth-child(8n+1) {
    clear: both
}

.grid--9col>.grid__cell {
    width: 11.11%
}

.grid--9col>.grid__cell:nth-child(9n+1) {
    clear: both
}

.grid--10col>.grid__cell {
    width: 10%
}

.grid--10col>.grid__cell:nth-child(10n+1) {
    clear: both
}

.grid--11col>.grid__cell {
    width: 9.09%
}

.grid--11col>.grid__cell:nth-child(11n+1) {
    clear: both
}

.grid--12col>.grid__cell {
    width: 8.33%
}

.grid--12col>.grid__cell:nth-child(12n+1) {
    clear: both
}

@media screen and (max-width: 3020px) {
    .grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:9.09%
    }

    .grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1) {
        clear: both
    }
}

@media screen and (max-width: 2770px) {
    .grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:10%
    }

    .grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1) {
        clear: both
    }
}

@media screen and (max-width: 2520px) {
    .grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:11.11%
    }

    .grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1) {
        clear: both
    }
}

@media screen and (max-width: 2270px) {
    .grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:12.5%
    }

    .grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1) {
        clear: both
    }
}

@media screen and (max-width: 2020px) {
    .grid--8col[data-grid-mincolwidth="250"]>.grid__cell,.grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:14.28%
    }

    .grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1) {
        clear: both
    }
}

@media screen and (max-width: 1770px) {
    .grid--7col[data-grid-mincolwidth="250"]>.grid__cell,.grid--8col[data-grid-mincolwidth="250"]>.grid__cell,.grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:16.66%
    }

    .grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1) {
        clear: both
    }
}

@media screen and (max-width: 1520px) {
    .grid--6col[data-grid-mincolwidth="250"]>.grid__cell,.grid--7col[data-grid-mincolwidth="250"]>.grid__cell,.grid--8col[data-grid-mincolwidth="250"]>.grid__cell,.grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:20%
    }

    .grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1) {
        clear: both
    }
}

@media screen and (max-width: 1270px) {
    .grid--5col[data-grid-mincolwidth="250"]>.grid__cell,.grid--6col[data-grid-mincolwidth="250"]>.grid__cell,.grid--7col[data-grid-mincolwidth="250"]>.grid__cell,.grid--8col[data-grid-mincolwidth="250"]>.grid__cell,.grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:25%
    }

    .grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1) {
        clear: both
    }
}

@media screen and (max-width: 1020px) {
    .grid--4col[data-grid-mincolwidth="250"]>.grid__cell,.grid--5col[data-grid-mincolwidth="250"]>.grid__cell,.grid--6col[data-grid-mincolwidth="250"]>.grid__cell,.grid--7col[data-grid-mincolwidth="250"]>.grid__cell,.grid--8col[data-grid-mincolwidth="250"]>.grid__cell,.grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:33.33%
    }

    .grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--4col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--4col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1) {
        clear: both
    }
}

@media screen and (max-width: 770px) {
    .grid--3col[data-grid-mincolwidth="250"]>.grid__cell,.grid--4col[data-grid-mincolwidth="250"]>.grid__cell,.grid--5col[data-grid-mincolwidth="250"]>.grid__cell,.grid--6col[data-grid-mincolwidth="250"]>.grid__cell,.grid--7col[data-grid-mincolwidth="250"]>.grid__cell,.grid--8col[data-grid-mincolwidth="250"]>.grid__cell,.grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:50%
    }

    .grid--4col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--3col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(3n+1),.grid--4col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(4n+1),.grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(5n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(6n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(7n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(8n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(9n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(10n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(11n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(12n+1) {
        clear: none
    }

    .grid--3col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--4col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--5col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--6col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--7col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--8col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--9col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--10col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--11col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1),.grid--12col[data-grid-mincolwidth="250"]>.grid__cell:nth-child(2n+1) {
        clear: both
    }
}

@media screen and (max-width: 520px) {
    .grid--2col[data-grid-mincolwidth="250"]>.grid__cell,.grid--3col[data-grid-mincolwidth="250"]>.grid__cell,.grid--4col[data-grid-mincolwidth="250"]>.grid__cell,.grid--5col[data-grid-mincolwidth="250"]>.grid__cell,.grid--6col[data-grid-mincolwidth="250"]>.grid__cell,.grid--7col[data-grid-mincolwidth="250"]>.grid__cell,.grid--8col[data-grid-mincolwidth="250"]>.grid__cell,.grid--9col[data-grid-mincolwidth="250"]>.grid__cell,.grid--10col[data-grid-mincolwidth="250"]>.grid__cell,.grid--11col[data-grid-mincolwidth="250"]>.grid__cell,.grid--12col[data-grid-mincolwidth="250"]>.grid__cell {
        width:100%;
        clear: both
    }
}

.grid--12col>.grid__cell--cols2 {
    width: 16.66%
}

.grid--11col>.grid__cell--cols2 {
    width: 18.18%
}

.grid--10col>.grid__cell--cols2 {
    width: 20%
}

.grid--9col>.grid__cell--cols2 {
    width: 22.22%
}

.grid--8col>.grid__cell--cols2,.grid--12col>.grid__cell--cols3 {
    width: 25%
}

.grid--11col>.grid__cell--cols3 {
    width: 27.27%
}

.grid--7col>.grid__cell--cols2 {
    width: 28.56%
}

.grid--10col>.grid__cell--cols3 {
    width: 30%
}

.grid--6col>.grid__cell--cols2,.grid--9col>.grid__cell--cols3,.grid--12col>.grid__cell--cols4 {
    width: 33.33%
}

.grid--11col>.grid__cell--cols4 {
    width: 36.36%
}

.grid--8col>.grid__cell--cols3 {
    width: 37.5%
}

.grid--12col>.grid__cell--cols5 {
    width: 41.66%
}

.grid--5col>.grid__cell--cols2,.grid--10col>.grid__cell--cols4 {
    width: 40%
}

.grid--7col>.grid__cell--cols3 {
    width: 42.84%
}

.grid--9col>.grid__cell--cols4 {
    width: 44.44%
}

.grid--11col>.grid__cell--cols5 {
    width: 45.45%
}

.grid--4col>.grid__cell--cols2,.grid--6col>.grid__cell--cols3,.grid--8col>.grid__cell--cols4,.grid--10col>.grid__cell--cols5,.grid--12col>.grid__cell--cols6 {
    width: 50%
}

.grid--11col>.grid__cell--cols6 {
    width: 54.54%
}

.grid--9col>.grid__cell--cols5 {
    width: 55.55%
}

.grid--7col>.grid__cell--cols4 {
    width: 57.12%
}

.grid--12col>.grid__cell--cols7 {
    width: 58.33%
}

.grid--5col>.grid__cell--cols3,.grid--10col>.grid__cell--cols6 {
    width: 60%
}

.grid--8col>.grid__cell--cols5 {
    width: 62.5%
}

.grid--11col>.grid__cell--cols7 {
    width: 63.63%
}

.grid--3col>.grid__cell--cols2,.grid--6col>.grid__cell--cols4,.grid--9col>.grid__cell--cols6,.grid--12col>.grid__cell--cols8 {
    width: 66.66%
}

.grid--10col>.grid__cell--cols7 {
    width: 70%
}

.grid--7col>.grid__cell--cols5 {
    width: 71.4%
}

.grid--11col>.grid__cell--cols8 {
    width: 72.72%
}

.grid--4col>.grid__cell--cols3,.grid--8col>.grid__cell--cols6,.grid--12col>.grid__cell--cols9 {
    width: 75%
}

.grid--9col>.grid__cell--cols7 {
    width: 77.77%
}

.grid--5col>.grid__cell--cols4,.grid--10col>.grid__cell--cols8 {
    width: 80%
}

.grid--11col>.grid__cell--cols9 {
    width: 81.81%
}

.grid--6col>.grid__cell--cols5,.grid--12col>.grid__cell--cols10 {
    width: 83.33%
}

.grid--7col>.grid__cell--cols6 {
    width: 84.68%
}

.grid--8col>.grid__cell--cols7 {
    width: 87.5%
}

.grid--9col>.grid__cell--cols8 {
    width: 88.88%
}

.grid--10col>.grid__cell--cols9 {
    width: 90%
}

.grid--11col>.grid__cell--cols10 {
    width: 90.1%
}

.grid--12col>.grid__cell--cols11 {
    width: 91.66%
}

.grid--2col>.grid__cell--cols2,.grid--3col>.grid__cell--cols3,.grid--4col>.grid__cell--cols4,.grid--5col>.grid__cell--cols5,.grid--6col>.grid__cell--cols6,.grid--7col>.grid__cell--cols7,.grid--8col>.grid__cell--cols8,.grid--9col>.grid__cell--cols9,.grid--10col>.grid__cell--cols10,.grid--11col>.grid__cell--cols11,.grid--12col>.grid__cell--cols12 {
    width: 100%
}

.grid--2col>.grid__cell--cols2:nth-child(2n+1),.grid--3col>.grid__cell--cols2:nth-child(3n+1),.grid--4col>.grid__cell--cols2:nth-child(4n+1),.grid--4col>.grid__cell--cols3:nth-child(4n+1),.grid--5col>.grid__cell--cols2:nth-child(5n+1),.grid--5col>.grid__cell--cols3:nth-child(5n+1),.grid--5col>.grid__cell--cols4:nth-child(5n+1),.grid--6col>.grid__cell--cols2:nth-child(6n+1),.grid--6col>.grid__cell--cols3:nth-child(6n+1),.grid--6col>.grid__cell--cols4:nth-child(6n+1),.grid--6col>.grid__cell--cols5:nth-child(6n+1),.grid--7col>.grid__cell--cols2:nth-child(7n+1),.grid--7col>.grid__cell--cols3:nth-child(7n+1),.grid--7col>.grid__cell--cols4:nth-child(7n+1),.grid--7col>.grid__cell--cols5:nth-child(7n+1),.grid--7col>.grid__cell--cols6:nth-child(7n+1),.grid--8col>.grid__cell--cols2:nth-child(8n+1),.grid--8col>.grid__cell--cols3:nth-child(8n+1),.grid--8col>.grid__cell--cols4:nth-child(8n+1),.grid--8col>.grid__cell--cols5:nth-child(8n+1),.grid--8col>.grid__cell--cols6:nth-child(8n+1),.grid--8col>.grid__cell--cols7:nth-child(8n+1),.grid--8col>.grid__cell--cols2:nth-child(8n+1),.grid--8col>.grid__cell--cols3:nth-child(8n+1),.grid--8col>.grid__cell--cols4:nth-child(8n+1),.grid--8col>.grid__cell--cols5:nth-child(8n+1),.grid--8col>.grid__cell--cols6:nth-child(8n+1),.grid--8col>.grid__cell--cols7:nth-child(8n+1) .grid--9col>.grid__cell--cols2:nth-child(9n+1),.grid--9col>.grid__cell--cols3:nth-child(9n+1),.grid--9col>.grid__cell--cols4:nth-child(9n+1),.grid--9col>.grid__cell--cols5:nth-child(9n+1),.grid--9col>.grid__cell--cols6:nth-child(9n+1),.grid--9col>.grid__cell--cols7:nth-child(9n+1),.grid--9col>.grid__cell--cols8:nth-child(9n+1),.grid--10col>.grid__cell--cols2:nth-child(10n+1),.grid--10col>.grid__cell--cols3:nth-child(10n+1),.grid--10col>.grid__cell--cols4:nth-child(10n+1),.grid--10col>.grid__cell--cols5:nth-child(10n+1),.grid--10col>.grid__cell--cols6:nth-child(10n+1),.grid--10col>.grid__cell--cols7:nth-child(10n+1),.grid--10col>.grid__cell--cols8:nth-child(10n+1),.grid--10col>.grid__cell--cols9:nth-child(10n+1),.grid--11col>.grid__cell--cols2:nth-child(11n+1),.grid--11col>.grid__cell--cols3:nth-child(11n+1),.grid--11col>.grid__cell--cols4:nth-child(11n+1),.grid--11col>.grid__cell--cols5:nth-child(11n+1),.grid--11col>.grid__cell--cols6:nth-child(11n+1),.grid--11col>.grid__cell--cols7:nth-child(11n+1),.grid--11col>.grid__cell--cols8:nth-child(11n+1),.grid--11col>.grid__cell--cols9:nth-child(11n+1),.grid--11col>.grid__cell--cols10:nth-child(11n+1) .grid--12col>.grid__cell--cols2:nth-child(12n+1),.grid--12col>.grid__cell--cols3:nth-child(12n+1),.grid--12col>.grid__cell--cols4:nth-child(12n+1),.grid--12col>.grid__cell--cols5:nth-child(12n+1),.grid--12col>.grid__cell--cols6:nth-child(12n+1),.grid--12col>.grid__cell--cols7:nth-child(12n+1),.grid--12col>.grid__cell--cols8:nth-child(12n+1),.grid--12col>.grid__cell--cols9:nth-child(12n+1),.grid--12col>.grid__cell--cols10:nth-child(12n+1),.grid--12col>.grid__cell--cols11:nth-child(12n+1) {
    clear: none
}

@font-face {
    font-family: "icons";
    src: url('./resource/fonts/icons.eot?v=638324490780000000');
    src: url('./resource/fonts/icons.eot?v=638324490780000000#iefix') format('embedded-opentype'),url('./resource/fonts/icons.woff?v=638324490780000000') format('woff'),url('./resource/fonts/icons.ttf?v=638324490780000000') format('truetype'),url('./resource/fonts/icons.svg?v=638324490780000000#icons') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap
}

::after,::before {
    font-family: "icons",sans-serif;
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    vertical-align: middle;
    font-variant: normal;
    text-transform: none;
    line-height: 1.2em;
    font-size: 100%
}

.fa::after,.fa::before {
    font-family: "FontAwesome",sans-serif;
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    vertical-align: middle;
    padding: 0;
    font-variant: normal;
    text-transform: none;
    line-height: 1.2em;
    font-size: 100%
}

.btn {
    background-color: #e5e5e5;
    color: inherit;
    padding: 10px 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 10px 10px 0;
    font-size: 1rem;
    font-family: inherit;
    font-weight: bold;
    border: 0;
    position: relative;
    line-height: 1.5
}

.btn:hover,.btn:focus {
    cursor: pointer;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.btn--disabled,.btn[aria-disabled="true"],.btn[disabled] {
    color: #666;
    background-color: #e5e5e5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.btn--disabled:hover,.btn[aria-disabled="true"]:hover,.btn[disabled]:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: not-allowed;
    color: #666;
    background-color: #e5e5e5
}

.btn--contrast {
    background-color: #333;
    color: #fff
}

.btn--contrast:hover,.btn--contrast:focus {
    box-shadow: inset 0 0 20em rgba(0,0,0,0.8)
}

.btn--contrast.btn--disabled,.btn--contrast.btn[aria-disabled="true"],.btn--contrast.btn[disabled],.btn--contrast.btn--disabled:hover,.btn--contrast.btn[aria-disabled="true"]:hover,.btn--contrast.btn[disabled]:hover {
    color: #4a4a4a;
    background-color: #ccc;
    box-shadow: none
}

.btn--negative {
    background-color: #800f18;
    color: #fff
}

.btn--positive {
    background-color: #008000;
    color: #fff
}

.btn--progress {
    background-color: #FFB81B
}

.btn--fullwidth {
    width: 100%
}

.btn--link {
    background-color: transparent;
    padding: 0;
    color: #005ea5;
    text-decoration: underline;
    font-weight: normal
}

.btn--link:hover,.btn--link:focus {
    box-shadow: none;
    color: #2b8cc4
}

.btn--link.btn--error {
    color: #d20000;
    font-weight: bold;
    margin: 0
}

.btn--link.btn--error:hover {
    color: #920000
}

.btn--pill {
    border-radius: 1.5rem;
    border: 1px solid #666;
    background-color: #fff
}

.btn::before,.btn::after {
    position: absolute
}

.btn::before {
    top: calc(50% - 8px);
    left: 12px
}

.btn::after {
    top: calc(50% - 9px);
    right: 12px
}

.btn--back {
    padding-left: 35px
}

.btn--back::before {
    content: '\e826'
}

.btn--link.btn--back {
    padding-left: 20px
}

.btn--link.btn--back::before {
    left: 0
}

.btn--prev {
    padding-left: 35px
}

.btn--prev::before {
    content: '\e826'
}

.btn--forward {
    padding-right: 35px
}

.btn--forward::after {
    content: '\e827';
    top: calc(50% - 8px)
}

.btn--delete {
    padding-right: 35px
}

.btn--delete::after {
    content: '\e840'
}

.btn--alert {
    padding-left: 35px
}

.btn--alert::before {
    content: '\e83b'
}

.btn--cancel {
    padding-right: 35px
}

.btn--cancel::after {
    content: '\e840'
}

.btn--time {
    padding-right: 35px
}

.btn--time::after {
    content: '\e823'
}

.btn--filter {
    padding-right: 35px
}

.btn--filter::after {
    content: '\f0b0'
}

.btn--selected {
    padding-right: 35px
}

.btn--selected::after {
    content: '\e840'
}

.btn--search {
    padding-right: 35px
}

.btn--search::after {
    content: "\e800"
}

.btn--play::after {
    content: "\e830"
}

.btn--play {
    padding-right: 35px
}

.btn--pause::after {
    content: "\e82f"
}

.btn--pause {
    padding-right: 35px
}

.btn--stop::after {
    content: "\e82e"
}

.btn--stop {
    padding-right: 35px
}

.btn--complete::after {
    content: "\e80a"
}

.btn--complete {
    padding-right: 35px
}

.btn--home::after {
    content: "\e80e"
}

.btn--home {
    padding-right: 35px
}

.btn--update::after {
    content: "\e846";
    top: calc(50% - 9px)
}

.btn--update {
    padding-right: 35px
}

.btn--add::after {
    content: "\e807";
    top: calc(50% - 9px)
}

.btn--add {
    padding-right: 35px
}

.btn--remove::after {
    content: "\e866";
    top: calc(50% - 9px)
}

.btn--remove {
    padding-right: 35px
}

.btn--big-icon {
    padding: 15px 20px
}

.btn--big-icon::before {
    font-size: 200%;
    top: calc(50% - 17px)
}

.btn--big-icon::after {
    font-size: 200%;
    top: calc(50% - 19px)
}

.btn--big-icon.btn--back,.btn--big-icon.btn--alert,.btn--big-icon.btn--prev {
    padding-left: 54px
}

.btn--big-icon.btn--forward,.btn--big-icon.btn--delete,.btn--big-icon.btn--cancel,.btn--big-icon.btn--time,.btn--big-icon.btn--filter,.btn--big-icon.btn--selected,.btn--big-icon.btn--search,.btn--big-icon.btn--play,.btn--big-icon.btn--pause,.btn--big-icon.btn--stop,.btn--big-icon.btn--complete,.btn--big-icon.btn--home {
    padding-right: 54px
}

.btn--big-icon.btn--forward::after {
    top: calc(50% - 16px)
}

.btn--icon-only {
    padding: 10px 20px;
    min-height: 40px
}

.btn--icon-only.btn--big-icon {
    padding: 10px 20px;
    min-height: 60px
}

.btn--icon-only::before,.btn--icon-only::after,.btn--icon-only.btn--big-icon::before,.btn--icon-only.btn--big-icon::after {
    position: static;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    margin: 0;
    padding: 0
}

.btn--displaynone {
    display: none
}

.btn--edit {
    padding-right: 35px
}

.btn--edit::after {
    content: '\e816'
}

.btn--link:hover,.btn--link:focus {
    color: initial
}

.cta-link,.a-body__link--cta {
    background-color: #e6e6e6;
    color: inherit;
    padding: 10px 35px 10px 20px;
    box-sizing: border-box;
    margin: 0 10px 10px 0;
    font-size: 1rem;
    font-family: inherit;
    font-weight: bold;
    text-decoration: none;
    position: relative;
    display: inline-block
}

.cta-link:hover,.cta-link:focus,.a-body__link--cta:hover,.a-body__link--cta:focus {
    cursor: pointer;
    text-decoration: none;
    color: inherit;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.cta-link::after,.a-body__link--cta::after {
    content: '\e827';
    top: calc(50% - 8px)
}

.cta-link--contrast {
    background-color: #4a4a4a;
    color: #fff
}

.cta-link--contrast:hover,.cta-link--contrast:focus {
    box-shadow: inset 0 0 20em rgba(0,0,0,0.8);
    color: #fff
}

.cta-link--negative {
    background-color: #800f18;
    color: #fff
}

.cta-link--positive {
    background-color: #008000;
    color: #fff
}

.cta-link--negative:hover,.cta-link--negative:focus,.cta-link--positive:hover,.cta-link--positive:focus {
    -webkit-box-shadow: inset 0 0 20em rgba(0,0,0,0.5);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.5);
    color: #fff
}

.cta-link--progress {
    background-color: #ffb81b
}

.cta-link--fullwidth {
    width: 100%
}

.cta-link--disabled {
    color: #666;
    background-color: #e5e5e5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.cta-link--disabled:hover,.cta-link--disabled:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: not-allowed;
    color: #666;
    background-color: #e5e5e5
}

.cta-link--contrast.cta-link--disabled,.cta-link--contrast.cta-link--disabled:hover,.cta-link--contrast.cta-link--disabled:focus {
    color: #4a4a4a;
    background-color: #ccc
}

.cta-link::before,.cta-link::after,.a-body__link--cta::before,.a-body__link--cta::after {
    position: absolute
}

.cta-link::before,.a-body__link--cta::before {
    top: calc(50% - 8px);
    left: 12px
}

.cta-link::after,.a-body__link--cta::after {
    right: 12px
}

.cta-link--back {
    padding-left: 35px;
    padding-right: 20px
}

.cta-link--back::before {
    content: '\e826'
}

.cta-link--back::after {
    content: ''
}

.cta-link--forward {
    padding-right: 35px
}

.cta-link--forward::after {
    content: '\e827';
    top: calc(50% - 8px)
}

.cta-link--delete {
    padding-right: 35px
}

.cta-link--delete::after {
    content: '\e840'
}

.cta-link--alert {
    padding-right: 35px
}

.cta-link--alert::after {
    content: '\e83b'
}

.cta-link--cancel {
    padding-right: 35px
}

.cta-link--cancel::after {
    content: '\e840'
}

.cta-link--time {
    padding-right: 35px
}

.cta-link--time::after {
    content: '\e823'
}

.cta-link--filter {
    padding-right: 35px
}

.cta-link--filter::after {
    content: '\f0b0'
}

.cta-link--selected {
    padding-right: 35px
}

.cta-link--selected::after {
    content: '\e840'
}

.cta-link--search {
    padding-right: 35px
}

.cta-link--search::after {
    content: "\e800"
}

.cta-link--play::after {
    content: "\e830"
}

.cta-link--play {
    padding-right: 35px
}

.cta-link--pause::after {
    content: "\e82f"
}

.cta-link--pause {
    padding-right: 35px
}

.cta-link--stop::after {
    content: "\e82e"
}

.cta-link--stop {
    padding-right: 35px
}

.cta-link--complete::after {
    content: "\e80a"
}

.cta-link--complete {
    padding-right: 35px
}

.cta-link--home::after {
    content: "\e80e"
}

.cta-link--home {
    padding-right: 35px
}

.cta-link--add::after {
    content: "\e807";
    top: calc(50% - 9px)
}

.cta-link--add {
    padding-right: 35px
}

.cta-link--update::after {
    content: "\e846";
    top: calc(50% - 9px)
}

.cta-link--update {
    padding-right: 35px
}

.cta-link--remove::after {
    content: "\e866";
    top: calc(50% - 9px)
}

.cta-link--remove {
    padding-right: 35px
}

.cta-link--big-icon {
    padding: 15px 54px 15px 20px
}

.cta-link--big-icon::before {
    font-size: 200%;
    top: calc(50% - 17px)
}

.cta-link--big-icon::after {
    font-size: 200%;
    top: calc(50% - 19px)
}

.cta-link--big-icon.cta-link--back {
    padding-left: 54px;
    padding-right: 20px
}

.cta-link--big-icon.cta-link--forward,.cta-link--big-icon.cta-link--delete,.cta-link--big-icon.cta-link--cancel,.cta-link--big-icon.cta-link--time,.cta-link--big-icon.cta-link--filter,.cta-link--big-icon.cta-link--selected,.cta-link--big-icon.btn--play,.cta-link--big-icon.btn--pause,.cta-link--big-icon.btn--stop,.cta-link--big-icon.btn--complete,.cta-link--big-icon.btn--home {
    padding-right: 54px
}

.cta-link--big-icon.cta-link--search {
    padding-right: 54px
}

.cta-link--big-icon.cta-link--forward::after {
    top: calc(50% - 16px)
}

.cta-link--icon-only {
    padding: 10px 20px;
    min-height: 40px
}

.cta-link--icon-only.cta-link--big-icon {
    padding: 10px 20px;
    min-height: 60px
}

.cta-link--icon-only::before,.cta-link--icon-only::after,.cta-link--icon-only.cta-link--big-icon::before,.cta-link--icon-only.cta-link--big-icon::after {
    position: static;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    margin: 0;
    padding: 0
}

.cta-link--link {
    padding: 0 35px 0 0;
    background-color: transparent;
    color: #005ea5;
    text-decoration: underline;
    font-weight: normal
}

.cta-link--link:hover,.cta-link--link:focus {
    box-shadow: none
}

.cta-link--edit {
    padding-right: 35px
}

.cta-link--edit::after {
    content: '\e816'
}

dl {
    display: block;
    clear: both
}

dt {
    font-weight: bold;
    padding: 0 0 10px 0
}

dd {
    padding: 0 0 20px 0
}

dl ul {
    padding: 0 0 0 20px
}

dl li {
    padding: 0 0 10px 0
}

dl li:last-of-type {
    padding: 0
}

.block {
    width: 100%;
    clear: both;
    padding: 20px;
    margin: 0 0 20px 0;
    box-sizing: border-box;
    border: 1px solid #ccc
}

@media(max-width: 480px) {
    .block {
        padding:10px
    }
}

.block--muted {
    background-color: #f2f2f2
}

.block--contrast {
    background-color: #333;
    color: #fff
}

.block__heading {
    font-weight: bold;
    display: block;
    margin: 0;
    padding: 0;
    margin-bottom: 10px
}

.block__summary {
    margin: 0 0 20px 0
}

.block__summary:last-child {
    margin-bottom: 0
}

.block__summary p:last-child {
    margin-bottom: 0
}

.block__link--heading {
    font-weight: bold;
    font-size: 1.125rem;
    display: block
}

.block__link--list {
    display: block;
    position: relative;
    padding: 0 20px 10px 0
}

.block__link--default {
    display: inline-block;
    margin: 10px 0 0 0
}

.block__link--savedform {
    padding: 0 0 10px 0
}

.block__link:after {
    content: '\e827';
    font-size: 80%;
    padding: 0 0 0 10px
}

.block__link--list:after {
    position: absolute;
    right: 10px;
    top: 5px
}

.block__list {
    padding: 0;
    list-style: none
}

.block__item {
    display: block;
    padding-bottom: 10px
}

.block__item:last-child {
    padding-bottom: 0
}

.block .icmform {
    margin: 0;
    background-color: transparent
}

.block .icmform legend {
    font-size: 1.125em;
    font-weight: bold;
    margin: 0 0 20px 0;
    padding: 0 0 10px 0
}

.block .icmform label {
    font-weight: bold
}

.block .icmform .icmbuttongroup legend {
    font-weight: bold
}

.block__savedform+.block__savedform {
    padding: 20px 0 0 0;
    margin: 20px 0 0 0;
    border-top: 1px solid #ccc
}

.block__list--list .block__item {
    float: left;
    width: 50%;
    box-sizing: border-box;
    padding: 0 20px 10px 0
}

.block__list--list .block__item:nth-child(2n+1) {
    clear: left
}

.grid__cell--block {
    padding-right: 10px
}

.alert {
    position: relative;
    min-height: 48px;
    margin: 0 0 20px 0;
    padding: 10px 50px 10px 35px;
    border: 1px solid #31708f;
    color: #31708f;
    background-color: #d9edf7
}

.alert::before {
    content: "\e839";
    position: absolute;
    top: 12px;
    left: 10px;
    font-size: 1.2rem
}

.alert:has(.alert__title)::before {
    top: 18px
}

.alert a:hover,.alert a:focus {
    color: inherit
}

.alert--contrast {
    color: #fff;
    background-color: #005ea5;
    border-color: #005ea5
}

.alert--contrast a {
    color: #fff
}

.alert--contrast a:hover,.alert--contrast a:focus {
    color: #f9f9f9
}

.alert--success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #3c763d
}

.alert--success::before {
    content: "\e841"
}

.alert--contrast.alert--success {
    color: #fff;
    background-color: #2e7d32;
    border-color: #2e7d32
}

.alert--warn {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #8a6d3b
}

.alert--warn::before {
    content: "\e83c"
}

.alert--contrast.alert--warn {
    color: #000;
    background-color: #fff;
    border-color: #fff
}

.alert--contrast.alert--warn a {
    color: inherit
}

.alert--contrast.alert--warn a:hover,.alert--contrast.alert--warn a:focus {
    color: inherit
}

.alert--error {
    color: #a94442;
    background-color: #f2dede;
    border-color: #a94442
}

.alert--error::before {
    content: "\e838"
}

.alert--contrast.alert--error {
    color: #fff;
    background-color: #d50000;
    border-color: #d50000
}

.alert--info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #31708f
}

.alert--contrast.alert--info {
    color: #fff;
    background-color: #005ea5;
    border-color: #005ea5
}

.alert--none {
    color: #000;
    background-color: #f1f1f1;
    border-color: #ccc
}

.alert--contrast.alert--none {
    color: #fff;
    background-color: #333;
    border-color: #333
}

.alert .alert__title {
    font-size: 1.5rem;
    margin: 0 0 10px 0
}

.alert p {
    padding: 0;
    margin: 0
}

.alert p+p,.alert ul+p,.alert p+ul {
    padding-top: 10px
}

.alert ul {
    list-style: circle;
    padding: 0 0 0 20px
}

.alert li+li {
    padding: 5px 0 0 0
}

.alert .btn--cancel {
    position: absolute;
    margin: 0;
    top: 1px;
    right: 1px;
    min-width: 44px;
    min-height: 44px;
    background-color: transparent;
    color: inherit
}

.alert .btn--cancel:hover,.alert .btn--cancel:focus {
    box-shadow: none
}

.alert .btn--cancel::after {
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%,-50%);
    font-size: 1.2rem;
    transition: color .2s linear
}

.alert .btn--cancel:hover::after {
    color: #333
}

.alert.alert--contrast .btn--cancel:hover::after {
    color: #e5e5e5
}

.alert.alert--contrast.alert--warning .btn--cancel:hover::after,.alert.alert--contrast.alert--warn .btn--cancel:hover::after {
    color: #4a4a4a
}

.alert__close {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 20px;
    font-weight: 700;
    border: 0;
    background-color: inherit;
    color: inherit;
    padding: 0;
    cursor: pointer
}

.search-suggestion {
    text-align: left;
    cursor: default;
    border: 1px solid #ccc;
    border-top: 0;
    background: #fff;
    box-shadow: -1px 1px 3px rgba(0,0,0,.1);
    position: absolute;
    display: none;
    z-index: 9999;
    max-height: 200px;
    overflow: hidden;
    overflow-y: auto;
    box-sizing: border-box
}

.search-suggestion__item {
    position: relative;
    padding: 0 .6em;
    line-height: 23px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 1.02em;
    color: #333
}

.search-suggestion__item--selected {
    background: #ccc
}

.search-suggestion-wrapper {
    position: relative
}

.gi-accordion {
    margin: 20px;
    padding: 2px
}

.gi-accordion--focus {
    outline: 2px solid #0064ff;
    outline-offset: -2px
}

.gi-accordion__toggle,.gi-accordion__fallback {
    display: block;
    width: 100%;
    min-height: 54px;
    margin: 0;
    padding: .5rem 1.8rem .5rem 1rem;
    border: 0;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 2rem;
    text-align: left;
    text-decoration: none;
    color: #000;
    background-color: #e6e6e6;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer
}

.gi-accordion__toggle:hover,.gi-accordion__toggle:focus,.gi-accordion__fallback:hover,.gi-accordion__fallback:focus {
    background: #eee
}

.gi-accordion__toggle:focus,.gi-accordion__fallback:focus {
    outline-offset: -4px
}

.gi-accordion__toggle[aria-expanded],.gi-accordion__fallback--close {
    background: #fff
}

.gi-accordion__toggle[aria-expanded]:hover,.gi-accordion__toggle[aria-expanded]:focus,.gi-accordion__fallback--close:hover,.gi-accordion__fallback--close:focus {
    background: #eee
}

.gi-accordion__fallback:hover,.gi-accordion__fallback:focus {
    color: #000;
    text-decoration: none
}

.gi-accordion__toggle::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.gi-accordion__toggle::after,.gi-accordion__fallback::after {
    content: "\e807";
    position: absolute;
    right: .8rem;
    top: .8rem
}

.gi-accordion__toggle[aria-expanded]::after,.gi-accordion__fallback--close::after {
    content: "\e808"
}

.gi-accordion__toggle[aria-disabled]::after {
    display: none
}

.gi-accordion__panelheader,.gi-accordion__fallback {
    position: relative
}

.gi-accordion__panelsummary {
    padding: 10px 20px
}

.gi-accordion__panelcontent {
    padding: 20px
}

.gi-accordion__panelcontent .gi-accordion {
    margin: 0
}

.gi-accordion__fallback,.gi-accordion__panel:target .gi-accordion__fallback,.gi-accordion--nojs .gi-accordion__toggle,.gi-accordion--nojs .gi-accordion__panelcontent,.gi-accordion--nojs .gi-accordion__panel .gi-accordion__fallback--close,.gi-accordion--nojs .gi-accordion__panel:target .gi-accordion__fallback--open {
    display: none
}

.gi-accordion--nojs .gi-accordion__panel,.gi-accordion--nojs .gi-accordion__fallback,.gi-accordion--nojs .gi-accordion__panel:target .gi-accordion__panelcontent,.gi-accordion--nojs .gi-accordion__panel:target .gi-accordion__fallback--close {
    display: block
}

.gi-accordion__controls {
    text-align: right
}

.gi-accordion__toggleall {
    margin: 0;
    padding: 5px 10px;
    border: 0;
    background: 0
}

.gi-accordion__toggleall:focus {
    outline-offset: -4px
}

.gi-accordion__toggleall .gi-accordion__toggleall-closetext,.gi-accordion__toggleall[aria-expanded] .gi-accordion__toggleall-opentext {
    display: none
}

.gi-accordion__toggleall .gi-accordion__toggleall-opentext,.gi-accordion__toggleall[aria-expanded] .gi-accordion__toggleall-closetext {
    display: inline
}

.accordion {
    position: relative;
    box-sizing: border-box;
    width: 100%
}

.accordion+.accordion {
    margin: 20px 0 0 0
}

.accordion .accordion {
    margin: 20px 0 0 0
}

.accordion__title {
    margin: 0
}

.accordion__heading {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px;
    display: block;
    cursor: pointer;
    background-color: transparent;
    width: 100%;
    text-align: left;
    font-weight: bold;
    font-size: 1.1rem;
    font-family: inherit;
    color: inherit;
    border: 1px solid #ccc
}

.accordion__content {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px;
    border: 1px solid #ccc;
    border-top: 0;
    display: none
}

.accordion__content p {
    padding: 0;
    margin: 0
}

.accordion__content p+p {
    padding: 10px 0 0 0
}

.accordion__heading::after {
    position: absolute;
    right: 20px;
    top: 20px;
    display: block;
    text-align: center;
    -webkit-transform-origin: center center;
    -webkit-transition: all .5s;
    -o-transform-origin: center center;
    -o-transition: all .5s;
    transform-origin: center center;
    transition: all .5s;
    font-size: 1.1rem
}

.accordion__heading::after {
    content: "\e807"
}

.accordion--open .accordion__heading::after {
    -webkit-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg)
}

.accordion--close .accordion__heading::after,.accordion--open .accordion .accordion__heading::after {
    -webkit-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg)
}

.accordion--open .accordion--open .accordion__heading::after {
    -webkit-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg)
}

.card {
    border: 1px solid #ccc;
    position: relative;
    background-color: #fff
}

.grid--card {
    width: calc(100% + 20px);
    margin-left: -10px
}

.grid__cell--card {
    padding: 10px
}

.card__label {
    text-align: right
}

.card__labeltxt {
    display: inline-block;
    padding: 5px 10px;
    font-size: .9rem
}

.card__heading {
    padding: 20px 20px 10px 20px;
    margin: 0
}

.card__label+.card__heading {
    padding: 5px 20px 10px 20px
}

.card__link--heading {
    display: block;
    clear: both;
    color: inherit
}

.card__link--heading:before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 0
}

.card__content {
    padding: 0 20px 20px 20px
}

.card__summary {
    clear: both;
    width: 100%;
    display: block;
    margin: 0
}

.card__imagecontainer {
    padding: 0 0 10px 0
}

.card__list {
    padding: 0;
    list-style: none
}

.card h4 {
    margin: 0 10px
}

.card .nvp {
    margin: 10px 0 0 0
}

.card .nvp__label,.card .nvp__value {
    display: inline-block
}

.card .nvp__label {
    width: 90px
}

.card__actions {
    padding: 0 10px 10px 10px
}

.card .cta-link {
    margin: 10px 0 0 0;
    padding-left: 10px
}

.card__actions .cta-link:first-child {
    margin: 0
}

.card--selected {
    border-top: 5px solid #ffb81b
}

.card--selected .card__labeltxt {
    background-color: #ffb81b;
    color: #000
}

.card--selected .card__heading {
    margin-top: -20px;
    width: calc(100% - 75px)
}

.card--forms {
    padding-top: 4px;
    -webkit-box-shadow: 0 5px 10px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);
    box-shadow: 0 5px 10px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)
}

.card--forms.card--selected {
    padding-top: 0
}

.card--forms .card__label {
    position: relative;
    margin: 0
}

.card--forms .card__labeltxt {
    position: absolute;
    right: 0
}

.card--forms .card__heading {
    margin-top: 0;
    padding: 6px 10px 0 10px
}

.card--forms .card__content {
    padding: 10px
}

.card--forms .cta-link {
    margin: 0 10px 10px 0
}

.card--forms .cta-link--link {
    padding: 0 35px 0 0
}

.card--forms .card__actions .cta-link:first-child {
    margin: 0 10px 10px 0
}

.card--forms .nvp {
    margin: 0 0 10px 0;
    padding: 0
}

.card--forms .nvp__label,.card--forms .nvp__value {
    width: 100%
}

.card--forms .card__actions {
    padding: 10px 0 0 0;
    margin: 0 10px;
    border-top: 1px solid #ccc
}

.card--forms .card__actions .icmlink-surround {
    display: inline-block
}

.gi-carousel {
    position: relative;
    width: 100%;
    min-height: 50px;
    padding: 20px 0
}

.a-body .gi-carousel__list,.cke_editable .gi-carousel__list {
    padding: 0;
    list-style: none
}

.gi-carousel__slide,.a-body .gi-carousel__slide,.cke_editable .gi-carousel__slide {
    padding: 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.gi-carousel__slide[aria-hidden] {
    display: none
}

.gi-carousel[data-animate-fade="true"] .gi-carousel__slide--animate {
    animation: giCarouselFadeIn ease 1s;
    -webkit-animation: giCarouselFadeIn ease 1s;
    -moz-animation: giCarouselFadeIn ease 1s;
    -o-animation: giCarouselFadeIn ease 1s
}

@-webkit-keyframes giCarouselFadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-moz-keyframes giCarouselFadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-o-keyframes giCarouselFadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes giCarouselFadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes giCarouselFadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

.gi-carousel[data-animate-slide="true"] .gi-carousel__list {
    position: relative;
    overflow: hidden
}

.gi-carousel[data-animate-slide="true"] .gi-carousel__slide--animate {
    position: relative;
    z-index: 1;
    animation: giCarouselSlideInRight ease-in .5s;
    -webkit-animation: giCarouselSlideInRight ease-in .5s;
    -moz-animation: giCarouselSlideInRight ease-in .5s;
    -o-animation: giCarouselSlideInRight ease-in .5s
}

.gi-carousel[data-animate-slide="true"] .gi-carousel__list--backward .gi-carousel__slide--animate {
    animation: giCarouselSlideInLeft ease-in .5s;
    -webkit-animation: giCarouselSlideInLeft ease-in .5s;
    -moz-animation: giCarouselSlideInLeft ease-in .5s;
    -o-animation: giCarouselSlideInLeft ease-in .5s
}

.gi-carousel[data-animate-slide="true"] .gi-carousel__slide--previous[aria-hidden] {
    position: absolute;
    display: block;
    top: 0;
    width: 100%;
    z-index: 0;
    transform: translateX(-100%);
    visibility: hidden;
    animation: giCarouselSlideOutRight ease-in .5s;
    -webkit-animation: giCarouselSlideOutRight ease-in .5s;
    -moz-animation: giCarouselSlideOutRight ease-in .5s;
    -o-animation: giCarouselSlideOutRight ease-in .5s
}

.gi-carousel[data-animate-slide="true"] .gi-carousel__list--backward .gi-carousel__slide--previous[aria-hidden] {
    transform: translateX(100%);
    animation: giCarouselSlideOutLeft ease-in .5s;
    -webkit-animation: giCarouselSlideOutLeft ease-in .5s;
    -moz-animation: giCarouselSlideOutLeft ease-in .5s;
    -o-animation: giCarouselSlideOutLeft ease-in .5s
}

@-webkit-keyframes giCarouselSlideInRight {
    0% {
        transform: translateX(100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@-moz-keyframes giCarouselSlideInRight {
    0% {
        transform: translateX(100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@-o-keyframes giCarouselSlideInRight {
    0% {
        transform: translateX(100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@keyframes giCarouselSlideInRight {
    0% {
        transform: translateX(100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@-webkit-keyframes giCarouselSlideInLeft {
    0% {
        transform: translateX(-100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@-moz-keyframes giCarouselSlideInLeft {
    0% {
        transform: translateX(-100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@-o-keyframes giCarouselSlideInLeft {
    0% {
        transform: translateX(-100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@keyframes giCarouselSlideInLeft {
    0% {
        transform: translateX(-100%)
    }

    100% {
        transform: translateX(0%)
    }
}

@-webkit-keyframes giCarouselSlideOutRight {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(-100%);
        visibility: hidden
    }
}

@-moz-keyframes giCarouselSlideOutRight {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(-100%);
        visibility: hidden
    }
}

@-o-keyframes giCarouselSlideOutRight {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(-100%);
        visibility: hidden
    }
}

@keyframes giCarouselSlideOutRight {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(-100%);
        visibility: hidden
    }
}

@-webkit-keyframes giCarouselSlideOutLeft {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(100%);
        visibility: hidden
    }
}

@-moz-keyframes giCarouselSlideOutLeft {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(100%);
        visibility: hidden
    }
}

@-o-keyframes giCarouselSlideOutLeft {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(100%);
        visibility: hidden
    }
}

@keyframes giCarouselSlideOutLeft {
    0% {
        transform: translateX(0%);
        visibility: visible
    }

    100% {
        transform: translateX(100%);
        visibility: hidden
    }
}

.gi-carousel__controls {
    position: relative;
    margin: 0 20px
}

.gi-carousel--nojs .gi-carousel__controls {
    display: none
}

.gi-carousel__progressbar {
    position: absolute;
    display: none;
    top: 25%;
    left: 0;
    height: 50%;
    background-color: #e5e5e5;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent .625rem,#eee .625rem,#eee 1.25rem);
    background-size: 200% 200%;
    background-position: left;
    background-attachment: fixed;
    border-right: solid 10px #eee;
    z-index: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

@keyframes carouselprogress {
    100% {
        background-position: 100% 100%
    }
}

.gi-carousel__progressbar--active {
    display: block
}

.gi-carousel__play,.gi-carousel__previous,.gi-carousel__next {
    position: relative;
    display: inline-block;
    min-width: 44px;
    min-height: 44px;
    padding: 3px 6px;
    color: #000;
    background-color: #e5e5e5;
    border: solid 2px #000;
    z-index: 1
}

.gi-carousel__play[hidden],.gi-carousel__previous[hidden],.gi-carousel__next[hidden] {
    display: none
}

.gi-carousel__play:hover,.gi-carousel__play:focus,.gi-carousel__previous:hover,.gi-carousel__previous:focus,.gi-carousel__next:hover,.gi-carousel__next:focus {
    color: #fff;
    background: #000
}

.gi-carousel__previoustext,.gi-carousel__nexttext,.gi-carousel__play--paused .gi-carousel__playtext,.gi-carousel__play--playing .gi-carousel__pausetext {
    position: absolute;
    display: block;
    visibility: visible;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    overflow: hidden;
    color: #000;
    background: #fff
}

.gi-carousel__play--paused .gi-carousel__pausetext,.gi-carousel__play--playing .gi-carousel__playtext {
    display: none
}

.gi-carousel__play--paused::after {
    content: "\e830";
    top: calc(50% - 8px)
}

.gi-carousel__play--playing::after {
    content: "\e82f";
    top: calc(50% - 8px)
}

.gi-carousel__previous::after {
    content: "\e826";
    top: calc(50% - 8px)
}

.gi-carousel__next::after {
    content: "\e827";
    top: calc(50% - 8px)
}

.gi-carousel__linkswrapper {
    text-align: center
}

.gi-carousel--nojs .gi-carousel__linkswrapper {
    display: none
}

.gi-carousel__links,.a-body .gi-carousel__links,.cke_editable .gi-carousel__links {
    display: inline-block;
    margin: 0 auto;
    padding: 4px
}

.a-body .gi-carousel__links,.cke_editable .gi-carousel__links {
    list-style: none
}

.gi-carousel__itemlink {
    display: inline-block
}

.a-body .gi-carousel__itemlink,.cke_editable .gi-carousel__itemlink {
    padding: 0
}

.gi-carousel__itemlinkbtn {
    position: relative;
    min-width: 42px;
    min-height: 42px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    border: solid 2px #000;
    background-color: #e5e5e5
}

.gi-carousel__itemlinkbtn[hidden] {
    display: none
}

.gi-carousel__itemlinkbtn:hover,.gi-carousel__itemlinkbtn:focus {
    color: #fff;
    background-color: #000
}

.gi-carousel__itemlinkbtn--selected {
    color: #fff;
    background-color: #000;
    -webkit-border-radius: 0;
    border-radius: 0;
    font-weight: bold
}

.gi-carousel__itemlinkbtn--selected:hover,.gi-carousel__itemlinkbtn--selected:focus {
    background-color: #4a4a4a;
    border-color: #4a4a4a
}

.gi-carousel__itemlinkbtn:focus {
    outline: 0
}

.gi-carousel__itemlinkbtn:focus::before {
    content: "";
    display: block;
    position: absolute;
    top: -2px;
    right: -2px;
    bottom: -2px;
    left: -2px;
    box-shadow: 0 0 0 2px #0064ff;
    -webkit-border-radius: 50%;
    border-radius: 50%
}

.gi-carousel__itemlinkbtn--selected:focus::before {
    -webkit-border-radius: 0;
    border-radius: 0
}

.gi-carousel__itemlinkbtn::after {
    content: "";
    display: block;
    position: absolute;
    top: -4px;
    right: -4px;
    bottom: -4px;
    left: -4px
}

.datatable {
    max-width: 100%;
    overflow-x: auto;
    margin: 20px 0;
    position: relative
}

.datatable:last-child {
    margin-bottom: 0
}

.datatable__content {
    background-color: #fff;
    width: 100%
}

.datatable__content tr:nth-child(even) {
    background-color: #e5e5e5
}

.datatable__content tr[disabled="true"],.datatable__content tr[disabled="true"]:nth-child(even) {
    color: #4a4a4a;
    background-color: #f1f1f1;
    cursor: not-allowed
}

tr[disabled="true"] .datatable__heading:focus,tr[disabled="true"] .datatable__cell:focus {
    outline-color: #767676
}

.datatable__cell,.datatable__heading {
    position: relative;
    vertical-align: top;
    padding: 15px 10px;
    border: 1px solid #aaa;
    line-height: 1.5
}

.datatable__heading {
    background-color: #ccc;
    text-align: left
}

.datatable__sort {
    color: #003b67
}

.datatable__sort:hover,.datatable__sort:focus {
    color: #000
}

.datatable__heading--check,.datatable__cell--check {
    text-align: center;
    width: 30px;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.datatable__sort--desc::after {
    content: "\e828";
    padding-left: 5px
}

.datatable__sort--asc::after {
    content: "\e829";
    padding-left: 5px
}

.datatable__cell--date .nvp__date {
    display: block;
    text-align: right;
    margin: 0 0 10px 0
}

.datatable__cell--date .nvp__time {
    display: block;
    text-align: right
}

.datatable__check {
    position: absolute;
    cursor: pointer;
    left: 0;
    top: 0;
    width: 50px;
    height: 52px;
    z-index: 1;
    margin: 0;
    filter: alpha(opacity=0);
    opacity: 0
}

.datatable__label--checkbox {
    position: relative;
    display: block
}

.datatable__label--checkbox.accessibility {
    position: relative;
    clip-path: none;
    color: transparent;
    background: 0;
    height: 24px;
    width: 28px
}

.datatable__label--checkbox:hover,.datatable__label--checkbox::after:hover {
    cursor: pointer
}

.datatable__label--checkbox::before {
    content: "";
    border: 1px solid #999;
    background-color: #fff;
    width: 18px;
    height: 18px;
    position: absolute;
    top: 2px;
    left: 6px
}

.datatable__check:checked+.datatable__label--checkbox::after {
    content: "";
    border: solid;
    border-width: 0 0 4px 4px;
    background: transparent;
    border-top-color: transparent;
    width: 10px;
    height: 4px;
    position: absolute;
    top: 7px;
    left: 9px;
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    color: #333
}

.datatable__check:focus+.datatable__label::before {
    -webkit-box-shadow: 0 0 0 2px #0064ff;
    -moz-box-shadow: 0 0 0 2px #0064ff;
    box-shadow: 0 0 0 2px #0064ff
}

.datatable__heading:focus,.datatable__cell:focus {
    outline: 2px dotted #0064ff;
    outline-offset: -2px
}

.datatable__guidance {
    display: none
}

.dialog {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.7);
    overflow-y: auto;
    z-index: 998
}

@media print {
    .dialog {
        position: absolute;
        height: auto;
        min-height: 100%;
        overflow-y: unset
    }
}

.dialog--active {
    z-index: 999
}

.dialog--nojs,.dialog--hidden {
    display: none
}

.dialog--nojs:target,.dialog--hidden.dialog--nojs:target {
    display: block
}

.dialog__header {
    width: calc(100% - 30px)
}

.dialog__content {
    padding: 20px;
    box-sizing: border-box;
    width: calc(100% - 20px);
    top: 20px;
    position: relative;
    height: auto;
    margin: 0 auto;
    background: #fff;
    color: #000;
    vertical-align: middle;
    z-index: 999
}

.dialog__body {
    overflow: auto;
    max-height: calc(100% - 150px)
}

@media print {
    .dialog__body {
        overflow: visible;
        max-height: none
    }
}

.dialog__close,.dialog__closefallbackinner {
    position: absolute;
    color: #333;
    width: 40px;
    height: 40px;
    font-size: 20px;
    text-align: center;
    background-color: #fff;
    top: 0;
    right: 0;
    border: 0;
    z-index: 998
}

.dialog__closefallbackinner {
    z-index: 999
}

.dialog__close:before,.dialog__closefallbackinner:before {
    content: '\e809';
    line-height: 40px
}

.dialog__closefallback {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%
}

.dialog__closefallbackouter {
    position: relative;
    top: 20px;
    display: block;
    width: 100%;
    margin: 0 auto
}

.dialog__closefallback:before {
    content: " ";
    position: absolute;
    z-index: 997;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: default
}

.dialog__close:hover,.dialog__close:active,.dialog__close:focus,.dialog__closefallbackinner:hover,.dialog__closefallbackinner:active,.dialog__closefallback:focus .dialog__closefallbackinner {
    text-decoration: none;
    background: #333;
    color: #fff;
    cursor: pointer
}

.dialog__closefallback:focus {
    outline: 0
}

.dialog__closefallback:focus .dialog__closefallbackinner {
    outline: 2px solid #0064ff
}

.dialog__closefallback,.dialog--nojs .dialog__close {
    display: none
}

.dialog--nojs .dialog__closefallback {
    display: block
}

.dialog__image--fullwidth {
    max-width: 100%
}

.gi-disclosure__toggle,.gi-disclosure__fallback {
    display: block;
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 10px 20px;
    border: 0;
    font-size: 1rem;
    font-weight: bold;
    text-align: left;
    text-decoration: none;
    color: #000;
    background-color: #e6e6e6
}

.gi-disclosure__toggle {
    position: relative;
    padding: 10px 20px 10px 55px;
    cursor: pointer
}

.gi-disclosure__toggle[data-display-show-hide="true"] {
    padding: 10px 20px;
    background-color: transparent
}

.gi-disclosure__toggle--nojs {
    display: none
}

.gi-disclosure__toggle:hover,.gi-disclosure__toggle:focus {
    background: #eee;
    outline-offset: -2px
}

.gi-disclosure__toggle::after {
    content: "\e828";
    position: absolute;
    top: 12px;
    left: 20px
}

.gi-disclosure__toggle[aria-expanded="true"]::after {
    content: "\e829"
}

.gi-disclosure__toggle[data-display-show-hide="true"]::after {
    content: "";
    display: none
}

.gi-disclosure__fallback {
    display: none
}

.gi-disclosure--nojs .gi-disclosure__fallback {
    display: block
}

.gi-disclosure__show-hide-text {
    display: block;
    margin: 10px 0 0 0;
    color: #005ea5;
    font-size: initial
}

.gi-disclosure__show-hide-text::before {
    content: "\e828";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 5px 0 0;
    color: #000;
    background-color: #fff;
    border: solid 1px #000;
    border-radius: 50%;
    font-size: .75rem;
    text-align: center;
    line-height: 18px;
    vertical-align: top
}

.gi-disclosure__toggle:hover .gi-disclosure__show-hide-text::before,.gi-disclosure__toggle:focus .gi-disclosure__show-hide-text::before {
    color: #fff;
    background-color: #000
}

.gi-disclosure__toggle[aria-expanded="true"] .gi-disclosure__show-hide-text::before {
    content: "\e829";
    line-height: 16px
}

.gi-disclosure__content {
    padding: 20px
}

.cookiemessage[aria-hidden=true] {
    display: none
}

.cookiemessage {
    background-color: #333;
    overflow: hidden;
    padding: 20px;
    position: fixed;
    left: 0;
    bottom: 0;
    box-sizing: border-box;
    width: 100%;
    z-index: 3
}

.cookiemessage__message {
    margin: 0 0 20px 0;
    font-size: 1.125rem;
    color: #fff
}

.cookiemessage__buttons {
    text-align: right;
    margin-top: 20px
}

.cookiemessage--NoJSOrHidden {
    display: none
}

.cookiemessage .btn--cookiemessage {
    border: 2px solid #fff;
    padding: 8px 33px 8px 18px;
    margin: 0 0 0 20px
}

@media(max-width: 780px) {
    .cookiemessage__buttons {
        text-align:center
    }
}

@media(max-width: 580px) {
    .cookiemessage .btn,.cookiemessage .cta-link {
        width:100%
    }

    .cookiemessage .btn--cookiemessage {
        margin: 10px 0 0 0
    }
}

.item {
    position: relative
}

.item__title {
    display: block;
    clear: both
}

.item .item__link:before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 1
}

.item__content--hassublinks .item__link {
    position: relative;
    display: block
}

.item__content--hassublinks .item__link:before {
    top: -20px;
    right: -20px;
    bottom: -20px;
    left: -20px
}

.item .item__sublinks {
    z-index: 2;
    position: relative
}

.item__image {
    max-width: 100%;
    height: auto
}

.grid[data-grid-maxcols|="1"] .item__title {
    clear: none;
    display: inline
}

.gi-loader {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 0;
    border: 0;
    line-height: 45px;
    height: 25px;
    width: 25px;
    font-size: 1.1rem;
    display: inline-block;
    background-color: transparent;
    background-image: url('./resource/images/loading.gif?v=638324490780000000');
    background-repeat: no-repeat;
    background-size: 25px 25px;
    color: #666
}

.media-links__title {
    font-weight: bold;
    padding-top: .5em
}

.media-links__list {
    padding-top: .2em;
    padding-left: 1em
}

.media-link {
    display: inline-block;
    margin-left: 20px;
    vertical-align: top
}

.media-link[target='_blank']::after {
    content: "\f08e";
    padding-left: 5px;
    font-size: .75rem
}

.media-link__text {
    position: relative
}

.media-link__text::before {
    content: url('./resource/images/media/default.gif?v=638324490780000000');
    display: inline-block;
    position: absolute;
    width: 16px;
    height: 16px;
    top: 3px;
    left: -20px
}

.media-link--background .media-link__text::before,.media-link--image .media-link__text::before,.media-link--page_banner .media-link__text::before,.media-link--page_icon .media-link__text::before,.media-link--rollover_image .media-link__text::before {
    content: url('./resource/images/media/imageicon.gif?v=638324490780000000')
}

.media-link--excel .media-link__text::before {
    content: url('./resource/themes/_default/images/media/excelicon.gif?v=638324392340000000')
}

.media-link--javascript .media-link__text::before {
    content: url('./resource/images/media/javascripticon.gif?v=638324490780000000')
}

.media-link--pdf .media-link__text::before {
    content: url('./resource/images/media/pdficon.gif?v=638324490780000000')
}

.media-link--skin .media-link__text::before {
    content: url('./resource/images/media/skinicon.gif?v=638324490780000000')
}

.media-link--video .media-link__text::before {
    content: url('./resource/images/media/videoicon.gif?v=638324490780000000')
}

.media-link--word .media-link__text::before {
    content: url('./resource/images/media/docicon.gif?v=638324490780000000')
}

.media-link--zip .media-link__text::before {
    content: url('./resource/images/media/zipicon.gif?v=638324490780000000')
}

.media-link__newwindow {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    color: #000;
    background: #fff
}

.gi-menu--nojs {
    display: none
}

.gi-menu--nojs:target {
    display: block
}

.gi-menu__link {
    display: block;
    padding: .5rem
}

.gi-menu__link--closelink {
    border-top: solid 1px #ccc
}

.gi-menutoggle--nojs .gi-menutoggle__btn {
    display: none
}

.gi-menutoggle__btn,.gi-menutoggle__fallback {
    display: block
}

.gi-menutoggle__btn[aria-selected="true"] {
    background-color: #fff
}

.gi-body--mobilenavopen {
    overflow: hidden
}

.gi-mobilenav--closed,.gi-mobilenav--nojs {
    display: none
}

.gi-mobilenav--open,.gi-mobilenav--nojs:target {
    display: block
}

.gi-mobilenav__link {
    display: block;
    padding: .5rem
}

.gi-mobilenav__link--closelink {
    border-top: solid 1px #ccc
}

.gi-mobilenav[data-fullscreen="true"] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 1
}

.gi-mobilenavtoggle {
    position: relative;
    top: 4px;
    right: 4px
}

.gi-mobilenavtoggle--nojs .gi-mobilenavtoggle__btn {
    display: none
}

.gi-mobilenavtoggle__btn,.gi-mobilenavtoggle__fallback {
    position: absolute;
    display: block;
    width: 32px;
    height: 32px;
    top: 0;
    right: 0;
    border: 0;
    padding: 0;
    overflow: hidden;
    -webkit-transition: background-color .6s ease-in-out;
    -o-transition: background-color .6s ease-in-out;
    transition: background-color .6s ease-in-out;
    color: transparent;
    background-color: #000
}

.gi-mobilenavtoggle__mtcontainer {
    position: absolute;
    top: 0;
    left: 0
}

.gi-mobilenavtoggle__mtrotate {
    position: absolute;
    -ms-transform: translate(6px,6px);
    -webkit-transform: translate(6px,6px);
    transform: translate(6px,6px);
    -webkit-transition: -webkit-transform .3s ease-in-out;
    transition: -webkit-transform .3s ease-in-out;
    -o-transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out,-webkit-transform .3s ease-in-out
}

.gi-mobilenavtoggle__mt1,.gi-mobilenavtoggle__mt2,.gi-mobilenavtoggle__mt3 {
    display: block;
    width: 20px;
    height: 4px;
    background-color: #fff;
    border-radius: 1px;
    -webkit-transition: all .6s ease-in-out;
    -o-transition: all .6s ease-in-out;
    transition: all .6s ease-in-out
}

.gi-mobilenavtoggle__mt1 {
    position: absolute
}

.gi-mobilenavtoggle__mt2 {
    position: absolute;
    top: 8px
}

.gi-mobilenavtoggle__mt3 {
    position: absolute;
    top: 16px
}

.gi-mobilenavtoggle__mtrotate {
    height: 16px
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] {
    background-color: #fff
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mtrotate {
    -ms-transform: translate(10px,0) rotate(45deg);
    -webkit-transform: translate(10px,0px) rotate(45deg);
    transform: translate(10px,0px) rotate(45deg)
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt1 {
    background-color: #000;
    -ms-transform: translate(0px,7px) rotate(90deg);
    -webkit-transform: translate(0px,7px) rotate(90deg);
    transform: translate(0px,7px) rotate(90deg)
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt2 {
    background-color: #000;
    opacity: 0
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt3 {
    background-color: #000;
    -ms-transform: translate(0px,-9px) rotate(180deg);
    -webkit-transform: translate(0px,-9px) rotate(180deg);
    transform: translate(0px,-9px) rotate(180deg)
}

.gi-mobilenavtoggle__mtrotate--search {
    -ms-transform: translate(5px,5px);
    -webkit-transform: translate(5px,5px);
    transform: translate(5px,5px)
}

.gi-mobilenavtoggle__mt1--search {
    border-radius: 19px;
    width: 19px;
    height: 19px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.gi-mobilenavtoggle__mt2--search {
    background-color: #000;
    border-radius: 13px;
    width: 13px;
    height: 13px;
    top: 0;
    -ms-transform: translate(3px,3px);
    -webkit-transform: translate(3px,3px);
    transform: translate(3px,3px);
    z-index: 2;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.gi-mobilenavtoggle__mt3--search {
    width: 10px;
    height: 3px;
    top: 0;
    background-color: #fff;
    -ms-transform: translate(15px,18px) rotate(45deg);
    -webkit-transform: translate(16px,18px) rotate(45deg);
    transform: translate(15px,18px) rotate(45deg);
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mtrotate--search {
    -ms-transform: translate(5px,5px);
    -webkit-transform: translate(5px,5px);
    transform: translate(5px,5px)
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt1--search {
    border-radius: 1px;
    width: 20px;
    height: 4px;
    -ms-transform: translate(1px,9px) rotate(-45deg);
    -webkit-transform: translate(1px,9px) rotate(-45deg);
    transform: translate(1px,9px) rotate(-45deg)
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt2--search {
    opacity: 0;
    border-radius: 1px;
    width: 20px;
    height: 4px;
    -ms-transform: translate(1px,9px) rotate(-45deg);
    -webkit-transform: translate(1px,9px) rotate(-45deg);
    transform: translate(1px,9px) rotate(-45deg)
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt3--search {
    border-radius: 1px;
    width: 20px;
    height: 4px;
    -ms-transform: translate(1px,9px) rotate(45deg);
    -webkit-transform: translate(1px,9px) rotate(45deg);
    transform: translate(1px,9px) rotate(45deg)
}

.nvp__label,.nvp__value {
    vertical-align: top
}

.nvp__label {
    font-weight: bold
}

.paging {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 40px 0;
    list-style: none;
    clear: both;
    text-align: center
}

.paging[data-collapse-type='select'][data-collapsible='true'][data-collapsed='true'] {
    justify-content: space-between
}

@media(max-width: 780px) {
    .paging {
        padding:20px 0
    }
}

.paging__item {
    display: inline-block;
    font-weight: normal;
    margin: 10px 2px
}

.paging__link,.paging__text {
    display: inline-block;
    min-width: 44px;
    min-height: 44px;
    line-height: 1.6;
    font-size: inherit
}

.paging__link {
    background-color: #fff;
    border-radius: 2px;
    border: 1px solid #ccc;
    padding: 10px;
    transition: background-color .25s linear;
    text-decoration: none
}

.paging__link:hover,.paging__link:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: none
}

.paging__item--current {
    font-weight: bold
}

.paging__item--current .paging__text,.paging__item--disabled .paging__text {
    color: #767676;
    background-color: #fff;
    border-radius: 2px;
    padding: 10px;
    border: 1px solid #ccc;
    display: inline-block
}

@media(max-width: 780px) {
    .paging__item {
        margin:4px 2px
    }

    .paging__item--previous .paging__value,.paging__item--next .paging__value {
        display: block;
        visibility: visible;
        border: 0;
        clip: rect(0 0 0 0);
        clip: rect(0,0,0,0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
        color: #000;
        background: #fff
    }

    .paging__item--previous .paging__link::before,.paging__item--previous .paging__text::before,.paging__item--next .paging__link::before,.paging__item--next .paging__text::before {
        content: "\f104"
    }

    .paging__item--next .paging__link::before,.paging__item--next .paging__text::before {
        content: "\f105"
    }
}

@media(max-width: 640px) {
    .paging__item {
        margin:4px 0 4px -1px
    }

    .paging__item:first-child {
        margin-left: 0
    }

    .paging__item:focus-within {
        position: relative;
        z-index: 1
    }
}

.paging__item.paging__item--expand {
    display: none
}

.paging__item[aria-hidden='true'] {
    display: none
}

.paging[data-collapse-type='list'][data-collapsible='true'] .paging__item--expand {
    display: inline-block
}

.paging__link--expand {
    color: #005ea5
}

.paging__link--expand:hover,.paging__link--expand:focus {
    color: initial
}

.paging__link--expand::before {
    content: "\e875"
}

.paging[data-collapsed='false'] .paging__link--expand::before {
    content: "\e876"
}

.paging__item--first.paging__item--always-has-hidden::after,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--first.paging__item--has-hidden:not(.paging__item--current)::after {
    content: "\2026";
    padding: 0 2px 0 3px;
    font-family: inherit
}

.paging__item--last.paging__item--always-has-hidden::before,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--last.paging__item--has-hidden:not(.paging__item--current)::before {
    content: "\2026";
    padding: 0 3px 0 2px;
    font-family: inherit
}

@media(max-width: 640px) {
    .paging__item--first.paging__item--always-has-hidden::after,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--first.paging__item--has-hidden:not(.paging__item--current)::after {
        padding:0 5px 0 3px
    }

    .paging__item--last.paging__item--always-has-hidden::before,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--last.paging__item--has-hidden:not(.paging__item--current)::before {
        padding: 0 3px 0 6px
    }
}

@media(max-width: 350px) {
    .paging__item--first.paging__item--always-has-hidden,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--first.paging__item--has-hidden:not(.paging__item--current) {
        position:relative;
        padding-right: 10px
    }

    .paging__item--first.paging__item--always-has-hidden::after,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--first.paging__item--has-hidden:not(.paging__item--current)::after {
        position: absolute;
        right: 2px;
        bottom: 30%;
        padding: 0;
        font-size: xx-small
    }

    .paging__item--last.paging__item--always-has-hidden,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--last.paging__item--has-hidden:not(.paging__item--current) {
        position: relative;
        padding-left: 10px
    }

    .paging__item--last.paging__item--always-has-hidden::before,.paging[data-collapsible='true'][data-collapsed='true'] .paging__item--last.paging__item--has-hidden:not(.paging__item--current)::before {
        position: absolute;
        left: 2px;
        bottom: 30%;
        padding: 0;
        font-size: xx-small
    }
}

.paging__item.paging__item--select {
    display: none
}

.paging[data-collapse-type='select'][data-collapsible='true'] .paging__item--select {
    display: inline-block
}

.paging__select-label {
    display: inline-block;
    padding: 11px 10px
}

.paging__select {
    background-color: #fff;
    border-radius: 2px;
    border: 1px solid #ccc;
    padding: 14px 10px;
    transition: background-color .25s linear;
    text-decoration: none
}

.paging__select:hover,.paging__select:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: none
}

.panel {
    padding: 0 10px 10px 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc
}

.panel__heading {
    margin: 0
}

.panel__headingtext {
    font-weight: bold;
    font-size: 1.2rem;
    padding-bottom: .5rem;
    padding-top: .5rem
}

.panel__link {
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto
}

.pollform,.pollform__results {
    padding: 10px
}

.pollform__answer {
    margin: 20px 4px 20px 0
}

.pollform__button:hover {
    cursor: pointer
}

.pollform__button {
    background-color: #ccc;
    border: 0;
    padding: 7px 10px;
    margin: 5px 0 5px 0
}

.pollform__button:hover {
    background-color: #C3C3C3
}

.pollform__button--vote {
    background-color: #333;
    border: 0;
    padding: 7px 15px;
    color: #fff;
    margin: 5px 0 5px 0
}

.pollform__button--vote:hover {
    background-color: #000
}

.pollform__results--hidden,.pollform--hidden {
    display: none
}

.poll-results {
    margin: 20px 0
}

.poll-results__question {
    font-size: 1.1em;
    margin: 0 0 20px 0
}

.poll-results__answergroup {
    margin: 0 0 20px 0
}

.poll-results__answergroup:last-child {
    margin: 0
}

.poll-results__answer {
    display: block
}

.poll-results__answergroup--highlight .poll-results__answer,.poll-results__answergroup--highlight .poll-results__percent {
    font-weight: bold
}

.poll-results__vote {
    margin: 20px 0 0 0;
    height: 20px;
    display: inline-block;
    width: 80%
}

.poll-results__bar {
    background-color: #666;
    display: block
}

.poll-results__answergroup--highlight .poll-results__bar {
    background-color: #000;
    display: block
}

.poll-results__percent {
    display: inline-block;
    width: 18%;
    text-align: right
}

.pollform[aria-hidden="true"],.pollform__results[aria-hidden="true"],.poll-results[aria-hidden="true"] {
    display: none
}

.poll-results th {
    text-align: left;
    background: 0;
    padding: 5px 0
}

.poll-results tr {
    border-bottom: 1px solid #ccc
}

.poll-results .normal,.poll-results .highlight {
    border-bottom: 1px solid #ccc;
    background-color: #fff
}

.answer {
    width: 50%;
    padding: 20px 5px
}

.vote {
    width: 70%;
    padding-left: 5%;
    padding-right: 5%
}

.poll-results .highlight span {
    font-weight: bold
}

.poll-results .highlight .bar {
    background-color: #000
}

.bar {
    background-color: #666
}

.quote {
    position: relative;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    clear: both
}

.quote::before {
    color: #000;
    content: "\201c";
    display: block;
    font-size: 3em;
    left: 0;
    position: absolute;
    top: .1em
}

.quote__caption {
    padding-top: .5em;
    font-weight: bold
}

.quote__imagecontainer {
    float: right;
    margin: 1.0em
}

.dialog--session-expiry-notice .dialog__content {
    text-align: center
}

.dialog--session-expiry-notice .dialog__header {
    width: auto
}

.session-countdown {
    padding-bottom: 20px
}

.session-countdown-timer circle {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 1s linear;
    stroke: #0b0c0c;
    stroke-width: 18;
    fill: transparent
}

.session-countdown-timer .mask {
    stroke-width: 20;
    stroke: #ccc
}

.session-countdown-timer .time-remaining {
    font-size: 40px
}

.sitealert {
    background: #ffb81c;
    width: 100%;
    float: left;
    clear: both;
    padding: 10px 0
}

.sitealert__heading {
    font-size: 1.25em;
    font-weight: bold;
    vertical-align: middle;
    margin-right: 20px
}

.sitealert__content {
    padding: 10px 0
}

.sitealert__link {
    color: #000;
    font-weight: bold
}

.sitealert__link::after {
    content: " ... "
}

.gi-sitesearch__container::after {
    content: "";
    display: block;
    width: 100%;
    clear: both
}

.gi-sitesearch__closetoggle,.gi-sitesearch__searchfield {
    float: left
}

.gi-sitesearch__searchtoggle {
    float: right;
    width: 50px;
    height: 50px
}

.gi-sitesearch__closetoggle {
    display: none;
    width: 50px;
    height: 50px
}

.gi-sitesearch[data-collapsible='true'][data-collapsed='false'] .gi-sitesearch__closetoggle {
    display: block
}

.gi-sitesearch[data-collapsible='true'][data-collapsed='false'][data-suppress-closebtn='true'] .gi-sitesearch__closetoggle {
    display: none
}

.gi-sitesearch__searchfield,.gi-sitesearch[data-collapsible='true'][data-suppress-closebtn='true'] .gi-sitesearch__searchfield {
    position: relative;
    width: calc(100% - 50px);
    height: 50px
}

.gi-sitesearch[data-collapsible='true'] .gi-sitesearch__searchfield {
    width: calc(100% - 100px)
}

.gi-sitesearch[data-collapsible='true'] .gi-sitesearch__searchfield {
    display: none
}

.gi-sitesearch[data-collapsible='true'][data-collapsed='false'] .gi-sitesearch__searchfield {
    display: block
}

.gi-sitesearch[data-collapsible='true'][data-collapsed='true'][data-focus-open='true'] .gi-sitesearch__searchfield {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.gi-sitesearch__button {
    width: 50px;
    height: 50px;
    border: solid 1px #ccc;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.gi-sitesearch__button {
    margin: 0;
    padding: 0;
    font-size: 20px
}

.gi-sitesearch__button:focus {
    position: relative;
    z-index: 1
}

.searchform__inputtxt--sitesearch:focus {
    position: relative;
    z-index: 1
}

.gi-sitesearch__button--close {
    border-right: 0
}

.gi-sitesearch__button--close::after {
    content: "\e809"
}

.gi-sitesearch[data-suppress-closebtn='true'] .gi-sitesearch__button--close {
    display: none
}

.gi-sitesearch__button--search {
    border-left: 0
}

.gi-sitesearch[data-collapsible='true'][data-collapsed='true'] .gi-sitesearch__button--search {
    border-left: solid 1px #ccc
}

.gi-sitesearch--searchtemplate .gi-sitesearch__container {
    margin: 0 0 20px 0
}

.gi-sitesearch--searchtemplate .gi-sitesearch__searchfield,.gi-sitesearch--searchtemplate[data-collapsible='true'][data-suppress-closebtn='true'] .gi-sitesearch__searchfield {
    position: relative;
    width: calc(100% - 60px);
    height: 50px
}

.gi-sitesearch--searchtemplate[data-collapsible='true'] .gi-sitesearch__searchfield {
    width: calc(100% - 110px)
}

.gi-sitesearch--searchtemplate .gi-sitesearch__searchtoggle,.gi-sitesearch--searchtemplate .gi-sitesearch__button {
    width: 60px
}

.gi-sitelogo,.gi-sitelogo__link {
    display: inline-block;
    line-height: 0
}

.gi-sitelogo__titletext,.gi-sitelogo__extratext {
    line-height: normal
}

.gi-sitenav {
    position: relative
}

.gi-sitenav__heading {
    border-bottom: 1px solid #fff;
    padding-bottom: 20px;
    margin-bottom: 20px
}

.gi-sitenav__heading-link {
    color: #fff;
    text-decoration: none
}

.gi-sitenav__heading-link:hover,.gi-sitenav__heading-link:focus {
    color: #fff;
    text-decoration: underline
}

.gi-sitenav__list {
    background-color: #333;
    color: #fff;
    list-style: square;
    padding-left: 20px
}

.gi-sitenav__link {
    display: block;
    color: #fff;
    text-decoration: none;
    margin: 15px 0;
    font-size: 1rem
}

.gi-sitenav__link:hover,.gi-sitenav__link:focus {
    background-color: #333;
    color: #fff;
    text-decoration: underline
}

.gi-sitenav__link[aria-haspopup="true"] {
    padding-right: 50px;
    position: relative
}

.gi-sitenav__link[aria-haspopup="true"]::after {
    content: "\f107";
    margin-left: 12px;
    top: 50%;
    right: 0;
    font-size: 1.85rem;
    position: absolute;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.gi-sitenav__link[aria-expanded="true"] {
    background-color: #333
}

.gi-sitenav__link[aria-expanded="true"]::after {
    content: "\f106"
}

.gi-sitenav__list--lvl1 {
    padding: 0;
    display: inline-block;
    list-style: none;
    background-color: #4a4a4a
}

.gi-sitenav__item--lvl1 {
    float: left
}

.gi-sitenav__link--lvl1 {
    font-size: 1.125rem;
    display: block;
    padding: 20px;
    margin: 0;
    text-align: right;
    text-decoration: none
}

.gi-sitenav__link--lvl1:hover,.gi-sitenav__link--lvl1:focus {
    text-decoration: none
}

.gi-sitenav__link--lvl1[aria-haspopup="true"]::after {
    right: auto
}

.gi-sitenav--lvl2 {
    position: absolute;
    left: 0;
    right: 0;
    padding: 0 20px 20px 20px;
    overflow: hidden;
    z-index: 10;
    background-color: #333
}

.gi-sitenav__heading--lvl2 {
    padding: 20px;
    margin-bottom: 0
}

.gi-sitenav__list--lvl2 {
    display: block;
    list-style: none;
    padding: 0
}

.gi-sitenav__item--lvl2 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-left: 2px solid #fff;
    width: 25%;
    float: left;
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 20px
}

.gi-sitenav__item--lvl2:nth-child(4n+1) {
    clear: both;
    border-left: 0
}

.gi-sitenav__link--lvl2 {
    position: relative;
    display: block;
    margin: 0;
    text-decoration: none;
    font-size: 1.125rem;
    font-weight: bold
}

.gi-sitenav__link--lvl2:focus {
    outline-offset: -2px
}

.gi-sitenav--lvl3 {
    margin: 25px 0 0 0
}

.gi-sitenav__list--lvl3 {
    list-style: none;
    padding: 0
}

.gi-sitenav__link[aria-current="page"] {
    font-weight: bold
}

.gi-tabs__tablist {
    margin: 0 0 -1px 0
}

.gi-tabs--closed .gi-tabs__tablist {
    margin: 0
}

.gi-tabs__tab {
    margin: 0;
    padding: 10px 20px;
    border: solid 1px #ccc;
    border-bottom: 0;
    background: #e6e6e6
}

.gi-tabs__tab:hover,.gi-tabs__tab:focus {
    background: #eee
}

.gi-tabs__tab[aria-selected="true"] {
    background: #fff
}

.gi-tabs__panel {
    margin: 0;
    padding: 20px;
    border: solid 1px #ccc
}

.gi-tabs__fallback {
    display: inline-block;
    margin: 0;
    padding: 10px 20px;
    border: solid 1px #ccc;
    border-bottom: 0;
    background: #e6e6e6
}

.gi-tabs__fallback:hover,.gi-tabs__fallback:focus {
    background: #eee
}

.gi-tabs__tab:active {
    background: #fff
}

.gi-tabs--nojs .gi-tabs__panel {
    border-left: 0;
    border-right: 0;
    border-bottom: 0
}

.gi-tabs--nojs.gi-tabs--closed .gi-tabs__panel {
    display: none
}

.gi-tabs--nojs.gi-tabs--closed .gi-tabs__panel:target {
    display: block
}

.videoplayer {
    display: inline-block;
    margin: 0 0 20px 0
}

.videoplayer--left {
    float: left;
    margin: 0 20px 20px 0
}

.videoplayer--right {
    float: right;
    margin: 0 0 20px 20px
}

.videoplayer__video {
    background-color: #1a1a1a;
    max-width: 100%
}

.videoplayer__video--thumbnail {
    max-width: 150px;
    max-height: 150px
}

.videoplayer__video--standard {
    max-width: 400px;
    max-height: 400px
}

@media(max-width: 440px) {
    .videoplayer__video--standard {
        max-width:100%;
        max-height: 100%
    }
}

.btn--videotranscript {
    display: block;
    margin: 0 auto
}

.transcript__caption {
    position: relative
}

.transcript__captionspeaker {
    position: absolute;
    left: 0;
    width: 100px
}

.transcript__captiontext {
    padding-left: 100px
}

.gi-responsiveimage {
    margin: 10px;
    padding: 0
}

.gi-responsiveimage__fallback,.gi-responsiveimage__image {
    display: block;
    max-width: 100%;
    height: auto;
    max-height: 100%
}

.gi-responsiveimage__caption {
    display: block;
    margin: 10px 0 0 0;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto
}

.gi-responsiveimage__imagewrapper {
    display: block;
    line-height: 0;
    text-align: center;
    background-repeat: repeat
}

.gi-responsiveimage__imagewrapper--nojs {
    display: none
}

.gi-responsiveimage .gi-responsiveimage__image {
    opacity: 1;
    -webkit-transition: opacity 200ms ease-in;
    -moz-transition: opacity 200ms ease-in;
    -ms-transition: opacity 200ms ease-in;
    -o-transition: opacity 200ms ease-in;
    transition: opacity 200ms ease-in
}

.gi-responsiveimage--lazy .gi-responsiveimage__image,.gi-responsiveimage__imagewrapper--waiting .gi-responsiveimage__image {
    opacity: .1
}

.gi-responsiveimage--card {
    margin: 0
}

.gi-responsiveimage--card .gi-responsiveimage__imagewrapper {
    margin: 0 auto
}

.gi-responsiveimage--item {
    margin: 0 0 10px 0
}

.itemcounter {
    margin: 20px 0 0 0;
    padding: 20px 0 0 0;
    border-top: solid 1px #767676
}

.itemcounter:first-child {
    margin: 0;
    padding: 0;
    border-top: 0
}

.itemcounter::after {
    content: "";
    display: block;
    clear: both
}

@media(min-width: 600px) {
    .itemcounter__info {
        float:left;
        width: calc(100% - 220px)
    }
}

.itemcounter__labelheading,.itemcounter__labeltext {
    display: block
}

.itemcounter__labeltext {
    font-weight: normal
}

.itemcounter__pricetext {
    display: block;
    font-weight: bold;
    font-size: 1.5rem;
    text-align: center
}

@media(min-width: 600px) {
    .itemcounter__pricetext {
        font-size:1.25rem;
        text-align: left
    }
}

.itemcounter__number {
    margin: 10px 0 0 0;
    padding: 10px;
    border: solid 1px #767676;
    background-color: #fff;
    -webkit-border-radius: 32px;
    border-radius: 32px
}

.itemcounter__number::after {
    content: "";
    display: block;
    clear: both
}

@media(min-width: 600px) {
    .itemcounter__number {
        float:right
    }
}

.itemcounter__numberbutton {
    position: relative;
    float: left;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: solid 1px #767676;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background-color: #fff
}

.itemcounter__numberbutton:hover,.itemcounter__numberbutton:focus {
    color: #fff;
    background-color: #333
}

.itemcounter__numberbutton[disabled],.itemcounter__numberbutton[disabled]:hover,.itemcounter__numberbutton[disabled]:focus {
    color: #666;
    background-color: #e5e5e5;
    cursor: default
}

.itemcounter--nojs .itemcounter__numberbutton {
    display: none
}

.itemcounter__numberbutton--minus {
    margin: 0 5px 0 0
}

.itemcounter__numberbutton--minus::after {
    position: absolute;
    content: "\e808";
    font-size: 26px;
    top: 7px;
    left: 11px
}

.itemcounter__numberbutton--plus {
    margin: 0 0 0 5px
}

.itemcounter__numberbutton--plus::after {
    position: absolute;
    content: "\e807";
    font-size: 26px;
    top: 6px;
    left: 11px
}

.itemcounter__inputwrap {
    display: inline
}

.itemcounter__input,.icmform .itemcounter__input {
    float: left;
    width: calc(100% - 98px);
    height: 44px;
    padding: 10px 0;
    text-align: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: xx-large
}

.itemcounter--nojs .itemcounter__input,.icmform .itemcounter--nojs .itemcounter__input {
    width: 100%
}

@media(min-width: 600px) {
    .itemcounter__input,.icmform .itemcounter__input {
        width:100px
    }

    .itemcounter--nojs .itemcounter__input,.icmform .itemcounter--nojs .itemcounter__input {
        width: 196px
    }
}

.itemcounter__input[type='number'],.icmform .itemcounter__input[type='number'] {
    padding-left: 15px
}

.itemcounter__available {
    padding: 10px 0 0 0;
    text-align: center
}

@media(min-width: 600px) {
    .itemcounter__available {
        width:210px;
        float: right;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }
}

.gi-breadcrumb__list {
    margin: 0;
    padding: 0;
    list-style: none
}

.gi-breadcrumb__item {
    display: inline
}

.gi-breadcrumb__item:after {
    content: '>'
}

.gi-breadcrumb__item:last-of-type:after {
    content: none
}

.gi-feedback {
    margin: 60px 0 20px 0;
    clear: both
}

.gi-feedback__content::after {
    content: "";
    display: block;
    width: 100%;
    clear: both
}

.gi-feedback__heading {
    display: inline-block;
    margin: 0;
    padding: 0
}

.gi-feedback__actions {
    display: inline-block
}

@media(max-width: 780px) {
    .gi-feedback__actions {
        display:block;
        margin: 20px 0;
        padding: 0 0 20px 0;
        border-bottom: solid 1px #000
    }
}

.gi-feedback__link {
    display: inline-block
}

.gi-feedback__link:hover,.gi-feedback__link:focus {
    color: #000
}

.gi-feedback__link::after {
    display: none
}

.gi-feedback__link--yes,.gi-feedback__link--no {
    min-width: 68px;
    margin: 0 0 0 20px;
    padding: 10px 20px;
    text-align: center
}

@media(max-width: 780px) {
    .gi-feedback__link--yes {
        margin:0
    }
}

.gi-feedback__link--problem {
    float: right;
    margin: 0;
    padding: 10px 20px
}

@media(max-width: 780px) {
    .gi-feedback__link--problem {
        float:none
    }
}

.gi-feedback__thankyou {
    margin: 0;
    padding: 20px 0 0 0
}

.grid--authentication {
    width: calc(100% + 40px);
    margin-left: -20px
}

.grid__cell--authentication {
    padding: 20px
}

.loginform {
    border: 1px solid #ccc;
    padding: 0
}

.loginform__submitwrap {
    position: relative
}

.loginform__submit {
    width: 100%;
    cursor: pointer;
    margin: 0;
    border: 0;
    color: #fff;
    padding: 20px 40px 20px 80px;
    text-decoration: none;
    display: block;
    box-sizing: border-box;
    background: #333 no-repeat 24px 50%;
    font-size: 1.1rem;
    font-family: inherit;
    font-weight: bold;
    white-space: normal;
    text-align: left
}

.loginform__submit:hover,.loginform__submit:focus {
    box-shadow: inset 0 0 20em rgba(0,0,0,0.15);
    text-decoration: none
}

.loginform__submit--icmsiteuser {
    padding: 20px 40px;
    text-align: center
}

.loginform__submit--amazon {
    background-color: #fcdd88;
    color: #111;
    background-position: 20px 50%;
    background-image: url(/images/auth/amazon.png)
}

.loginform__submit--google {
    background-color: #fff;
    color: #757575;
    background-image: url(/images/auth/google.png)
}

.loginform__submit--facebook {
    background-color: #4267b2;
    background-position: 26px 50%;
    background-image: url(/images/auth/facebook.png)
}

.loginform__submit--twitter {
    background-color: #0e7ab9;
    color: #fff;
    background-image: url(/images/auth/twitter.png)
}

.loginform__submit--linkedin {
    background-color: #005582;
    background-image: url(/images/auth/linkedin.png)
}

.loginform__submit--paypal {
    background-color: #fff;
    background-image: url(/images/auth/paypal.png);
    color: #0072c6
}

.loginform__submit--mygovscot {
    padding-left: 176px;
    background-color: #fff;
    background-image: url(/images/auth/mygovscot.png);
    background-position: 14px 50%;
    color: #0065bd
}

.loginform__submitwrap--openid::before,.loginform__submitwrap--saml2::before,.loginform__submitwrap--verify::before {
    content: "\e810";
    color: #fff;
    position: absolute;
    top: 15px;
    left: 24px;
    font-size: 1.75rem
}

.loginform__submit--adfs {
    background-color: #fff;
    background-image: url(/images/auth/adfs.png);
    color: #0e7ab9
}

.loginform__pwrap--icmsiteuser {
    padding: 20px
}

.loginform__pwrap--icmsiteuser h2 {
    font-size: 1.2rem
}

.loginform__pwrap--icmsiteuser span {
    display: block;
    margin: 0 0 10px 0
}

.loginform__label,.loginform__text,.loginform__password {
    display: block;
    width: 100%;
    box-sizing: border-box;
    max-width: inherit;
    border: 1px solid #767676;
    border-radius: 0;
    padding: 15px;
    margin-bottom: 20px
}

.loginform__label {
    visibility: visible;
    border: 0;
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.loginform__guidetext {
    text-align: center
}

.divider,.loginform__divider {
    display: block;
    border-bottom: 1px solid #ccc;
    text-align: center;
    margin: 0 15px 20px 15px
}

.divider__text,.loginform__dividertext {
    padding: 5px 20px;
    text-align: center;
    top: 10px;
    position: relative;
    background-color: #fff;
    font-weight: bold
}

.loginform__title {
    margin: 20px 0 10px 0;
    display: block;
    font-size: 1.2em;
    font-weight: bold
}

@media(max-width: 480px) {
    .loginform__submit {
        background-image:none
    }
}

.authlinks,.authutilities {
    list-style: none;
    padding: 0;
    margin: 20px 0 0 0
}

.authutilities+.authlinks {
    padding-top: 20px;
    border-top: solid 1px #ccc
}

.authlinks__item,.authutilities__item {
    margin-bottom: 10px
}

.a-body--cookie,.a-body.a-body--cookie {
    padding-bottom: 0
}

.cookiecategory-toggle {
    position: relative;
    margin: 0 0 15px 0
}

.cookiecategory-toggle:last-child {
    margin-bottom: 5px
}

.cookiecategory-toggle__radio {
    position: absolute;
    cursor: pointer;
    left: 0;
    top: 0;
    width: 36px;
    height: 36px;
    z-index: 1;
    margin: 0;
    filter: alpha(opacity=0);
    opacity: 0
}

.cookiecategory-toggle__label {
    padding: 5px 5px 5px 50px;
    display: inline-block;
    box-sizing: border-box;
    font-size: 1rem;
    cursor: pointer
}

.cookiecategory-toggle__label::before {
    content: "";
    border: 1px solid #999;
    background: #fff;
    width: 36px;
    height: 36px;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%
}

.cookiecategory-toggle__radio:focus+label::before {
    -webkit-box-shadow: 0 0 0 2px #0064ff;
    -moz-box-shadow: 0 0 0 2px #0064ff;
    box-shadow: 0 0 0 2px #0064ff
}

.cookiecategory-toggle__radio:checked+label::after {
    content: "";
    border: 10px solid;
    width: 0;
    height: 0;
    position: absolute;
    top: 18px;
    left: 18px;
    transform: translate(-50%,-50%);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #333;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.btn--cookie-consent {
    margin-bottom: 20px
}

.btn--cookie-consent:focus {
    outline-offset: -2px
}

.block--cookie-consent-prompt {
    margin-bottom: 0;
    border: 10px solid #000
}

.cta-link--cookie-consent-contrast {
    background-color: #333
}

.block--cookie-consents-updated-confirmation {
    position: relative;
    padding-right: 70px
}

.cookie-consents-updated-confirmation {
    display: none
}

.cookie-consents-updated-confirmation:target {
    display: block
}

.cookie-consents-updated-confirmation__message {
    margin: 0
}

.btn--cookie-consents-updated-confirmation-hide {
    position: absolute;
    top: 20px;
    right: 20px
}

@media(max-width: 480px) {
    .btn--cookie-consents-updated-confirmation-hide {
        top:10px;
        right: 10px
    }
}

.cookie-consent-prompt-launcher__link {
    display: block;
    position: fixed;
    bottom: 20px;
    right: 0;
    padding: 10px 20px;
    color: #fff;
    background: #444;
    -webkit-border-radius: 10px 0 0 10px;
    border-radius: 10px 0 0 10px;
    text-decoration: none;
    z-index: 10
}

.cookie-consent-prompt-launcher__link:hover,.cookie-consent-prompt-launcher__link:focus {
    color: #fff;
    background: #000;
    text-decoration: underline
}

.icmform {
    background-color: #fff;
    border: 0 solid #e5e5e5;
    margin: 20px 0;
    padding: 0;
    clear: both
}

.icmform ol,.icmform ul {
    padding: 0;
    margin: 0;
    list-style: none
}

.icmform legend {
    font-size: 1.25rem;
    font-weight: bold;
    margin: 0 0 20px 0;
    padding: 20px 0;
    border-bottom: 1px solid #e5e5e5;
    width: 100%
}

.icmform .icmhideborder legend {
    border-bottom: 0 solid #e5e5e5;
    margin: 0
}

.icmform legend.icmhide,.icmform label.icmhide,.icmform .valid label.icmhide,.icmform .error label.icmhide {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    color: #000;
    background: #fff
}

.icmform label {
    margin: 0 0 10px 0;
    font-weight: bold;
    font-size: 1rem
}

.icmbuttongroup label {
    padding: 0 0 0 10px;
    display: inline-block;
    font-weight: normal
}

.icmform .icmbuttongroup legend {
    font-size: 1rem;
    font-weight: bold;
    margin: 0 0 20px 0;
    padding: 0;
    border-bottom: 0 solid #e5e5e5;
    position: relative
}

.icmformleft .icmbuttongroup legend,.icmformright .icmbuttongroup legend {
    width: auto
}

.icmform input,.icmform textarea,.icmform select {
    border: solid 1px #767676;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.6
}

.icmform input,.icmform select {
    white-space: pre
}

.icmform input[readonly*="readonly"],.icmform textarea[readonly*="readonly"],.icmform select[readonly*="readonly"],.icmform input[disabled*="disabled"] {
    background-color: #e5e5e5;
    color: #4a4a4a;
    cursor: default
}

.icmform input[type="checkbox"],.icmform input[type="radio"] {
    margin: 0 0 20px 0
}

.icmbuttongroup input[type="checkbox"],.icmbuttongroup input[type="radio"] {
    display: inline-block
}

.icmform input:-moz-read-only {
    color: #4a4a4a;
    background-color: #e5e5e5
}

.icmform input[type="file"]:-moz-read-only {
    color: initial;
    background-color: #fff
}

.icmform input.read-only {
    color: #4a4a4a;
    background-color: #e5e5e5
}

.icmvstext,.icmstext,.icmtext,.icmltext,.icmvstextarea,.icmstextarea,.icmtextarea,.icmltextarea,.icmvsselect,.icmsselect,.icmselect,.icmlselect,.icmfselect,.icmvspassword,.icmspassword,.icmpassword,.icmlpassword,.icmvsfile,.icmsfile,.icmfile,.icmlfile {
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    margin: 0 0 20px 0
}

.icmformtop label {
    display: block
}

.icmformtop .icmbuttongroup label {
    display: inline-block;
    font-weight: normal;
    max-width: calc(100% - 25px);
    vertical-align: top
}

.icmformtop input {
    display: block
}

.icmformtop select {
    min-height: 47px
}

.icmvstext,.icmvstextarea,.icmvsselect,.icmvspassword,.icmvsfile {
    max-width: 10%
}

.icmhorizontal .icmvstext,.icmhorizontal .icmvstextarea,.icmhorizontal .icmvsselect,.icmhorizontal .icmvspassword,.icmhorizontal .icmvsfile {
    max-width: 85px;
    width: 85px
}

.icmstext,.icmstextarea,.icmsselect,.icmspassword,.icmsfile {
    max-width: 25%
}

.icmhorizontal .icmstext,.icmhorizontal .icmstextarea,.icmhorizontal .icmsselect,.icmhorizontal .icmspassword,.icmhorizontal .icmsfile {
    max-width: 150px;
    width: 150px
}

.icmtext,.icmtextarea,.icmselect,.icmpassword,.icmfile {
    max-width: 50%
}

.icmhorizontal .icmtext,.icmhorizontal .icmtextarea,.icmhorizontal .icmselect,.icmhorizontal .icmpassword,.icmhorizontal .icmfile {
    max-width: 250px;
    width: 250px
}

.icmhorizontal .icmltext,.icmhorizontal .icmltextarea,.icmhorizontal .icmlselect,.icmhorizontal .icmlpassword,.icmhorizontal .icmlfile {
    max-width: 350px;
    width: 350px
}

@media(max-width: 850px) {
    .icmvstext,.icmvstextarea,.icmvsselect,.icmvspassword,.icmvsfile,.icmhorizontal .icmvstext,.icmhorizontal .icmvstextarea,.icmhorizontal .icmvsselect,.icmhorizontal .icmvspassword,.icmhorizontal .icmvsfile {
        max-width:85px;
        padding: 10px
    }

    .icmstext,.icmtext,.icmstextarea,.icmtextarea,.icmsselect,.icmselect,.icmspassword,.icmpassword,.icmsfile,.icmfile,.icmhorizontal .icmstext,.icmhorizontal .icmstextarea,.icmhorizontal .icmsselect,.icmhorizontal .icmspassword,.icmhorizontal .icmsfile,.icmhorizontal .icmtext,.icmhorizontal .icmtextarea,.icmhorizontal .icmselect,.icmhorizontal .icmpassword,.icmhorizontal .icmfile {
        max-width: 100%;
        width: 100%;
        padding: 10px
    }

    .icmhorizontal .icmltext,.icmhorizontal .icmltextarea,.icmhorizontal .icmlselect,.icmhorizontal .icmlpassword,.icmhorizontal .icmlfile {
        max-width: 100%;
        width: 100%
    }
}

@media(max-width: 480px) {
    .icmvstext,.icmvstextarea,.icmvsselect,.icmvspassword,.icmvsfile,.icmhorizontal .icmvstext,.icmhorizontal .icmvstextarea,.icmhorizontal .icmvsselect,.icmhorizontal .icmvspassword,.icmhorizontal .icmvsfile {
        max-width:100%;
        width: 100%
    }
}

.icmformleft label,.icmformright label {
    display: inline-block;
    padding: 0 40px 0 0;
    margin: 0 0 20px 0;
    box-sizing: border-box;
    width: 25%;
    vertical-align: middle
}

.icmformright label {
    text-align: right
}

.icmformleft .icmhorizontal label,.icmformright .icmhorizontal label {
    padding: 0 10px 0 0
}

.icmformleft .icmhorizontal .field_textarea label,.icmformleft .icmhorizontal .field_multiselect label,.icmformright .icmhorizontal .field_textarea label,.icmformright .icmhorizontal .field_multiselect label {
    vertical-align: top;
    padding: 10px 10px 0 0
}

.icmformleft .icmhorizontal .field_textarea label,.icmformleft .icmhorizontal .field_multiselect label,.icmformright .icmhorizontal .field_textarea label,.icmformright .icmhorizontal .field_multiselect label {
    vertical-align: top;
    padding: 10px 10px 0 0
}

.icmformleft .icmhorizontal .valid label,.icmformright .icmhorizontal .valid label,.icmformleft .icmhorizontal .error label,.icmformright .icmhorizontal .error label,.icmformleft .valid .icmbuttongroup legend,.icmformright .valid .icmbuttongroup legend,.icmformleft .error .icmbuttongroup legend,.icmformright .error .icmbuttongroup legend {
    padding: 0 50px 0 0
}

.icmformleft .icmbuttongroup label,.icmformright .icmbuttongroup label {
    display: inline-block;
    font-weight: normal;
    max-width: calc(100% - 25px);
    vertical-align: top
}

.icmformleft .icmbuttongroup label,.icmformright .icmbuttongroup label {
    font-weight: normal;
    vertical-align: top;
    padding: 0 10px 20px 0;
    margin: 0;
    width: auto;
    text-align: left
}

.icmformleft input,.icmformright input,.icmformleft select,.icmformright select {
    display: inline-block;
    vertical-align: middle
}

.icmformleft select,.icmformright select {
    min-height: 47px
}

.icmformleft textarea,.icmformleft .field_multiselect select,.icmformright textarea,.icmformright .field_multiselect select {
    display: inline-block;
    vertical-align: top
}

.icmformleft .icmltext,.icmformleft .icmltextarea,.icmformleft .icmlselect,.icmformleft .icmfselect,.icmformleft .icmlpassword,.icmformleft .icmlfile,.icmformright .icmltext,.icmformright .icmltextarea,.icmformright .icmlselect,.icmformright .icmfselect,.icmformright .icmlpassword,.icmformright .icmlfile {
    max-width: 73%
}

.icmformleft .field_upload.clear .icmlfile,.icmformright .field_upload.clear .icmlfile {
    max-width: calc(73% - 80px)
}

@media(max-width: 850px) {
    .icmformleft .icmltext,.icmformleft .icmltextarea,.icmformleft .icmlselect,.icmformleft .icmfselect,.icmformleft .icmlpassword,.icmformleft .icmlfile,.icmformright .icmltext,.icmformright .icmltextarea,.icmformright .icmlselect,.icmformright .icmfselect,.icmformright .icmlpassword,.icmformright .icmlfile {
        max-width:100%
    }

    .icmformleft label,.icmformright label {
        display: block;
        padding: 0;
        width: 100%
    }

    .icmformleft .error label,.icmformright .error label,.icmformtop .error label,.icmformleft .valid label,.icmformright .valid label,.icmformtop .valid label {
        padding-right: 50px
    }

    .icmformleft input,.icmformleft textarea,.icmformleft select,.icmformright input,.icmformright textarea,.icmformright select {
        display: block
    }

    .icmformleft .icmhorizontal input,.icmformleft .icmhorizontal textarea,.icmformleft .icmhorizontalselect,.icmformright .icmhorizontal input,.icmformright .icmhorizontal textarea,.icmformright .icmhorizontal select {
        display: inline-block
    }
}

.icmhorizontal li {
    display: inline-block;
    padding: 0 40px 0 0;
    box-sizing: border-box;
    vertical-align: top
}

.icmformleft .icmhorizontal li,.icmformright .icmhorizontal li {
    max-width: 450px
}

.icmhorizontal label {
    max-width: 300px
}

.icmformleft .icmhorizontal label,.icmformright .icmhorizontal label {
    max-width: 200px;
    width: auto
}

.icmformleft .icmbuttongroup ol,.icmformright .icmbuttongroup ol {
    display: inline-block;
    width: 73%;
    padding: 0 0 0 5px
}

.icmformleft .icmbuttongroup legend,.icmformright .icmbuttongroup legend {
    display: inline-block;
    vertical-align: top;
    padding: 0 20px 20px 0;
    box-sizing: border-box;
    margin: 0;
    width: 25%;
    float: left
}

.icmformright .icmbuttongroup legend {
    text-align: right
}

.icmformleft .icmhorizontal textarea,.icmformleft .icmhorizontal select,.icmformright .icmhorizontal textarea,.icmformright .icmhorizontal select {
    vertical-align: middle;
    display: inline-block
}

@media(max-width: 850px) {
    .icmhorizontal li {
        display:inline-block;
        padding: 0 40px 0 0;
        box-sizing: border-box;
        vertical-align: top
    }

    .icmformleft .icmhorizontal li,.icmformright .icmhorizontal li {
        max-width: none
    }

    .icmformleft .icmbuttongroup legend,.icmformleft .icmbuttongroup ol,.icmformright .icmbuttongroup legend,.icmformright .icmbuttongroup ol {
        display: block;
        width: 100%;
        float: none;
        padding: 0
    }

    .icmformleft .icmbuttongroup legend,.icmformright .icmbuttongroup legend {
        padding: 0 0 20px 0
    }

    .icmformleft .icmhorizontal label,.icmformright .icmhorizontal label {
        display: inline-block;
        max-width: none
    }

    .icmformleft .icmbuttongroup label,.icmformright .icmbuttongroup label {
        display: inline-block;
        max-width: none;
        width: auto
    }
}

.icmformleft input[type="checkbox"],.icmformleft input[type="radio"],.icmformright input[type="checkbox"],.icmformright input[type="radio"] {
    margin: 0 10px 20px 0;
    vertical-align: initial
}

.icmformleft .icmsinglecheckbox input[type="checkbox"],.icmformright .icmsinglecheckbox input[type="checkbox"] {
    vertical-align: middle
}

@media(max-width: 480px) {
    .icmhorizontal li {
        display:block;
        padding: 0;
        max-width: 100%
    }

    .icmhorizontal label {
        max-width: 100%
    }

    .icmformleft .icmhorizontal label,.icmformright .icmhorizontal label {
        display: block;
        max-width: none
    }

    .icmformleft .icmbuttongroup label,.icmformright .icmbuttongroup label {
        display: inline-block
    }
}

.icmguidance {
    margin: 0 0 20px 0
}

.icmguidancehint {
    margin: -10px 0 20px 0;
    color: #4e537b
}

.icmform .icmguidancehint::before {
    content: "\e83a";
    display: inline-block;
    margin: -2px 5px 0 0;
    vertical-align: middle;
    font-size: 1rem;
    font-weight: normal;
    color: #4e537b
}

.icmguidanceleft {
    text-align: left
}

.icmguidanceright {
    text-align: right
}

.icmguidancecenter {
    text-align: center
}

.icmguidancejustify {
    text-align: justify
}

.icmform .icmguidance ul {
    padding: 0 0 20px 40px;
    list-style: disc;
    overflow: hidden
}

.icmform .icmguidance ol {
    padding: 0 0 20px 40px;
    list-style: decimal;
    overflow: hidden
}

.icmform .icmguidance ul ul,.icmform .icmguidance ol ol {
    padding-top: 10px;
    padding-bottom: 0
}

.icmform .icmguidance li {
    padding: 5px 0
}

.icmform .icmguidancehint.hintabove::before {
    display: none
}

.icmform .icmguidancehint.hintabove {
    color: #4a4a4a;
    margin: -5px 0 10px 0
}

.icmform .icmbuttongroup .icmguidancehint.hintabove {
    margin: -15px 0 15px 0
}

.icmform input[type=button],.icmform input[type=submit],.icmform input[type=reset] {
    position: relative;
    min-height: 41px;
    margin: 0 0 20px 0;
    padding: 12px 20px;
    border: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1rem;
    font-family: inherit;
    font-weight: bold;
    line-height: 1.6;
    color: inherit;
    background-color: #e5e5e5
}

.icmform input[type=button].icminput--contrast,.icmform input[type=submit].icminput--contrast,.icmform input[type=reset].icminput--contrast {
    color: #fff;
    background-color: #333
}

.icmform input[type=button]:hover,.icmform input[type=submit]:hover,.icmform input[type=reset]:hover,.icmform input[type=button]:focus,.icmform input[type=submit]:focus,.icmform input[type=reset]:focus {
    cursor: pointer;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.icmform input[type=button].icminput--contrast:hover,.icmform input[type=submit].icminput--contrast:hover,.icmform input[type=reset].icminput--contrast:hover,.icmform input[type=button].icminput--contrast:focus,.icmform input[type=submit].icminput--contrast:focus,.icmform input[type=reset].icminput--contrast:focus {
    background-color: #333;
    color: #fff;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.8)
}

.back input[type=submit] {
    font-size: 1rem
}

.next input[type=submit],.finish input[type=submit],.submit input[type=submit] {
    background-color: #333;
    border: 2px solid #333;
    color: #fff;
    font-size: 1rem
}

.next input[type=submit]:hover,.finish input[type=submit]:hover,.submit input[type=submit]:hover,.next input[type=submit]:focus,.finish input[type=submit]:focus,.submit input[type=submit]:focus {
    background-color: #000;
    border: 2px solid #000
}

.icmform input[type="button"]:disabled,.icmform input[type="submit"]:disabled,.icmform input[type="reset"]:disabled,.icmform input[type="file"]:disabled::-webkit-file-upload-button,button:disabled,.icmform select:disabled,.icmform optgroup:disabled,.icmform option:disabled,.icmform select[disabled]>option {
    background-color: #e5e5e5;
    color: #4a4a4a;
    opacity: 1
}

.icmform input[type=button].icminput--contrast:disabled,.icmform input[type=submit].icminput--contrast:disabled,.icmform input[type=reset].icminput--contrast:disabled {
    color: #4a4a4a;
    background-color: #ccc
}

.icmform input[type="button"]:disabled:hover,.icmform input[type="submit"]:disabled:hover,.icmform input[type="reset"]:disabled:hover,.icmform input[type="file"]:disabled::-webkit-file-upload-button:hover,.icmform select:disabled:hover,.icmform optgroup:disabled:hover,.icmform option:disabled:hover,.icmform select[disabled]>option:hover {
    color: #4a4a4a;
    background-color: #e5e5e5;
    box-shadow: none;
    cursor: default
}

.icmform input[type=button].icminput--contrast:disabled:hover,.icmform input[type=submit].icminput--contrast:disabled:hover,.icmform input[type=reset].icminput--contrast:disabled:hover {
    color: #4a4a4a;
    background-color: #ccc;
    box-shadow: none;
    cursor: default
}

.icmform .icminput--displaynone {
    display: none
}

.icmwizardbuttongroup .icmbutton-surround {
    display: inline-block;
    vertical-align: bottom
}

.icmform .inline {
    display: inline-block
}

.icmform .locationmap input[type=button],.icmform .locationsearch:first-of-type input[type=button] {
    margin: 0 10px 20px 20px
}

.icmform .field_locationpicker .icmltext {
    max-width: calc(73% - 105px);
    display: inline-block
}

.icmform .field_locationpicker .icmwizardbuttongroup .icmltext {
    max-width: calc(100% - 145px)
}

.icmhorizontal li,.icmvertical .icmhorizontal li {
    vertical-align: bottom;
    min-height: 40px;
    padding: 0 20px 0 0
}

.icmform .icmvertical .icmhorizontal li input[type=button],.icmform .icmvertical .icmhorizontal li input[type=submit],.icmform .icmvertical .icmhorizontal li input[type=reset],.icmform .icmhorizontal li input[type=button],.icmform .icmhorizontal li input[type=submit],.icmform .icmhorizontal li input[type=reset],.icmform .icmhorizontal li .btn--form {
    min-height: 41px;
    margin: 0 0 20px 0
}

.icmform .icmvertical .icmhorizontal li .icmwizardbuttongroup input[type=button],.icmform .icmvertical .icmhorizontal li .icmwizardbuttongroup input[type=submit],.icmform .icmvertical .icmhorizontal li .icmwizardbuttongroup input[type=reset],.icmform .icmhorizontal li .icmwizardbuttongroup input[type=button],.icmform .icmhorizontal li .icmwizardbuttongroup input[type=submit],.icmform .icmhorizontal li .icmwizardbuttongroup input[type=reset] {
    margin: 0 0 20px 0
}

@media(max-width: 850px) {
    .icmform .locationmap input[type=button],.icmform .locationsearch:first-of-type input[type=button] {
        margin:0 10px 20px 0
    }

    .icmform .field_locationpicker .icmltext,.icmform .field_locationpicker .icmwizardbuttongroup .icmltext {
        max-width: 100%
    }
}

.icmformleft .icmbutton-surround.upload,.icmformright .icmbutton-surround.upload {
    display: inline-block;
    width: 73%
}

.icmformleft .icmbutton-surround.upload .icmvsfile,.icmformright .icmbutton-surround.upload .icmvsfile {
    max-width: 10%
}

.icmformleft .icmbutton-surround.upload .icmsfile,.icmformright .icmbutton-surround.upload .icmsfile {
    max-width: 25%
}

.icmformleft .icmbutton-surround.upload .icmfile,.icmformright .icmbutton-surround.upload .icmfile {
    max-width: 50%
}

.icmformleft .icmbutton-surround.upload .icmlfile,.icmformright .icmbutton-surround.upload .icmlfile {
    max-width: 100%
}

@media(max-width: 850px) {
    .icmformleft .icmbutton-surround.upload,.icmformright .icmbutton-surround.upload {
        display:block;
        width: 100%
    }

    .icmformleft .icmbutton-surround.upload .icmvsfile,.icmformright .icmbutton-surround.upload .icmvsfile,.icmformleft .icmbutton-surround.upload .icmsfile,.icmformright .icmbutton-surround.upload .icmsfile,.icmformleft .icmbutton-surround.upload .icmfile,.icmformright .icmbutton-surround.upload .icmfile {
        max-width: 100%
    }
}

.icmform em[title=required] {
    color: #d20000;
    display: none
}

.icmform .error {
    margin: 0 0 20px 0;
    width: 100%;
    box-sizing: border-box
}

.icmform .icmhorizontal .error,.icmform .icmhorizontal .error {
    margin: 0
}

.icmform .errorblock {
    margin: 0 0 10px 0;
    color: #d20000;
    font-weight: bold
}

.icmform .error .errorblock {
    margin: 0
}

.icmform .valid label,.icmform .error label {
    position: relative;
    min-height: 25px
}

.icmform .valid label:after,.icmform .valid .icmbuttongroup legend:after {
    content: '\e80a';
    position: absolute;
    top: calc(50% - 16px);
    right: 0;
    font-size: 1.7rem;
    color: green
}

.icmform .error label:after,.icmform .error .icmbuttongroup legend:after {
    content: '\e809';
    position: absolute;
    top: calc(50% - 16px);
    right: 0;
    font-size: 1.7rem;
    color: #d20000
}

.icmformleft .valid label:after,.icmformright .valid label:after,.icmformleft .error label:after,.icmformright .error label:after {
    top: calc(50% - 16px);
    right: 10px
}

.icmformleft .valid .icmbuttongroup legend:after,.icmformright .valid .icmbuttongroup legend:after,.icmformleft .error .icmbuttongroup legend:after,.icmformright .error .icmbuttongroup legend:after {
    top: 0;
    right: 10px
}

.icmform .valid .icmbuttongroup label:after,.icmform .error .icmbuttongroup label:after {
    content: ''
}

.field_valerrors strong {
    color: initial
}

.field_valerrors ul,.field_valerrors strong {
    display: inline-block;
    vertical-align: middle;
    padding: 0 10px 10px 0
}

@media(max-width: 850px) {
    .icmformright .valid label:after {
        right:auto;
        left: 0
    }
}

.icmform .valid input,.icmform .valid select,.icmform .valid textarea,.icmform .valid .icmwysiwygMain {
    border: 2px solid green
}

.icmform .error input,.icmform .error select,.icmform .error textarea,.icmform .error .icmwysiwygMain {
    border: 2px solid #d20000
}

.icmform .valid:hover {
    background-color: transparent;
    color: inherit;
    cursor: default
}

.field_addresslookup input[type="text"] {
    display: inline-block;
    margin: 0 20px 20px 0;
    vertical-align: top
}

.addresslookupsearch {
    display: inline-block
}

.icmwysiwygMain,.WYSIWYG-READONLY {
    width: 100%!important;
    height: auto!important;
    vertical-align: top;
    border: solid 1px #4a4a4a;
    display: inline-block;
    margin: 0 0 20px 0;
    overflow: hidden;
    line-height: 0
}

.WYSIWYG-READONLY {
    border: 0
}

.icmformleft .icmwysiwygMain,.icmformright .icmwysiwygMain,.icmformleft .WYSIWYG-READONLY,.icmformright .WYSIWYG-READONLY {
    width: 73%!important
}

@media(max-width: 850px) {
    .icmformleft .icmwysiwygMain,.icmformright .icmwysiwygMain,.icmformleft .WYSIWYG-READONLY,.icmformright .WYSIWYG-READONLY {
        width:100%!important
    }
}

.icmwysiwygMain iframe {
    width: 100%!important
}

.icmwysiwygMain iframe {
    border: 0;
    margin: 0;
    padding: 0;
    min-height: 100px!important;
    background-color: #fff;
    -ms-user-select: element
}

.icmwysiwygMain textarea[readonly*="readonly"]+iframe {
    background-color: #e5e5e5;
    color: #4a4a4a;
    cursor: default
}

.icmwysiwygMain textarea {
    border: 0;
    margin: 0;
    padding: 0;
    overflow-y: scroll;
    resize: none;
    outline: 0
}

.icmwysiwygToolbar {
    background-color: #e5e5e5;
    padding: 5px 10px;
    height: auto!important;
    float: left;
    width: 100%
}

.icmwysiwygGroup {
    float: left;
    width: auto!important
}

.icmwysiwygButton,.icmwysiwygButtonH {
    float: left;
    padding: 3px;
    text-align: center;
    border: 0;
    background-color: transparent;
    cursor: pointer;
    font-size: 15px;
    margin: 0 10px 0 0
}

.icmwysiwygDisabled {
    opacity: .3;
    filter: alpha(opacity=30);
    cursor: default
}

.icmwysiwygButton:disabled,.icmwysiwygButtonH:disabled {
    background-color: transparent;
    cursor: default
}

.icmwysiwygButton:hover {
    background-color: #aaa
}

.icmwysiwygDisabled:hover {
    background-color: transparent
}

.icmwysiwygButtonH {
    color: transparent;
    cursor: default
}

.icmwysiwygDivider {
    float: left;
    width: 1px;
    height: 23px;
    margin: 1px 0 1px 0
}

.icmwysiwygPopup {
    border: solid 1px rgba(122,122,122,0.25);
    background-color: #fff;
    color: #111;
    position: absolute;
    font-size: 1rem!important;
    font-family: sans-serif;
    font-family: inherit;
    cursor: default;
    z-index: 10000
}

.icmwysiwygList div {
    padding: 2px 4px 2px 4px
}

.icmwysiwygList p,.icmwysiwygList h1,.icmwysiwygList h2,.icmwysiwygList h3,.icmwysiwygList h4,.icmwysiwygList h5,.icmwysiwygList h6,.icmwysiwygList blockquote,.icmwysiwygList pre,.icmwysiwygList font {
    padding: 0;
    margin: 0;
    background-color: transparent
}

.icmwysiwygColor {
    width: 150px;
    padding: 1px 0 0 1px
}

.icmwysiwygColor div {
    float: left;
    width: 14px;
    height: 14px;
    margin: 0 1px 1px 0
}

.icmwysiwygPrompt,.icmwysiwygMsg {
    background-color: #D0DEF0;
    -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.25);
    -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.25);
    box-shadow: 0 1px 3px rgba(0,0,0,0.25);
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    padding: 8px;
    font-size: 8.5pt;
    border: solid 1px #B2B2B2
}

.icmwysiwygPrompt input,.icmwysiwygPrompt textarea {
    font: 8.5pt Arial,Verdana;
    display: block
}

.icmwysiwygMsg {
    width: 150px
}

.icmwysiwygButtonH {
    border: 0;
    width: 1px;
    height: 1px;
    padding: 0;
    background-color: transparent;
    overflow: hidden
}

.icmwysiwygPopup.icmwysiwygList div {
    margin: 2px;
    border: solid 1px white
}

.icmwysiwygPopup.icmwysiwygList div:hover {
    background-color: #DFF1FF;
    border: solid 1px blue
}

.icmwysiwyg-popup-header {
    margin-bottom: 8px
}

.icmwysiwygPrompt input[type="button"] {
    margin: 8px 0 0 0;
    float: right;
    border: solid 0 #3A58A5;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 3px;
    background-color: #ccc;
    font-weight: bold;
    color: #FFF;
    cursor: pointer
}

.icmwysiwygPrompt input[type="button"]:hover {
    border-color: #2B3F75;
    background-color: #aaa
}

.date-picker-wrapper {
    margin: 20px 0
}

.date-picker-wrapper th {
    border: 0
}

.date-picker-wrapper td {
    padding: 0;
    border: 0 solid #ccc
}

.start-day,.end-day {
    padding: 0 5px
}

.gap {
    display: none
}

.normal-top {
    margin: 0 0 10px 0
}

.drp_top-bar {
    position: relative;
    margin: 0 0 10px 0
}

.error-top {
    display: none
}

.apply-btn,.icmform .apply-btn {
    display: none
}

.month-name {
    text-transform: capitalize;
    text-align: center
}

.caption {
    text-align: center
}

.caption .next,.caption .prev {
    padding: 0 10px 0 0;
    width: 100%;
    display: block;
    box-sizing: border-box;
    text-align: center
}

.caption .next:hover,.caption .prev:hover {
    cursor: pointer;
    background-color: #ccc
}

.month-wrapper {
    width: 100%!important
}

.month1 {
    width: 49%;
    margin: 10px 2% 0 0;
    float: left;
    text-align: center;
    background-color: #fff
}

.month2 {
    width: 49%;
    margin: 10px 0 0 0;
    float: left;
    text-align: center;
    background-color: #fff
}

.month2 .prev {
    display: none
}

.week-name th,.month-name {
    padding: 10px
}

.week-name th {
    width: 14.5%
}

.day {
    padding: 10px
}

.lastMonth,.nextMonth {
    display: none
}

.time1,.time2 {
    display: inline-block;
    width: 49%;
    padding: 0
}

.time2 {
    padding: 0 0 0 2%
}

.time .label {
    width: 100px;
    display: inline-block
}

.time input[type="range"] {
    width: 95%;
    max-width: 100%;
    margin: 10px 0
}

.time1 div,.time2 div {
    display: block;
    width: 100%;
    margin: 0;
    padding: 10px 0 0 0
}

.time1 div:before {
    content: "Time from";
    font-weight: bold;
    padding: 0 0 10px 0;
    display: block
}

.time2 div:before {
    content: "Time to";
    font-weight: bold;
    padding: 20px 0 10px 0;
    display: block
}

.day.valid:hover {
    background: 0;
    box-shadow: inset 0 20em 0 rgba(0,0,0,0.2);
    color: inherit;
    cursor: pointer
}

.field_daterange.valid input[type="button"] {
    border: 0
}

.lastMonth.invalid {
    background-color: #fff
}

.real-today {
    background-color: #ccc
}

.checked {
    background-color: #333;
    color: #fff
}

.checked:hover {
    background-color: #000;
    color: #fff
}

.date-picker-wrapper .footer {
    margin: 0;
    padding: 0;
    background-color: transparent
}

.next-days,.next-buttons,.prev-buttons {
    display: block;
    margin: 10px 0 0 0
}

.prev-days {
    display: block;
    margin: 20px 0 0 0
}

.shortcuts {
    background-color: #e5e5e5;
    padding: 20px;
    box-sizing: border-box;
    margin: 0 0 20px 0;
    clear: both
}

.shortcuts b {
    display: block
}

.shortcuts span {
    width: 48%;
    display: inline-block;
    font-weight: bold
}

.shortcuts span a {
    font-weight: normal;
    display: inline-block;
    padding: 0 0 0 10px
}

.shortcuts .prev-days {
    margin: 0 0 0 -5px
}

@media(max-width: 870px) {
    .time1,.time2 {
        display:inline-block;
        width: 100%;
        padding: 0
    }

    .time2 {
        padding: 0
    }

    .default-top {
        margin: 0 0 10px 0
    }

    .time input[type="range"] {
        width: 98%;
        margin: 10px 0
    }

    .month1,.month2 {
        width: 100%;
        margin: 20px 0 0 0
    }

    .date-picker-wrapper .footer {
        margin: 40px 0 0 0
    }
}

@media(max-width: 490px) {
    .month-wrapper {
        overflow-x:scroll
    }
}

.g-recaptcha {
    display: inline-block;
    vertical-align: top;
    margin: 0 0 20px 0
}

.icmformleft .icmlocationmap,.icmformright .icmlocationmap {
    margin: 0 0 20px 25.5%
}

@media(max-width: 850px) {
    .icmformleft .icmlocationmap,.icmformright .icmlocationmap {
        width:100%!important
    }
}

.icmformleft .field_locationpicker .icmwizardbuttongroup,.icmformright .field_locationpicker .icmwizardbuttongroup {
    margin: 0 0 20px 25%
}

.icmformleft .icmhorizontal .icmlocationmap,.icmformright .icmhorizontal .icmlocationmap,.icmformleft .icmhorizontal .field_locationpicker .icmwizardbuttongroup,.icmformright .icmhorizontal .field_locationpicker .icmwizardbuttongroup {
    margin: 0 0 20px 0
}

@media(max-width: 850px) {
    .icmformleft .icmlocationmap,.icmformleft .field_locationpicker .icmwizardbuttongroup,.icmformright .icmlocationmap,.icmformright .field_locationpicker .icmwizardbuttongroup {
        margin:0 0 20px 0
    }
}

body .ui-widget-header {
    background: transparent;
    border: 0
}

body .ui-widget-content {
    border: 1px solid #ccc;
    border-radius: 0;
    background: #fff;
    color: inherit;
    font-family: inherit
}

body .ui-state-default,body .ui-widget-content .ui-state-default,body .ui-widget-header .ui-state-default {
    border: 0 solid #c5dbec;
    background: #fff;
    font-weight: bold;
    color: inherit;
    text-align: center
}

body .ui-datepicker {
    z-index: 5!important
}

@media(max-width: 420px) {
    body .ui-datepicker {
        width:auto;
        left: 20px!important;
        right: 20px
    }
}

body .ui-datepicker select.ui-datepicker-month,body .ui-datepicker select.ui-datepicker-year {
    font-family: inherit;
    font-weight: bold;
    color: #333
}

body .ui-state-hover,body .ui-widget-content .ui-state-hover,body .ui-widget-header .ui-state-hover,body .ui-state-focus,body .ui-widget-content .ui-state-focus,body .ui-widget-header .ui-state-focus {
    border: 0 solid #79b7e7;
    box-shadow: inset 0 20em 0 rgba(0,0,0,0.2)
}

body .ui-state-highlight,body .ui-widget-content .ui-state-highlight,body .ui-widget-header .ui-state-highlight {
    border: 0 solid #fad42e;
    background: #ccc;
    color: inherit
}

body .ui-state-active,body .ui-widget-content .ui-state-active,body .ui-widget-header .ui-state-active {
    border: 0 solid #79b7e7;
    background: #333;
    color: #fff
}

body .ui-icon,body .ui-widget-content .ui-icon {
    -webkit-filter: grayscale(100%) brightness(50%);
    filter: grayscale(100%) brightness(50%)
}

body .ui-corner-all {
    border-radius: 0
}

body .ui-state-disabled,body .ui-widget-content .ui-state-disabled,body .ui-widget-header .ui-state-disabled {
    opacity: initial;
    color: #4a4a4a
}

body .ui-state-disabled::before,body .ui-widget-content .ui-state-disabled::before,body .ui-widget-header .ui-state-disabled::before,body .ui-state-disabled::after,body .ui-widget-content .ui-state-disabled::after,body .ui-widget-header .ui-state-disabled::after {
    color: #4a4a4a
}

body .ui-state-disabled .ui-icon,body .ui-widget-content .ui-state-disabled .ui-icon,body .ui-widget-header .ui-state-disabled .ui-icon {
    opacity: .35
}

body .ui-state-disabled.ui-state-hover,body .ui-widget-content .ui-state-disabled.ui-state-hover,body .ui-widget-header .ui-state-disabled.ui-state-hover {
    background: 0;
    box-shadow: none
}

.icmform th {
    padding: 10px;
    border: 1px solid #ccc;
    background: #efefef
}

.icmform td {
    padding: 10px;
    border: 1px solid #ccc
}

.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span {
    background-image: none
}

.icmverticalaccordion--container {
    position: relative;
    margin: 0 0 20px 0;
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 0;
    width: 100%
}

.icmverticalaccordion .icmguidancehint {
    margin: 0 0 20px 0
}

.icmform legend.icmverticalaccordion__heading {
    border-bottom-style: hidden;
    padding: 20px;
    margin: 0;
    display: block;
    box-sizing: border-box;
    cursor: pointer
}

.icmform legend.icmverticalaccordion__heading:hover,.icmform legend.icmverticalaccordion__heading:focus {
    background-color: #efefef
}

.icmverticalaccordion__content p {
    padding: 0 0 20px 0;
    margin: 0
}

.icmverticalaccordion__heading::after {
    position: absolute;
    right: 20px;
    top: 21px;
    display: block;
    text-align: center;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    font-size: 1.1rem;
    content: "\e807"
}

.icmverticalaccordion--open.icmverticalaccordion__heading::after {
    transform: rotate(135deg)
}

.icmverticalaccordion__content {
    padding: 20px 20px 0 20px;
    border-top: 1px solid #ccc
}

.chosen-container {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 100%!important;
    margin: 0;
    padding: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.icmhorizontal .chosen-container.icmvsselect {
    min-width: 85px
}

.icmhorizontal .chosen-container.icmsselect {
    min-width: 150px
}

.icmhorizontal .chosen-container.icmselect {
    min-width: 250px
}

.icmhorizontal .chosen-container.icmlselect,.icmhorizontal .chosen-container {
    min-width: 350px
}

@media(max-width: 850px) {
    .icmformleft .chosen-container,.icmformright .chosen-container {
        max-width:100%
    }
}

.chosen-container .chosen-drop {
    position: absolute;
    top: calc(100% - 19px);
    z-index: 999;
    width: 100%;
    border: 1px solid #ccc;
    padding: 10px;
    border-top: 0;
    margin: 0 0 20px 0;
    background: #fff;
    clip: rect(0,0,0,0);
    -webkit-clip-path: inset(100% 100%);
    clip-path: inset(100% 100%)
}

.chosen-container.chosen-with-drop .chosen-drop {
    clip: auto;
    -webkit-clip-path: none;
    clip-path: none
}

.chosen-container a {
    cursor: pointer
}

.chosen-container .search-choice .group-name,.chosen-container .chosen-single .group-name {
    margin-right: 4px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-weight: normal;
    color: #000;
    color: initial
}

.chosen-container .search-choice .group-name::after,.chosen-container .chosen-single .group-name::after {
    content: ":";
    padding-left: 2px;
    vertical-align: top
}

.chosen-container-single .chosen-single {
    position: relative;
    display: block;
    overflow: hidden;
    text-decoration: none;
    white-space: nowrap;
    border: solid 1px #767676;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.6;
    padding: 10px;
    width: 100%;
    margin: 0 0 20px 0
}

.chosen-container-single .chosen-single input[type="text"] {
    cursor: pointer;
    opacity: 0;
    position: absolute;
    width: 0
}

.chosen-container-single .chosen-single span {
    display: block;
    overflow: hidden;
    margin-right: 26px;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #000;
    color: initial
}

.chosen-container-single .chosen-single-with-deselect span {
    margin-right: 38px
}

.chosen-container-single .chosen-single div::before {
    content: "\e801";
    position: absolute;
    top: 0;
    line-height: 47px;
    transform: scale(1,2);
    font-size: .6rem;
    right: 7px;
    color: #000;
    color: initial
}

.chosen-container-single .chosen-search {
    position: relative;
    z-index: 1010;
    margin: 0;
    white-space: nowrap
}

.chosen-container-single .chosen-search input[type="text"] {
    padding: 10px 40px 10px 10px;
    width: 100%;
    outline: 0;
    border: 1px solid #767676;
    font-size: 1rem
}

.chosen-container-single .chosen-search::after {
    content: "\e800";
    position: absolute;
    top: 0;
    line-height: 47px;
    font-size: 1rem;
    right: 10px;
    color: #000;
    color: initial
}

.chosen-container-single.chosen-container-single-nosearch .chosen-search {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.chosen-container .chosen-results {
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 240px;
    -webkit-overflow-scrolling: touch
}

.chosen-container .chosen-results li {
    display: none;
    margin: 0;
    padding: 10px 10px 10px 20px;
    list-style: none;
    word-wrap: break-word;
    -webkit-touch-callout: none;
    position: relative
}

.chosen-container .chosen-results li.active-result {
    display: list-item;
    cursor: pointer
}

.chosen-container .chosen-results li.disabled-result {
    display: list-item;
    color: #ccc;
    cursor: default
}

.chosen-container .chosen-results li.highlighted {
    background-color: #e5e5e5
}

.chosen-container .chosen-results li.no-results {
    display: list-item;
    background: #efefef
}

.chosen-container .chosen-results li.group-result,.chosen-container .chosen-results li.result-selected {
    display: list-item;
    font-weight: bold;
    cursor: default
}

.chosen-container .chosen-results li.result-selected {
    font-weight: bold;
    cursor: default
}

.chosen-container .chosen-results li.result-selected::before {
    content: "\e80a";
    position: absolute;
    left: 3px;
    top: 3px;
    font-size: .8rem;
    line-height: 42px
}

.chosen-container .chosen-results li.group-option {
    padding-left: 20px
}

.chosen-container .chosen-results li em {
    font-style: normal;
    text-decoration: underline
}

.chosen-container-multi .chosen-choices {
    position: relative;
    display: block;
    overflow: hidden;
    text-decoration: none;
    white-space: nowrap;
    border: solid 1px #767676;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    padding: 0 10px 0 5px;
    width: 100%;
    margin: 0 0 20px 0;
    cursor: text;
    min-height: 47px
}

.chosen-container-multi .chosen-choices li {
    float: left;
    list-style: none
}

.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
    outline: 0;
    border: 0;
    padding: 10px 0
}

.chosen-container-multi .chosen-choices li.search-choice {
    position: relative;
    margin: 5px 10px 0 0;
    padding: 5px 30px 5px 10px;
    max-width: 100%;
    font-weight: bold;
    background-color: #e5e5e5;
    cursor: default
}

.chosen-container-multi .chosen-choices li.search-choice span {
    word-wrap: break-word
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
    position: absolute;
    top: 3px;
    right: 7px;
    display: block
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before {
    content: "\e809";
    color: #4a4a4a
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover:before {
    color: #000
}

.chosen-container-multi .chosen-choices li.search-field {
    height: 47px;
    padding: 0 0 0 5px
}

.chosen-container-active .chosen-single,.chosen-container-active .chosen-choices {
    outline: 2px solid #0064ff;
    outline-offset: 0
}

.chosen-disabled {
    cursor: default
}

.chosen-disabled .chosen-choices,.chosen-disabled input {
    background-color: #e5e5e5;
    color: #4a4a4a
}

.chosen-disabled .chosen-single {
    background-color: #e5e5e5;
    color: #4a4a4a;
    cursor: default
}

.chosen-disabled .chosen-choices .search-choice .search-choice-close,.chosen-container-multi .chosen-choices li.search-field input[type="text"]:hover {
    cursor: default
}

.dimple {
    height: 500px;
    overflow: hidden
}

@media(max-width: 680px) {
    .dimple {
        height:320px
    }
}

.domain {
    stroke: #d3d3d3!important;
    stroke-width: 1px!important
}

.tick line {
    stroke: #d3d3d3!important;
    stroke-width: 1px!important
}

.tick text,.dimple-legend-text {
    fill: #4a4a4a!important
}

.dimple-title {
    font-family: inherit;
    font-size: 1.2rem!important;
    font-weight: bold;
    fill: #4a4a4a
}

rect.dimple-tooltip {
    fill: #fff!important;
    stroke: #ccc!important;
    stroke-width: 1px!important
}

text.dimple-tooltip {
    fill: #4a4a4a;
    font-size: 1rem!important;
    height: 25px!important;
    font-family: inherit!important
}

body .ui-tabs {
    margin: 0 0 60px 0;
    background-color: #f2f2f2
}

body .ui-tabs .ui-widget-header {
    color: inherit
}

body .ui-tabs .ui-button {
    background-color: #e5e5e5;
    border: 2px solid #e5e5e5;
    color: inherit;
    padding: 10px 20px;
    box-sizing: border-box;
    margin: 0 10px 0 0;
    font-size: 1.125rem;
    font-family: inherit;
    font-weight: bold
}

body .ui-tabs .ui-button:hover {
    background-color: #e5e5e5;
    border: 2px solid #e5e5e5;
    cursor: pointer
}

body .ui-tabs .ui-button-text {
    padding: 0
}

body .ui-tabs-nav>.ui-state-default {
    border: 1px solid #ccc;
    background-color: #f2f2f2
}

body .ui-tabs-nav .ui-state-default a,body .ui-tabs-nav .ui-state-default a:link,body .ui-tabs-nav .ui-state-default a:visited {
    color: inherit
}

body .ui-tabs-nav>.ui-state-active {
    background-color: #fff
}

body .ui-tabs-nav .ui-state-active a,body .ui-tabs-nav .ui-state-active a:link,body .ui-tabs-nav .ui-state-active a:visited {
    color: #000;
    text-decoration: none
}

.ui-tabs>.ui-tabs-panel.ui-widget-content {
    padding: 0 1.4em 1em 1.4em
}

.ui-tabs>.ui-tabs-panel.ui-widget-content>ul {
    background-color: #fff;
    border: 1px solid #ccc;
    padding: 10px;
    overflow: auto
}

body .ui-tabs>.ui-tabs-nav {
    padding: 1em 1.4em 0 1.4em
}

.icmform .icmradiocontainer li {
    position: relative;
    vertical-align: top
}

.icmform .icmradiocontainer input[type=radio] {
    position: absolute;
    cursor: pointer;
    left: 0;
    top: 0;
    width: 36px;
    height: 36px;
    z-index: 1;
    margin: 0;
    filter: alpha(opacity=0);
    opacity: 0
}

.icmform .icmradiocontainer input[type=radio]:disabled {
    cursor: default
}

.icmform .icmradiocontainer label {
    padding: 5px 20px 30px 50px
}

.icmform .icmradiocontainer label::before {
    content: "";
    border: 1px solid #767676;
    background: transparent;
    width: 36px;
    height: 36px;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%
}

.icmform .icmradiocontainer input[type=radio]:checked+label::after {
    content: "";
    border: 10px solid;
    width: 0;
    height: 0;
    position: absolute;
    top: 18px;
    left: 18px;
    transform: translate(-50%,-50%);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #333;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.icmform .icmradiocontainer input[type=radio]:checked+label {
    font-weight: bold
}

.icmform .icmradiocontainer input[type=radio]:disabled+label::before {
    background-color: #e5e5e5
}

.icmform .icmradiocontainer input[type=radio]:disabled+label::after {
    color: #4a4a4a
}

.icmform .icmradiocontainer input[type=radio]:focus+label::before {
    -webkit-box-shadow: 0 0 0 2px #0064ff;
    -moz-box-shadow: 0 0 0 2px #0064ff;
    box-shadow: 0 0 0 2px #0064ff
}

.icmform .icmradiocontainer legend.icmhide {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    color: #000;
    background: #fff
}

.icmform .icmcheckcontainer li {
    position: relative;
    vertical-align: top
}

.icmform .icmcheckcontainer input[type=checkbox] {
    position: absolute;
    cursor: pointer;
    left: 0;
    top: 0;
    width: 38px;
    height: 38px;
    z-index: 1;
    margin: 0;
    filter: alpha(opacity=0);
    opacity: 0
}

.icmform .icmcheckcontainer input[type=checkbox]:disabled {
    cursor: default
}

.icmform .icmcheckcontainer label {
    padding: 5px 20px 30px 50px
}

.icmform .icmcheckcontainer label::before {
    content: "";
    border: 1px solid #767676;
    background: transparent;
    width: 34px;
    height: 34px;
    position: absolute;
    top: 0;
    left: 0;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.icmform .icmcheckcontainer input[type=checkbox]:checked+label::after {
    content: "";
    border: solid;
    border-width: 0 0 5px 5px;
    background: transparent;
    border-top-color: transparent;
    width: 17px;
    height: 7px;
    position: absolute;
    top: 9px;
    left: 7px;
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    color: #333;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.icmform .icmcheckcontainer input[type=checkbox]:disabled+label::before {
    background-color: #e5e5e5
}

.icmform .icmcheckcontainer input[type=checkbox]:disabled+label::after {
    color: #4a4a4a
}

.icmform .icmcheckcontainer input[type=checkbox]:focus+label::before {
    outline: 2px solid #0064ff;
    outline-offset: 0
}

.icmform .icmcheckcontainer legend.icmhide {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    color: #000;
    background: #fff
}

.icmform .icmsinglecheckbox {
    position: relative
}

.icmform .icmsinglecheckbox .icmcheck {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0,0,0,0);
    overflow: hidden;
    padding: 0;
    border: 0;
    opacity: 0
}

.icmform .icmsinglecheckbox label {
    width: calc(25% + 40px);
    min-width: 36px;
    position: relative;
    margin-bottom: 20px
}

.icmform.icmformleft .icmsinglecheckbox label,.icmform.icmformright .icmsinglecheckbox label {
    min-height: 36px
}

.icmform .icmsinglecheckbox label span {
    display: block
}

.icmform.icmformleft .icmsinglecheckbox label span,.icmform.icmformright .icmsinglecheckbox label span {
    display: block;
    padding-top: 2px
}

.icmform .icmsinglecheckbox label.icmhide {
    position: relative;
    margin: 0 0 70px 0;
    width: auto;
    height: auto;
    clip: unset;
    overflow: unset
}

.icmform.icmformleft .icmsinglecheckbox label.icmhide,.icmform.icmformright .icmsinglecheckbox label.icmhide {
    margin: 0 0 21px 0
}

.icmform .icmsinglecheckbox label.icmhide span {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    width: 1px;
    color: #000;
    background: #fff
}

.icmform .icmsinglecheckbox label::before {
    cursor: pointer;
    content: "";
    border: 1px solid #767676;
    background: #fff;
    width: 34px;
    height: 34px;
    visibility: visible;
    z-index: 3;
    position: absolute;
    right: 0;
    top: 0;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.icmform .icmsinglecheckbox input[type=checkbox]:checked+label::after {
    content: "";
    border: solid;
    border-width: 0 0 5px 5px;
    background: transparent;
    border-top-color: transparent;
    width: 17px;
    height: 7px;
    z-index: 4;
    position: absolute;
    top: 9px;
    right: 7px;
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    color: #333;
    cursor: pointer;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.icmform .icmsinglecheckbox input[type=checkbox]:disabled+label::before,.icmform .icmsinglecheckbox input[type=checkbox]:disabled+label::after {
    cursor: default
}

.icmform .icmsinglecheckbox input[type=checkbox]:disabled+label::before {
    background-color: #e5e5e5
}

.icmform .icmsinglecheckbox input[type=checkbox]:disabled+label::after {
    color: #4a4a4a
}

.icmform .icmsinglecheckbox input[type=checkbox]:focus+label::before {
    outline: 2px solid #0064ff;
    outline-offset: 0
}

.icmformtop .icmsinglecheckbox label {
    width: 100%;
    margin-bottom: 70px
}

.icmformtop .valid .icmsinglecheckbox label,.icmformtop .error .icmsinglecheckbox label {
    margin-right: 50px
}

.icmformright .icmsinglecheckbox label {
    padding-right: 80px
}

.icmformleft .icmhorizontal .icmsinglecheckbox label,.icmformright .icmhorizontal .icmsinglecheckbox label {
    width: 100%;
    max-width: calc(25vw);
    padding-right: 50px;
    min-height: 47px
}

.icmformleft .icmhorizontal .icmsinglecheckbox label.icmhide,.icmformright .icmhorizontal .icmsinglecheckbox label.icmhide {
    padding-right: 36px
}

.icmformleft .icmhorizontal .icmsinglecheckbox label::after,.icmformright .icmhorizontal .icmsinglecheckbox label::after {
    top: calc(50% - 23px)
}

.icmformtop .icmsinglecheckbox label::before {
    top: auto;
    right: auto;
    bottom: -50px;
    left: 0
}

.icmformleft .icmhorizontal .icmsinglecheckbox label::before {
    top: auto
}

.icmformtop .icmsinglecheckbox input[type=checkbox]:checked+label::after {
    top: auto;
    right: auto;
    bottom: -36px;
    left: 7px
}

.icmformleft .valid .icmsinglecheckbox label:after,.icmformright .valid .icmsinglecheckbox label:after,.icmformleft .error .icmsinglecheckbox label:after,.icmformright .error .icmsinglecheckbox label:after {
    right: 50px
}

.icmformleft .valid .icmsinglecheckbox label,.icmformright .valid .icmsinglecheckbox label,.icmformleft .error .icmsinglecheckbox label,.icmformright .error .icmsinglecheckbox label {
    padding-right: 80px
}

.icmformright .error .icmbuttongroup legend {
    padding-right: 80px
}

@media(max-width: 850px) {
    .icmform .icmsinglecheckbox label {
        width:100%;
        max-width: 100%;
        margin-bottom: 70px
    }

    .icmformleft .icmhorizontal .icmsinglecheckbox label,.icmformright .icmhorizontal .icmsinglecheckbox label {
        width: 100%;
        max-width: 100%;
        margin-bottom: 70px;
        padding-right: 0
    }

    .icmformleft .valid .icmsinglecheckbox label:after,.icmformright .valid .icmsinglecheckbox label:after,.icmformleft .error .icmsinglecheckbox label:after,.icmformright .error .icmsinglecheckbox label:after {
        right: 10px
    }

    .icmformleft .icmhorizontal .valid .icmsinglecheckbox label,.icmformright .icmhorizontal .valid .icmsinglecheckbox label,.icmformleft .icmhorizontal .error .icmsinglecheckbox label,.icmformright .icmhorizontal .error .icmsinglecheckbox label {
        padding-right: 50px
    }

    .icmform .icmsinglecheckbox label::before,.icmformleft .icmhorizontal .icmsinglecheckbox label::before,.icmformright .icmhorizontal .icmsinglecheckbox label::before {
        top: auto;
        right: auto;
        bottom: -50px;
        left: 0
    }

    .icmform .icmsinglecheckbox input[type=checkbox]:checked+label::after,.icmformleft .icmhorizontal .icmsinglecheckbox input[type=checkbox]:checked+label::after,.icmformright .icmhorizontal .icmsinglecheckbox input[type=checkbox]:checked+label::after {
        top: auto;
        right: auto;
        bottom: -36px;
        left: 7px
    }
}

.icmform .icmsinglecheckbox legend.icmhide {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    color: #000;
    background: #fff
}

.icmform table {
    overflow-x: auto;
    max-width: 100%
}

.icmformdata__table {
    width: 100%;
    border: 0 solid #fff
}

.icmformdata__cell {
    width: 50%;
    vertical-align: top;
    box-sizing: border-box;
    padding: 10px 0;
    border: 0 solid #fff
}

.icmformdata__cell--value {
    word-break: break-word
}

.icmformdata__cell--multi {
    font-weight: bold;
    font-size: 1.125rem;
    border-bottom: 1px solid #ccc;
    padding: 30px 10px 10px 0;
    background-color: transparent
}

.icmformdata__row:first-of-type .icmformdata__cell--multi:first-of-type {
    padding: 0 10px 10px 0
}

.icmformdatapagetable {
    width: 100%;
    border: 0 solid #fff
}

.icmformdatalabel,.icmformdatavalue {
    width: 50%;
    vertical-align: top;
    box-sizing: border-box;
    padding: 10px 0;
    border: 0 solid #fff
}

.icmformdatavalue {
    word-break: break-word
}

.icmformdatacontainer {
    font-weight: bold;
    font-size: 1.125rem;
    border: 0;
    border-bottom: 1px solid #ccc;
    padding: 30px 10px 10px 0;
    background-color: transparent
}

.btn--form {
    padding-top: 12px;
    padding-bottom: 12px;
    line-height: 1.6;
    margin: 5px 0 0 0
}

.icmvertical .btn--form,.icmvertical .icmhorizontal .icmvertical .btn--form {
    margin-bottom: 20px
}

.icmvertical .icmhorizontal .btn--form,.icmvertical .icmhorizontal .icmvertical .icmhorizontal .btn--form {
    margin-bottom: 0
}

.icmform .alert ul {
    padding: 0 0 20px 40px;
    list-style: disc;
    overflow: hidden
}

.icmform .alert ol {
    padding: 0 0 20px 40px;
    list-style: decimal;
    overflow: hidden
}

.icmform .alert ul ul,.icmform .alert ol ol {
    padding-top: 10px;
    padding-bottom: 0
}

.icmform .alert li {
    padding: 5px 0
}

.icmform .alert p+ul {
    padding-top: 10px
}

.icmform .addresstext {
    margin: 0;
    white-space: pre-line
}

.field_dateinput__items {
    display: inline
}

.field_dateinput__item {
    display: inline-block;
    margin-right: 10px
}

.field_dateinput__item label {
    display: block;
    width: auto;
    text-align: left;
    margin-bottom: 5px
}

@media(max-width: 850px) {
    .icmformleft .field_dateinput__item label,.icmformright .field_dateinput__item label {
        display:block
    }
}

.field_dateinput__item .icmvstext {
    max-width: 52px;
    width: 52px
}

.field_dateinput__item .icmstext {
    max-width: 85px;
    width: 85px
}

.icmform .error .field_dateinput__item label::after,.icmform .valid .field_dateinput__item label::after {
    content: none
}

.field_upload {
    position: relative
}

.icmfile__choose {
    position: absolute;
    width: 100px;
    height: 25px;
    top: 2px;
    margin: 10px;
    padding: 1px 6px;
    z-index: 1
}

.icmfile--haschoose {
    padding: 10px 10px 10px 120px;
    vertical-align: top;
    cursor: default
}

.icmform .icmfile--haschoose:-moz-read-only {
    color: initial;
    background-color: #fff
}

.btn--icmfile {
    margin-top: 0;
    vertical-align: middle
}

@media(max-width: 340px) {
    .g-recaptcha>div {
        width:280px!important
    }

    .g-recaptcha {
        transform: scale(0.8);
        -webkit-transform: scale(0.8);
        transform-origin: 0 0;
        -webkit-transform-origin: 0 0
    }
}

.grid--formcards {
    width: calc(100% + 20px);
    margin: 0 0 20px -10px
}

.grid--formcards[data-grid-mincolwidth="300"]>.grid__cell {
    min-width: 280px
}

.grid__cell--formcards {
    padding: 10px
}

.dialog--formcards .dialog__content {
    max-width: 500px
}

div[class*="--hint-exclamation-circle"] .icmguidancehint::before {
    content: "\e839"
}

div[class*="--hint-exclamation-triangle"] .icmguidancehint::before {
    content: "\e83b"
}

.icmform .field_text--prefix,.icmform .field_text--suffix,.icmform .field_textnostore--prefix,.icmform .field_textnostore--suffix,.icmform .field_number--prefix,.icmform .field_number--suffix {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.icmform .icmhorizontal .field_text--prefix,.icmform .icmhorizontal .field_text--suffix,.icmform .icmhorizontal .field_textnostore--prefix,.icmform .icmhorizontal .field_textnostore--suffix,.icmform .icmhorizontal .field_number--prefix,.icmform .icmhorizontal .field_number--suffix {
    max-width: 450px
}

.icmformtop .icmhorizontal .field_text--prefix,.icmformtop .icmhorizontal .field_text--suffix,.icmformtop .icmhorizontal .field_textnostore--prefix,.icmformtop .icmhorizontal .field_textnostore--suffix,.icmformtop .icmhorizontal .field_number--prefix,.icmformtop .icmhorizontal .field_number--suffix {
    max-width: 350px
}

.icmformleft .icmhorizontal .field_text--prefix label,.icmformleft .icmhorizontal .field_text--suffix label,.icmformleft .icmhorizontal .field_textnostore--prefix label,.icmformleft .icmhorizontal .field_textnostore--suffix label,.icmformleft .icmhorizontal .field_number--prefix label,.icmformleft .icmhorizontal .field_number--suffix label,.icmformright .icmhorizontal .field_text--prefix label,.icmformright .icmhorizontal .field_text--suffix label,.icmformright .icmhorizontal .field_textnostore--prefix label,.icmformright .icmhorizontal .field_textnostore--suffix label,.icmformright .icmhorizontal .field_number--prefix label,.icmformright .icmhorizontal .field_number--suffix label {
    max-width: 100%;
    width: 100%
}

.icmformtop .field_text--prefix label,.icmformtop .field_text--suffix label,.icmformtop .field_textnostore--prefix label,.icmformtop .field_textnostore--suffix label,.icmformtop .field_number--prefix label,.icmformtop .field_number--suffix label {
    width: 100%;
    max-width: none
}

.icmform .field_text--prefix .icmguidance,.icmform .field_text--suffix .icmguidance,.icmform .field_textnostore--prefix .icmguidance,.icmform .field_textnostore--suffix .icmguidance,.icmform .field_number--prefix .icmguidance,.icmform .field_number--suffix .icmguidance {
    width: 100%
}

.icmform .field_text--prefix input,.icmform .field_text--suffix input,.icmform .field_textnostore--prefix input,.icmform .field_textnostore--suffix input,.icmform .field_number--prefix input,.icmform .field_number--suffix input {
    flex: 1
}

@media(min-width: 850px) {
    .icmformtop .icmvertical .fielddiv_icmtext.field_text--prefix,.icmformtop .icmvertical .fielddiv_icmtext.field_text--suffix,.icmformtop .icmvertical .fielddiv_icmtext.field_textnostore--prefix,.icmformtop .icmvertical .fielddiv_icmtext.field_textnostore--suffix,.icmformtop .icmvertical .fielddiv_icmtext.field_number--prefix,.icmformtop .icmvertical .fielddiv_icmtext.field_number--suffix {
        max-width:50%
    }

    .icmformtop .icmvertical .fielddiv_icmtext.field_text--prefix input,.icmformtop .icmvertical .fielddiv_icmtext.field_text--suffix input,.icmformtop .icmvertical .fielddiv_icmtext.field_textnostore--prefix input,.icmformtop .icmvertical .fielddiv_icmtext.field_textnostore--suffix input,.icmformtop .icmvertical .fielddiv_icmtext.field_number--prefix input,.icmformtop .icmvertical .fielddiv_icmtext.field_number--suffix input {
        max-width: 100%;
        width: 100%
    }

    .icmformtop .icmvertical .fielddiv_icmstext.field_text--prefix,.icmformtop .icmvertical .fielddiv_icmstext.field_text--suffix,.icmformtop .icmvertical .fielddiv_icmstext.field_textnostore--prefix,.icmformtop .icmvertical .fielddiv_icmstext.field_textnostore--suffix,.icmformtop .icmvertical .fielddiv_icmstext.field_number--prefix,.icmformtop .icmvertical .fielddiv_icmstext.field_number--suffix {
        max-width: 25%
    }

    .icmformtop .icmvertical .fielddiv_icmstext.field_text--prefix input,.icmformtop .icmvertical .fielddiv_icmstext.field_text--suffix input,.icmformtop .icmvertical .fielddiv_icmstext.field_textnostore--prefix input,.icmformtop .icmvertical .fielddiv_icmstext.field_textnostore--suffix input,.icmformtop .icmvertical .fielddiv_icmstext.field_number--prefix input,.icmformtop .icmvertical .fielddiv_icmstext.field_number--suffix input {
        max-width: 100%;
        width: 100%
    }

    .icmformtop .icmvertical .fielddiv_icmvstext.field_text--prefix,.icmformtop .icmvertical .fielddiv_icmvstext.field_text--suffix,.icmformtop .icmvertical .fielddiv_icmvstext.field_textnostore--prefix,.icmformtop .icmvertical .fielddiv_icmvstext.field_textnostore--suffix,.icmformtop .icmvertical .fielddiv_icmvstext.field_number--prefix,.icmformtop .icmvertical .fielddiv_icmvstext.field_number--suffix {
        max-width: 10%
    }

    .icmformtop .icmvertical .fielddiv_icmvstext.field_text--prefix input,.icmformtop .icmvertical .fielddiv_icmvstext.field_text--suffix input,.icmformtop .icmvertical .fielddiv_icmvstext.field_textnostore--prefix input,.icmformtop .icmvertical .fielddiv_icmvstext.field_textnostore--suffix input,.icmformtop .icmvertical .fielddiv_icmvstext.field_number--prefix input,.icmformtop .icmvertical .fielddiv_icmvstext.field_number--suffix input {
        max-width: 100%;
        width: 100%
    }
}

.icmprefix,.icmsuffix {
    flex: 0 0 auto;
    font-size: 1rem;
    display: inline-block;
    padding: 10px;
    max-width: 100px;
    min-width: 50px;
    border: 1px solid #767676;
    background-color: #f3f2f1;
    text-align: center;
    margin: 0 0 20px 0
}

.icmprefix {
    border-right: 0
}

.icmsuffix {
    border-left: 0
}

.icmformdataimage img {
    max-width: 100%;
    height: auto
}

.grid--list {
    width: calc(100% + 40px);
    margin: 0 0 0 -20px;
    overflow: hidden
}

.grid__cell--listitem {
    padding: 20px
}

@media(min-width: 470px) {
    .grid--list.grid--1col .item {
        display:table
    }

    .grid--list.grid--1col .item__imagecontainer {
        display: table-cell;
        vertical-align: top;
        width: 170px;
        line-height: 1em
    }

    .grid--list.grid--1col .gi-responsiveimage--item {
        margin: 0 20px 0 0
    }

    .grid--list.grid--1col .item__content {
        display: table-cell;
        vertical-align: top
    }
}

.grid--myaccount {
    width: calc(100% + 20px);
    margin-left: -10px
}

.grid--myaccount .grid__cell--myaccountitem {
    padding: 0 10px
}

.gi-disclosure__content--block {
    padding: 0
}

.searchform {
    width: 100%;
    clear: both
}

.searchform__input {
    float: left;
    width: calc(100% - 60px)
}

.searchform__inputtxt {
    border: solid 1px #767676;
    font-family: inherit;
    background-color: #fff;
    font-size: 1em;
    white-space: normal;
    line-height: 1.6;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    margin: 0 0 20px 0;
    height: 50px
}

.searchform__button {
    float: left
}

.searchform__button .btn--search {
    border: solid 1px #ccc;
    border-left: 0;
    margin: 0;
    font-size: 20px;
    height: 50px
}

.searchsummary {
    padding: 10px 0;
    border-bottom: solid 1px #ccc
}

.searchsummary::after {
    content: "";
    display: block;
    clear: both
}

.searchsummary__text,.searchsummary__pages {
    display: inline-block
}

.searchsummary__pages {
    float: right
}

.searchsort {
    float: left;
    padding: 20px 0;
    width: 100%
}

.searchsort__text {
    margin-right: 10px
}

.searchsort__select {
    font-size: 1rem;
    height: 42px;
    margin-right: 5px
}

.searchresults {
    margin: 20px 0;
    list-style: none
}

.searchresults__item {
    margin: 0 0 20px 0;
    padding-left: 5px
}

.searchresults__itemlink,.searchresults__itemtitle {
    color: #1a0dac;
    font-size: 1.125rem;
    display: inline-block
}

.searchresults__itemtitle {
    margin: 0
}

.searchresults__itemlink:hover>.searchresults__itemtitle {
    text-decoration: underline
}

.searchresults__itemurl {
    display: block;
    color: #006620;
    font-size: 1rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word
}

.searchresults__itemurl strong {
    font-weight: bold;
    background-color: #ffff69
}

.searchresults__itemsummary {
    margin: 0;
    font-size: 1rem
}

.icmhighlight {
    background-color: #ffa
}

.searchoptions {
    border: 1px solid #ccc
}

.searchoptions--mobile {
    margin: 0 0 20px 0
}

.searchoptions--overflow {
    overflow-x: hidden;
    overflow-y: auto;
    margin: 10px 0 0 0;
    padding: 0 0 10px 0
}

.searchoptions--fixed {
    z-index: 7;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%
}

.searchoptions--fixed.searchoptions--open {
    height: 100%;
    box-sizing: border-box;
    overflow-y: auto;
    background-color: #fff
}

.searchoptions--overflow::-webkit-scrollbar-track {
    background-color: #fff;
    margin: 10px 0 0 0
}

.searchoptions--overflow::-webkit-scrollbar {
    width: 5px
}

.searchoptions--overflow::-webkit-scrollbar-thumb {
    border-radius: 20px;
    background-color: #666
}

.searchoptions__title {
    background-color: #f2f2f2;
    margin: 0;
    padding: 10px 30px 10px 10px;
    box-sizing: border-box
}

.searchoptions__title--open,.searchoptions__title--close {
    position: relative
}

.searchoptions--mobile .searchoptions__title:focus,.searchoptions--mobile .searchoptions__title:hover {
    cursor: pointer
}

.searchoptions__title--open::after {
    content: "\e808";
    position: absolute;
    right: 10px;
    top: 15px
}

.searchoptions__title--close::after {
    content: "\e807";
    position: absolute;
    right: 10px;
    top: 15px
}

.searchoptions__content {
    background-color: #fff;
    box-sizing: border-box
}

.searchoptions__content--close {
    display: none
}

.searchoptions__selected {
    padding: 10px;
    margin: 0
}

.searchoptions__label--selected {
    display: block;
    margin: 0 0 10px 0
}

.btn--facet,.cta-link--facet {
    padding: 7px 35px 7px 10px;
    text-align: left;
    margin: 0 5px 10px 0;
    font-size: 1.1rem
}

.cta-link--facet.cta-link--contrast {
    margin: 0;
    font-size: 1rem
}

.btn--facet::after,.cta-link--facet::after {
    position: absolute;
    top: 8px;
    right: 10px;
    font-size: 1.1rem
}

.cta-link--facet .cta-link__label {
    font-size: .8rem;
    display: block
}

.facet__list {
    margin: 0;
    padding: 0 10px;
    list-style: none;
    box-sizing: border-box;
    width: calc(100% - 10px);
    max-height: 150px;
    overflow-x: auto
}

.facet__link {
    display: block;
    margin: 5px 0;
    font-size: 1rem
}

.facet__link--selected {
    font-weight: bold
}

.facet__count {
    padding: 0 0 0 5px
}

.facet__count::before {
    content: "(";
    padding: 0 2px 0 0;
    vertical-align: text-bottom
}

.facet__count::after {
    content: ")";
    padding: 0 0 0 2px;
    vertical-align: text-bottom
}

.facet__link--selected::after {
    content: '\e840';
    padding: 0 0 0 5px;
    display: inline-block;
    vertical-align: text-bottom
}

.facet__link--selected .facet__count {
    display: none
}

.gi-accordion--facets {
    margin: 0;
    padding: 0
}

.gi-accordion--facets.gi-accordion--focus {
    outline-offset: 0
}

.gi-accordion--facets .gi-accordion__toggle,.gi-accordion--facets .gi-accordion__fallback {
    padding: 10px 30px 10px 10px;
    border-top: 1px solid #ccc
}

.gi-accordion--facets .gi-accordion__toggle::after,.gi-accordion--facets .gi-accordion__fallback::after {
    top: 15px;
    right: 10px
}

.gi-accordion--facets .gi-accordion__panelcontent {
    padding: 0 0 20px 0
}

.grid__cell--searchresults.grid__cell--cols3 .searchoptions--mobile {
    display: none
}

.grid--searchresults.grid--1col .grid__cell--refine {
    display: none
}

.grid--searchresults:not(.grid--1col) .grid__cell--facetsleft {
    padding: 0 0 0 40px
}

.grid--searchresults:not(.grid--1col) .grid__cell--facetsright {
    padding: 0 40px 0 0
}

.grid--searchgrid {
    width: calc(100% + 20px);
    margin-left: -10px;
    overflow: hidden;
    padding: 10px 0
}

.grid__cell--searchitem {
    padding: 10px
}

.grid__cell--searchitem .searchresults__itemurl {
    word-break: break-all
}

.contents {
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #bfc1c3
}

.contents__title,.contents__list {
    font-weight: 400;
    font-size: 1rem
}

.contents__list {
    margin-bottom: 20px
}

.contents__listitem {
    padding-top: 8px;
    list-style-type: none;
    margin-left: 25px;
    padding-right: 25px
}

.contents__listitem::before {
    content: "— ";
    margin-left: -25px;
    padding-right: 10px
}

.document-pagination {
    padding-right: 15px
}

.document-pagination .document-pagination__link {
    display: block;
    padding: 15px;
    padding-left: 25px;
    text-decoration: none;
    position: relative
}

.document-pagination__link:hover,.document-pagination__link:focus {
    background-color: #f8f8f8
}

.document-pagination__direction {
    display: block;
    font-size: 1.2rem;
    padding-left: 30px;
    position: relative;
    font-weight: 700
}

.document-pagination__direction::before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    margin-right: 15px
}

.document-pagination__link--next .document-pagination__direction::before {
    content: "\e827"
}

.document-pagination__link--prev .document-pagination__direction::before {
    content: "\e826"
}

.document-pagination__pagetitle {
    display: inline-block;
    text-decoration: underline;
    margin-left: 30px;
    font-size: 1rem
}

.document-print {
    font-size: 1rem;
    padding: 15px
}

.document-print::before {
    content: "\e817"
}

.document-print a {
    margin-left: 20px
}

.document-pagination,.document-print {
    float: left;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

@media(max-width: 640px) {
    .document-pagination__direction::before {
        font-size:.875rem
    }
}

@media print {
    .document-print,.document-pagination,.a-intro--document,.a-body--document,.template--document .breadcrumb {
        display: none
    }
}

.grid--am {
    width: calc(100% + 40px);
    margin-left: -20px
}

.grid--am-panel.grid--2col>.grid__cell--am:nth-child(2n+1) {
    clear: none
}

.grid__cell--am {
    padding: 0 20px 20px 20px
}

.grid--1col .grid__cell--am {
    padding: 0 20px 40px 20px
}

.am-linked .grid--1col .grid__cell--am {
    padding: 0 20px 10px 20px
}

.grid--am-accounts .grid__cell--am:last-child {
    padding: 0 20px
}

.block--am {
    padding: 0;
    margin: 0;
    border: 0
}

.block--am-accounts {
    padding: 15px 130px 15px 55px;
    position: relative;
    background-color: #fafafa;
    border: 1px solid #ccc;
    border-bottom: 0;
    margin: 0
}

.block--am-existing .block--am-accounts:last-child {
    border-bottom: 1px solid #ccc
}

.am-linked .block--am-accounts {
    border-bottom: 1px solid #ccc
}

.block--am-existing .block--am-accounts+.block--am-accounts {
    margin: 0
}

.block--am-accounts.block--am-locked {
    background-color: #e5e5e5;
    color: #666
}

.block--am-accounts .block__heading {
    margin: 0 0 5px 0
}

.block--am-accounts .block__summary {
    margin: 0
}

.block--am-accounts::before {
    content: " ";
    width: 30px;
    height: 30px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: auto 18px;
    position: absolute;
    top: 15px;
    left: 12px;
    border-radius: 50%
}

.block--am-siteuser::before,.block--am-icmsiteuser::before {
    background-color: #333;
    content: "\f2be";
    color: #fff;
    line-height: 30px;
    text-align: center;
    font-size: 20px
}

.block--am-mulitpleusers::before {
    background-color: #333;
    content: "\e84d";
    color: #fff;
    line-height: 30px;
    text-align: center;
    font-size: 16px
}

.block--am-amazon::before {
    background-color: #fcdd88;
    background-image: url('./resource/images/auth/amazon.png?v=638324490780000000')
}

.block--am-google::before {
    background-color: #fff;
    background-image: url('./resource/images/auth/google.png?v=638324490780000000')
}

.block--am-facebook::before {
    background-color: #4267b2;
    background-image: url('./resource/images/auth/facebook.png?v=638324490780000000')
}

.block--am-twitter::before {
    background-color: #0e7ab9;
    background-image: url('./resource/images/auth/twitter.png?v=638324490780000000')
}

.block--am-linkedin::before {
    background-color: #005582;
    background-image: url('./resource/images/auth/linkedin.png?v=638324490780000000');
    background-position: 6px 50%
}

.block--am-paypal::before {
    background-color: #fff;
    background-image: url('./resource/images/auth/paypal.png?v=638324490780000000');
    border: 1px solid #ccc
}

.block--am-mygovscot::before {
    background-color: #fff;
    background-image: url('./resource/images/auth/mygovscot.png?v=638324490780000000');
    background-size: 28px auto;
    border: 1px solid #ccc
}

.block--am-adfs::before {
    background-color: #fff;
    background-image: url('./resource/images/auth/adfs.png?v=638324490780000000');
    background-size: 16px auto;
    border: 1px solid #ccc
}

.btn--am.btn--am-remove {
    position: absolute;
    top: 15px;
    right: 15px;
    margin: 0
}

.nvp--am-accounts {
    display: block;
    padding: 10px 0 0 0
}

.nvp--am-accounts:first-child {
    padding: 0
}

.nvp--am-accounts .nvp__label,.nvp--am-accounts strong {
    width: 110px;
    display: inline-block
}

.am-linked .cta-link--am,.am-linked .btn--am {
    padding: 20px 40px;
    font-size: 1.1rem;
    text-align: center
}

.cta-link--am-newaccount::before {
    content: "\f2be";
    text-align: center;
    font-size: 20px;
    position: absolute;
    top: calc(50% - 10px);
    left: 30px;
    border-radius: 50%
}

.cta-link-am-newaccount::after {
    content: "\e807";
    right: 20px
}

.cta-link-am-return {
    margin: 10px 0;
    text-align: center;
    float: right
}

.am-linked__account .block--am-accounts {
    margin: 0 0 20px 0
}

.am-linked .cta-link-am-return {
    margin: 0 0 10px 0;
    text-align: center;
    float: right
}

.am-linked .grid--2col .btn--am-createaccount {
    width: calc(50% - 20px)
}

.btn--cancelauth {
    margin: 10px 0 0 0
}

.block--am-hide {
    opacity: 0;
    display: none;
    height: 0;
    -webkit-transition: opacity 1s linear;
    -moz-transition: opacity 1s linear;
    transition: opacity 1s linear
}

.block--am-selected {
    opacity: 1;
    display: block;
    height: auto;
    -webkit-transition: opacity 1s linear;
    -moz-transition: opacity 1s linear;
    transition: opacity 1s linear;
    color: #999
}

.c-clamp__links .cta-link,.c-clamp__links--nojs .btn {
    display: none
}

.c-clamp__links--nojs .cta-link {
    display: inline-block
}

.a-body__image {
    clear: both;
    box-sizing: initial
}

.a-body__image--right {
    float: right;
    padding: 0 0 20px 20px
}

.a-body__image--right+.a-body__image--right {
    clear: left
}

@media(max-width: 780px) {
    .a-body__image--right {
        float:none;
        padding: 0 0 20px 0;
        margin: 0
    }
}

.a-body__image--left {
    float: left;
    padding: 0 20px 20px 0
}

.a-body__image--left+.a-body__image--left {
    clear: right
}

@media(max-width: 780px) {
    .a-body__image--left {
        float:none;
        padding: 0 0 20px 0;
        margin: 0
    }
}

.a-body__image--thumbnail {
    width: 150px
}

.a-body__image--standard {
    width: 400px
}

.a-body__image--large {
    display: inline-block;
    max-width: 2000px
}

.a-body__image--original {
    width: 100%
}

.gi-responsiveimage--imageinline {
    margin: 0
}

.gi-responsiveimage--imageinline .gi-responsiveimage__caption {
    margin: 0;
    padding: 10px;
    background-color: #f1f1f1
}

.a-body__image-element {
    max-width: 100%;
    height: auto
}

.a-body__image--centre,.a-body__image--centre .gi-responsiveimage__imagewrapper {
    display: block;
    margin: 0 auto
}

.a-body__image--centre {
    padding: 0 0 20px 0
}

.a-body__image--inline {
    display: inline-block;
    padding: 0 0 20px 0
}

.a-body__imagebutton {
    margin: 0;
    padding: 0;
    border: 0;
    background: 0;
    text-align: left
}

.highlightbox {
    position: relative;
    margin: 0 0 20px 0;
    padding: 10px 50px 10px 35px;
    border: 1px solid;
    color: #000;
    background-color: #f1f1f1;
    border-color: #ccc;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.highlightbox::before {
    content: "\e839";
    position: absolute;
    top: 12px;
    left: 10px;
    font-size: 1.2rem
}

.highlightbox:has(.highlightbox__title)::before {
    top: 18px
}

.highlightbox__title,.a-body .highlightbox__title {
    margin: 0 0 10px 0
}

.imagegalleryinline__link {
    display: none
}

.imagegalleryinline__button,.imagegalleryinline__link--nojs {
    display: block
}

.imagegalleryinline__button--nojs {
    display: none
}

.imagegalleryinline__link,.imagegalleryinline__button {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    border: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #eee
}

.imagegalleryinline__link {
    line-height: 0
}

.imagegalleryinline__link:hover,.imagegalleryinline__link:focus,.imagegalleryinline__button:hover,.imagegalleryinline__button:focus {
    z-index: 1
}

.gi-responsiveimage--imagegallerylink,.gi-responsiveimage--imagegallerybutton {
    margin: 0;
    overflow: hidden
}

.gi-responsiveimage--imagegallerylink .gi-responsiveimage__image,.gi-responsiveimage--imagegallerybutton .gi-responsiveimage__image {
    object-fit: cover;
    object-position: center;
    transform: scale(1);
    transition: transform .25s ease-out
}

.imagegalleryinline__link:hover .gi-responsiveimage__image,.imagegalleryinline__link:focus .gi-responsiveimage__image,.imagegalleryinline__button:hover .gi-responsiveimage__image,.imagegalleryinline__button:focus .gi-responsiveimage__image {
    transform: scale(1.1)
}

.dialog--imagegalleryinline .dialog__content {
    width: calc(100% - 40px)
}

@media(min-width: 800px) {
    .dialog--imagegalleryinline .dialog__content {
        width:75%
    }
}

.dialog--imagegalleryinline .dialog__body {
    overflow: visible
}

.gi-carousel--imagegalleryinline {
    padding: 0
}

.gi-carousel--imagegalleryinline .gi-carousel__controls {
    margin: 0 0 20px 0
}

@media(min-width: 800px) {
    .gi-carousel--imagegalleryinline .gi-carousel__list {
        padding:0 44px
    }

    .gi-carousel--imagegalleryinline .gi-carousel__controls {
        position: static
    }

    .gi-carousel--imagegalleryinline .gi-carousel__progressbar {
        top: -10px;
        height: 10px
    }

    .gi-carousel--imagegalleryinline .gi-carousel__play {
        position: absolute;
        top: 10px;
        right: 54px
    }

    .gi-carousel--imagegalleryinline .gi-carousel__previous,.gi-carousel--imagegalleryinline .gi-carousel__next {
        position: absolute;
        top: 0;
        width: 44px;
        height: 100%;
        border: 0;
        font-size: 2rem
    }

    .gi-carousel--imagegalleryinline .gi-carousel__previous {
        left: 0
    }

    .gi-carousel--imagegalleryinline .gi-carousel__next {
        right: 0
    }
}

.gi-carousel--imagegalleryinline .gi-carousel__slide {
    padding: 0;
    min-height: 120px
}

.gi-carousel--imagegalleryinline .gi-carousel__links {
    padding: 20px 20px 0 20px
}

@media(min-width: 800px) {
    .gi-carousel--imagegalleryinline .gi-carousel__linkswrapper {
        position:absolute;
        width: 100%;
        bottom: -6px
    }
}

.gi-carousel--imagegalleryinline .gi-carousel__itemlinkbtn {
    margin: 0 0 10px 0
}

.gi-responsiveimage--imagegallerycarousel {
    margin: 0
}

.gi-disclosure--body {
    border-bottom: 1px solid #ccc
}

.gi-disclosure--body+p,.gi-disclosure--body+h2,.gi-disclosure--body+h3,.gi-disclosure--body+h4,.gi-disclosure--body+ul,.gi-disclosure--body+ol,.gi-disclosure--body+table {
    margin-top: 20px
}

.gi-disclosure--body .gi-disclosure__toggle {
    background-color: #fff;
    padding: 20px 40px 20px 0;
    font-size: inherit;
    color: inherit
}

.gi-disclosure--body .gi-disclosure__toggle:hover,.gi-disclosure--body .gi-disclosure__toggle:focus {
    background-color: #fff;
    text-decoration: underline
}

.gi-disclosure--body .gi-disclosure__toggle::after {
    content: "\e807";
    position: absolute;
    top: 20px;
    left: auto;
    right: 10px;
    font-size: 20px
}

.gi-disclosure--body .gi-disclosure__toggle[aria-expanded="true"]::after {
    content: "\e808"
}

.gi-disclosure__heading {
    margin: 0
}

.gi-disclosure--body .gi-disclosure__content {
    padding: 10px 0
}

.gi-disclosure .gi-disclosure:last-child {
    border: 0
}

.gi-disclosure__content p:only-child {
    margin: 0 0 10px 0
}

.gi-jumplist {
    margin: 0 0 20px 0
}

.gi-jumplist--nojs {
    display: none
}

.gi-jumplist__title {
    margin: 0 0 10px 0;
    font-weight: bold
}

.gi-jumplist__list,.a-body .gi-jumplist__list {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: unset
}

.gi-jumplist__listitem {
    margin-left: 25px;
    padding-right: 25px
}

.gi-jumplist__listitem::before {
    content: "— ";
    margin-left: -25px;
    padding-right: 10px
}

.gi-jumplist__list--has-both .gi-jumplist__listitem--h3 {
    margin-left: 50px
}

.as-help {
    box-sizing: border-box;
    z-index: 997;
    background-color: #333;
    width: 100%;
    font-size: 1rem
}

.as-help .container {
    padding: 0 10px
}

.grid__cell--as {
    position: relative;
    padding: 10px 0
}

.as-help[data-as-position="top"] {
    top: 0;
    left: 0
}

.as-help[data-as-position="bottom"] {
    bottom: 0;
    left: 0
}

.nvp--as {
    display: block;
    color: #fff;
    padding: 0;
    min-height: 43px
}

.nvp--as .nvp__label {
    font-weight: normal;
    display: inline;
    vertical-align: middle
}

.nvp--as .nvp__value {
    font-weight: bold;
    display: inline;
    vertical-align: middle
}

.nvp--as::before {
    padding: 0 5px 0 0;
    vertical-align: middle;
    font-size: 1.1rem;
    color: #ccc;
    line-height: 43px
}

.nvp--as-user::before {
    content: "\f2be"
}

.nvp--as-task:before {
    content: "\e844"
}

.nvp--as-time:before {
    content: "\e823"
}

.as-help[data-as-icon="only"] .nvp__value--as-time {
    padding: 0 10px 0 0
}

.as-help__link {
    color: #fff;
    font-weight: bold
}

.as-help__link:hover {
    color: #fff;
    text-decoration: none
}

.as-help .cta-link::before {
    position: relative;
    font-size: 16px;
    left: auto;
    top: auto;
    line-height: 30px;
    width: 30px;
    height: 30px;
    text-align: center;
    padding: 0
}

.as-help .cta-link::after {
    content: "";
    padding: 0;
    position: relative
}

.as-help .cta-link--complete:before {
    content: "\e80a"
}

.as-help .cta-link--play:before {
    content: "\e830"
}

.as-help .cta-link--pause:before {
    content: "\e82f"
}

.as-help .cta-link--stop:before {
    content: "\e808"
}

.as-help .cta-link--home:before {
    content: "\e80e";
    font-size: 24px
}

.as-help__user {
    color: #fff;
    line-height: 1
}

.as-help[data-as-icon="only"] .cta-link--as {
    background-color: transparent;
    margin: 0;
    padding: 0;
    display: block;
    height: 40px;
    width: 40px;
    line-height: 40px;
    color: #fff;
    text-align: center
}

.as-help[data-as-icon="only"] .as-help__actions .cta-link--as {
    display: inline-block;
    vertical-align: baseline;
    padding: 0
}

.as-help[data-as-icon="only"] .cta-link--home {
    position: absolute;
    top: 10px;
    padding: 0;
    right: 10px;
    height: 45px;
    font-size: 1.3rem
}

.as-help[data-as-icon="only"] .cta-link__text {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.as-help[data-as-icon="only"] .cta-link--as:before {
    background-color: #fff;
    border-radius: 50%;
    color: #000
}

.as-help[data-as-icon="only"] .cta-link--as:hover {
    box-shadow: unset
}

.as-help[data-as-icon="only"] .cta-link--as:hover:before {
    background-color: #666;
    color: #fff
}

.as-help[data-as-icon="text"] .cta-link--as {
    padding: 0 10px 0 5px;
    margin: 0;
    line-height: 1;
    display: inline-block
}

.as-help[data-as-icon="text"] .cta-link--as .cta-link__text {
    display: inline-block;
    line-height: 40px;
    vertical-align: middle
}

.as-help[data-as-icon="text"] .grid--as.grid--1col .cta-link--as {
    float: right;
    margin: 0;
    min-width: 260px
}

.as-help[data-as-icon="only"] .grid__cell--as-details {
    border-left: 2px solid #fff;
    min-height: 40px
}

.as-help[data-as-icon="only"] .nvp--as-user {
    width: calc(100% - 50px);
    margin: 0 40px 0 0;
    line-height: 43px
}

.as-help[data-as-icon="only"] .cta-link--as.cta-link--stop {
    position: absolute;
    top: 5px;
    line-height: 1;
    left: 0
}

.as-help[data-as-icon="text"] .grid__cell--as-assisting {
    position: static
}

.as-help[data-as-icon="text"] .grid__cell--as-assisting.grid__cell--cols3 {
    padding: 10px
}

.as-help[data-as-icon="text"] .grid__cell--as-assisting.grid__cell--cols1 {
    position: relative
}

.as-help[data-as-icon="text"] .grid__cell--as-assisting.grid__cell--cols1 .cta-link--stop {
    position: relative;
    left: auto;
    bottom: auto
}

.as-help[data-as-icon="only"] .grid__cell--as-details {
    padding: 10px 50px 10px 15px
}

.as-help[data-as-icon="only"] .grid__cell--cols1.grid__cell--as-details {
    border-left: 0 solid #fff;
    border-top: 2px solid #fff;
    padding: 10px 0
}

.as-help[data-as-icon="only"] .as-help__actions {
    display: inline-block;
    line-height: 43px;
    vertical-align: middle
}

.as-help[data-as-icon="only"] .as-help__actions--tasks {
    width: calc(100% - 160px)
}

.as-help[data-as-icon="only"] .as-help__actions--time {
    text-align: right;
    float: right
}

.as-help[data-as-icon="only"] .as-help__actions .nvp {
    display: inline-block;
    vertical-align: middle
}

.as-help[data-as-icon="only"] .grid__cell--cols1.grid__cell--as-details .nvp--as-task {
    padding: 0
}

.as-help[data-as-icon="text"] .grid__cell--as-details {
    border-left: 3px solid #fff;
    padding: 10px 20px
}

.as-help[data-as-icon="text"] .grid__cell--as-details.grid__cell--cols1 {
    border-left: 0;
    border-top: 3px solid #fff;
    padding: 0
}

.as-help[data-as-icon="text"] .as-help__actions {
    display: inline-block;
    vertical-align: top;
    padding: 0 0 10px 0
}

.as-help[data-as-icon="text"] .as-help__actions:first-child {
    padding: 0 10px 0 0
}

.as-help[data-as-icon="text"] .as-help__actions--time {
    padding: 0 180px 0 0
}

.as-help[data-as-icon="text"] .grid--as.grid--1col .as-help__actions {
    display: block;
    padding: 10px 0 0 0
}

.as-help[data-as-icon="text"] .grid__cell--as .nvp--as-user {
    display: block
}

.as-help[data-as-icon="text"] .grid__cell--as.grid__cell--cols1 .nvp--as {
    display: inline-block
}

.as-help[data-as-icon="text"] .grid__cell--as.grid__cell--cols1 .nvp--as-task {
    padding: 0
}

.as-help[data-as-icon="text"] .cta-link--home {
    position: absolute;
    bottom: 10px;
    right: 20px;
    padding: 0 10px 0 5px
}

.as-help[data-as-icon="text"] .cta-link--home:before {
    padding: 0 5px 0 0
}

.as-help[data-as-icon="text"] .grid--as.grid--1col+.cta-link--home {
    position: relative;
    width: 100%;
    margin: 10px 0;
    bottom: auto;
    right: auto
}

.as-bannersearch {
    vertical-align: middle
}

.as-bannersearch::before {
    content: "\f2be";
    padding: 0 5px 0 0;
    font-size: 1.1rem;
    color: #ccc;
    line-height: 2.5rem;
    height: 43px
}

.grid--as-bannersearch {
    vertical-align: middle;
    width: calc(100% - 30px);
    display: inline-block
}

.grid__cell--as-bannersearch-label .grid__cellwrap {
    vertical-align: middle
}

.as-bannersearch__label {
    display: inline-block;
    clip: rect(0 0 0 0);
    clip: unset;
    clip-path: none;
    height: auto;
    line-height: 2.5rem;
    margin: 0;
    overflow: visible;
    position: relative;
    color: #fff;
    text-align: right;
    width: 100%
}

.as-bannersearch__input {
    font-size: 1rem;
    margin: 0 0 0 10px;
    padding: 8px 10px;
    width: calc(100% - 75px);
    display: inline-block;
    height: 43px;
    box-sizing: border-box;
    border: solid 1px #ccc;
    background-color: #fff;
    line-height: 1.6;
    white-space: normal;
    vertical-align: top
}

.btn--as-bannersearch {
    padding: 8px 15px;
    margin: 0;
    height: 43px;
    border: solid 1px #ccc;
    border-left: 0;
    position: relative;
    left: -3px
}

.btn--as-bannersearch::after {
    font-size: 120%
}

.btn--as-bannersearch .btn__text {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.grid__cell--as-assisting.grid__cell--cols1 .as-bannersearch {
    margin-right: 30px
}

.grid__cell--as-assisting.grid__cell--cols1 .grid__cell--as-bannersearch-label {
    width: 15%
}

.grid__cell--as-assisting.grid__cell--cols1 .grid__cell--as-bannersearch-input {
    width: 85%
}

@media(max-width: 850px) {
    .as-bannersearch__label {
        display:block;
        visibility: visible;
        border: 0;
        clip: rect(0 0 0 0);
        clip: rect(0,0,0,0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px
    }

    .grid__cell--as-assisting.grid__cell--cols1 .grid__cell--as-bannersearch-input {
        width: 100%
    }
}

@media(max-width: 590px) {
    .as-help[data-as-icon="only"] .grid__cell--as.grid__cell--cols1 .nvp__label {
        display:block;
        visibility: visible;
        border: 0;
        display: block;
        clip: rect(0px 0 0 0);
        clip: rect(0px,0px,0px,0px);
        clip-path: polygon(0px 0,0px 0,0px 0,0px 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px
    }

    .nvp--as-user:after {
        content: ""
    }

    .nvp--as .nvp__label {
        display: block;
        visibility: visible;
        border: 0;
        clip: rect(0 0 0 0);
        clip: rect(0,0,0,0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px
    }

    .as-help[data-as-icon="only"] .grid__cell--cols1.grid__cell--as-details {
        padding: 0
    }

    .as-help[data-as-icon="only"] .as-help__actions--tasks,.as-help[data-as-icon="only"] .as-help__actions--time {
        width: 100%;
        display: block
    }

    .as-help[data-as-icon="only"] .as-help__actions--time {
        border-top: 2px solid #fff
    }

    .as-help[data-as-icon="only"] .as-help__actions .cta-link--as {
        float: right;
        padding: 5px 0;
        height: 55px
    }

    .as-help[data-as-icon="only"] .grid__cell--cols1.grid__cell--as-details .nvp--as {
        padding: 5px 0;
        width: calc(100% - 40px)
    }

    .as-help[data-as-icon="only"] .nvp--as-task:before,.as-help[data-as-icon="only"] .nvp--as-time:before,.as-help[data-as-icon="only"] .nvp--as-user:before {
        padding: 0 15px 0 0
    }

    .as-help[data-as-icon="only"] .nvp__value {
        display: inline-block;
        width: calc(100% - 45px);
        line-height: 1.1;
        vertical-align: middle;
        margin: -5px 0 0 0
    }

    .as-help[data-as-icon="only"] .as-help__actions--time {
        text-align: left;
        float: none
    }
}

@media(max-width: 570px) {
    .as-help[data-as-icon="text"] .grid--as.grid--1col .cta-link--as {
        width:100%;
        display: block
    }

    .as-help[data-as-icon="text"] .grid__cell--cols1.grid__cell--as-details {
        padding: 0
    }
}

.block--assistedservice .grid__cell {
    padding: 0
}

.block--assistedservice .grid--card .grid__cell {
    padding: 20px 10px 0 10px
}

.block--assistedservice .grid--card .card .grid__cell {
    padding: 0
}

.block--assistedservice .searchsummary--userrequests {
    margin: 10px 0 0 0
}

.block--assistedservice-usersearch .grid__cell {
    padding: 0
}

.block--assistedservice .grid__cell--viewall.grid__cell--cols1 .cta-link {
    display: block;
    margin: 0 0 10px 0
}

.block--assistedservice .grid__cell--viewall.grid__cell--cols1 .grid--useractions .cta-link {
    margin: 0
}

.block--assistedservice-usersearch .block__summary {
    margin: 10px 0
}

.block--assistedservice-usersearch .searchform__inputtxt {
    margin: 0
}

.pausedinteraction {
    background: #fff;
    border: 1px solid #ccc;
    border-bottom: 0;
    padding: 10px 10px 0 10px;
    list-style: none
}

.pausedinteraction__description {
    margin: 0
}

.pausedinteraction:nth-child(even) {
    background: transparent
}

.pausedinteraction:last-child {
    border-bottom: 1px solid #ccc
}

.cta-link--as-resume {
    padding-left: 35px;
    padding-right: 15px
}

.cta-link--as-resume:hover {
    color: initial;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.cta-link--as-resume::after {
    content: ''
}

.cta-link--as-resume::before {
    content: '\e830'
}

.searchsummary--userresults {
    padding: 30px 0 20px 0
}

.searchsummary--userresults .searchsummary__text {
    font-weight: bold;
    font-size: 1.1rem
}

.block--usersearch-result {
    background-color: #fff;
    margin: 20px 0 0 0
}

.block--usersearch-result .cta-link--contrast:focus {
    box-shadow: inset 0 0 20em rgba(0,0,0,0.8)
}

.block--usersearch-result .nvp {
    margin: 10px 0 0 0
}

.block--usersearch-result .nvp__label {
    padding: 0 10px 0 0
}

.block--usersearch-result .nvp__value {
    display: block;
    overflow-wrap: break-word;
    word-wrap: break-word;
    padding: 0 10px 0 0
}

.block--usersearch-result .cta-link {
    margin: 0
}

.accordion--userresults {
    position: relative;
    border: 0 solid #ccc;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    margin: 20px 0 0 0;
    overflow: hidden
}

.accordion--userresults .accordion__heading {
    box-sizing: border-box;
    border: 1px solid #ccc;
    background-color: #fff;
    padding: 10px;
    display: block;
    color: inherit;
    width: 100%;
    text-align: left;
    font-size: 1.1rem;
    font-weight: bold;
    font-family: inherit;
    cursor: pointer
}

.accordion--userresults.accordion--open .accordion__heading {
    border-bottom: 0;
    margin: 0
}

.accordion--userresults .accordion__content {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    background-color: #fff;
    display: none;
    border: 0
}

.accordion--userresults .accordion__heading::after {
    position: absolute;
    right: 0;
    top: 0;
    line-height: 40px;
    width: 40px;
    height: 40px;
    display: block;
    font-weight: bold;
    text-align: center;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    font-size: 150%
}

.accordion--userresults .accordion__heading::after {
    content: "+"
}

.accordion--userresults.accordion--open .accordion__heading::after {
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg)
}

.accordion--userresults .datatable {
    margin: 0
}

.paging--usersearch {
    padding: 40px 0 20px 0
}

.dialog--usersearch .dialog__content {
    overflow: visible;
    max-height: none;
    margin-bottom: 10px
}

.dialog--usersearch .dialog__header {
    width: calc(100% - 200px)
}

.accordion__content td,.accordion__content th {
    padding: 10px
}

.dialog--usersearch .icmformdata__table {
    width: 100%;
    border: 0 solid #fff
}

.dialog--usersearch .icmformdata__cell {
    width: 50%;
    vertical-align: top;
    box-sizing: border-box;
    padding: 10px 0;
    border: 0 solid #fff
}

.dialog--usersearch .icmformdata__cell--value {
    word-break: break-all
}

.dialog--usersearch .icmformdata__cell--multi {
    font-weight: bold;
    font-size: 1.125rem;
    border-bottom: 1px solid #ccc;
    padding: 30px 10px 10px 0
}

.dialog--usersearch .icmformdata__row:first-of-type .icmformdata__cell--multi:first-of-type {
    padding: 0 10px 10px 0
}

.dialog--usersearch .icmformdata {
    margin: 20px 0 0 0;
    padding: 0
}

.dialog--usersearch .icmformdata__cell {
    width: auto
}

.dialog--usersearch .icmformdata__cell--label {
    font-weight: bold;
    width: 100px
}

.dialog--usersearch .block--useractions {
    padding: 10px 10px 0 10px;
    margin: 20px 0 0 0
}

.accordion--userresults .grid--3col>.grid__cell:nth-child(3n+1) .grid__cellwrap,.accordion--userresults .grid--3col>.grid__cell:nth-child(3n) .grid__cellwrap {
    padding: 0
}

.dialog--usersearch .grid--useractions {
    width: calc(100% + 10px);
    margin-left: -5px
}

.dialog--usersearch .grid--useractions .grid__cell {
    padding: 0
}

.dialog--usersearch .grid--useractions .grid__cellwrap {
    padding: 0 5px 10px 5px
}

.dialog--usersearch .grid--useractions .cta-link {
    margin: 0
}

.dialog--usersearch .cta-link--startassisting,.dialog--usersearch .btn--stopassisting {
    position: absolute;
    top: 20px;
    right: 60px;
    margin: 0;
    background-color: #004e00;
    color: #fff
}

.dialog--usersearch .btn--stopassisting {
    background-color: #4e0000
}

.dialog--usersearch .datatable__content--recentrequests {
    width: 100%
}

.dialog--usersearch .datatable {
    border: 1px solid #ccc
}

.dialog--usersearch .datatable__row--header {
    border: 1px solid #ccc;
    padding: 10px;
    text-align: left;
    background-color: #DDD
}

@media(max-width: 590px) {
    .dialog--usersearch .dialog__header {
        width:calc(100% - 20px)
    }

    .dialog--usersearch .cta-link--startassisting,.dialog--usersearch .btn--stopassisting {
        position: relative;
        top: auto;
        right: auto;
        margin: 10px 0 0 0
    }
}

.as-help .container {
    max-width: 100%
}

.as-help[data-as-icon="only"] .nvp__value--as-time {
    width: calc(100% - 55px)
}

@media screen and (max-width: 1135px) {
    .as-help .grid--12col[data-grid-mincolwidth="90"]>.grid__cell {
        width:100%;
        clear: both;
        padding: 10px 0
    }

    .as-help .grid--12col[data-grid-mincolwidth="90"]>.grid__cell--as-details {
        border: 0;
        border-top: 2px solid #fff
    }

    .as-help .grid--12col[data-grid-mincolwidth="90"]>.grid--as-bannersearch {
        width: calc(100% - 75px)
    }

    .as-help .grid--12col[data-grid-mincolwidth="90"] .grid__cell--as-bannersearch-label {
        width: 1px;
        height: 1px;
        overflow: hidden
    }
}

@media screen and (max-width: 590px) {
    .as-help .grid--12col[data-grid-mincolwidth="90"] .as-help__actions .nvp {
        width:calc(100% - 78px)
    }

    .as-help .grid--12col[data-grid-mincolwidth="90"] .nvp__value {
        width: calc(100% - 90px);
        margin: -2px 0 0 0
    }

    .as-help .grid--12col[data-grid-mincolwidth="90"] .as-help__actions .nvp {
        padding: 0
    }

    .as-help .grid--12col[data-grid-mincolwidth="90"] .as-help__actions--time {
        float: left;
        padding-top: 10px
    }

    .as-help .grid--12col[data-grid-mincolwidth="90"] .as-help__actions .cta-link--as {
        padding: 0
    }
}

.a-details {
    margin: 0 0 20px 0
}

.nvp--blog-created .nvp__label {
    font-weight: normal
}

.nvp--blog-categories {
    display: inline-block
}

.nvp--blog-categories::before {
    content: "-";
    padding-right: .25rem
}

.nvp--blog-categories .nvp__value+.nvp__value:before {
    content: ", ";
    vertical-align: unset;
    margin-left: -2px
}

.nvp--blog-modified {
    font-size: .9rem;
    margin: 0 0 20px 0;
    clear: both
}

.nvp--blog-modified .nvp__date {
    display: inline-block;
    vertical-align: top
}

.a-body.a-body--blog {
    padding: 0 0 10px 0
}

.a-pagination {
    margin: 20px 0 0 0
}

.a-pagination .a-pagination__link {
    display: block;
    padding: 20px;
    box-sizing: border-box;
    text-decoration: none;
    position: relative;
    width: calc(100% + 34px);
    margin-left: -17px
}

.a-pagination__link:hover,.a-pagination__link:focus {
    background-color: #f8f8f8
}

.a-pagination__direction {
    display: block;
    font-size: 1.2rem;
    line-height: 1.3;
    padding-left: 20px;
    position: relative;
    font-weight: 700
}

.a-pagination__direction::before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -4px;
    margin-right: 15px
}

.a-pagination__link--next .a-pagination__direction::before {
    content: "\e827"
}

.a-pagination__link--prev .a-pagination__direction::before {
    content: "\e826"
}

.a-pagination__pagetitle {
    display: inline-block;
    text-decoration: underline;
    margin-left: 20px;
    font-size: 1rem;
    line-height: 1.25
}

.comments {
    margin: 20px 0 0 0
}

.comment {
    position: relative
}

.comment:not(:first-child) {
    margin: 30px 0 0 0
}

.comment__details {
    width: calc(100% - 100px)
}

.comment__author {
    font-weight: bold
}

.comment__date {
    font-size: .9rem
}

.comment__body {
    margin: 10px 0
}

.comment__link {
    position: absolute;
    right: 0;
    top: 0
}

@media(max-width: 500px) {
    .comment__link {
        position:relative;
        right: 0;
        top: 0
    }
}

.cta-link--comment-add {
    margin: 20px 0;
    padding-left: 35px;
    padding-right: 20px
}

.cta-link--comment-add:after {
    content: "\e807";
    left: 10px;
    right: auto;
    line-height: 1
}

.grid--card:not(.grid--1col) .card--blog .nvp--blog-categories {
    display: block
}

.grid--card:not(.grid--1col) .card--blog .nvp--blog-categories::before {
    content: "";
    padding-right: 0
}

.card--blog .card__content {
    padding: 0 20px 10px 20px
}

.card--blog .card__imagecontainer {
    margin: 10px 0;
    height: 180px;
    overflow: hidden;
    text-align: center;
    background-color: #e5e5e5
}

.card--blog .card__image {
    height: 100%;
    width: auto;
    max-width: none
}

.card--blog .nvp {
    margin: 0;
    z-index: 2;
    position: relative
}

.card--blog .nvp__label,.card--blog .nvp__value {
    vertical-align: bottom
}

.card--blog .card__actions {
    padding: 0
}

.card--blog .cta-link {
    display: block
}

.card--blog .cta-link.cta-link--card:first-child {
    background-color: transparent;
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-top: 10px;
    z-index: 2
}

.card--blog .cta-link-card:after {
    content: ""
}

.cta-link--form {
    padding: 12px 20px;
    line-height: 1.6;
    font-size: 1em;
    margin-bottom: 20px
}

.cta-link--form:after {
    content: ""
}

@media(max-width: 500px) {
    .grid--tickets.grid--5col>.grid__cell--cols3 {
        width:100%
    }

    .grid--tickets.grid--5col>.grid__cell--cols2 {
        width: 100%;
        text-align: left
    }
}

.grid__cell--right.grid__cell--cols2 .booking-ticket__select {
    box-sizing: content-box
}

.booking-ticket__price {
    min-width: 140px
}

.booking-ticket__select .booking-ticket__button--plus {
    left: auto;
    right: 10px
}

.grid__cell--casesearch-daterange {
    padding: 10px 10px 0 10px
}

.grid__cell--casesearch-daterange .block__summary {
    margin: 0 0 10px 0
}

.casesearch {
    padding: 20px 0
}

.gi-disclosure--casesearch-filter {
    border: 1px solid #ccc;
    background-color: #f2f2f2;
    margin: 0 0 20px 0
}

.gi-disclosure--casesearch-filter .gi-disclosure__toggle {
    background-color: #f2f2f2;
    padding: 10px;
    font-size: 1.5rem
}

.gi-disclosure--casesearch-filter .gi-disclosure__toggle::after {
    top: 10px;
    left: auto;
    right: 20px
}

.gi-disclosure--casesearch-filter .gi-disclosure__content {
    padding: 0 10px
}

.gi-disclosure--casesearch-filter .casesearch__summary {
    margin: 0 0 10px 0
}

.icmform--casesearch,.icmform.icmform--casesearch {
    background-color: #f2f2f2;
    margin: 0
}

.gi-disclosure--casesearch-filter .casesearch-postcodequery-list {
    display: inline-block;
    max-width: calc(100% - 120px)
}

.gi-disclosure--casesearch-filter .casesearch-postcodequery-radius {
    display: inline-block
}

.gi-disclosure--casesearch-refine {
    margin: 0
}

.gi-disclosure--casesearch-refine .gi-disclosure__toggle,.gi-disclosure--casesearch-refine .gi-disclosure__fallback {
    background-color: transparent;
    padding: 10px 20px 10px 30px;
    font-size: 1.1rem
}

.gi-disclosure--casesearch-refine .gi-disclosure__toggle::after {
    left: 0
}

.gi-disclosure--casesearch-refine .gi-disclosure__content {
    padding: 10px 0 0 0;
    border-top: 1px solid #ccc
}

.grid--casesearch-filters {
    width: calc(100% + 40px);
    margin-left: -20px
}

.grid--casesearch-filters .grid__cell {
    padding: 0 20px
}

.grid--casesearch-filters.grid--2col .grid__cell--casesearch-userfilter {
    border-left: 1px solid #ccc
}

.grid--casesearch-filters.grid--1col .grid__cell--casesearch-userfilter {
    border-top: 1px solid #ccc;
    padding: 20px 20px 0 20px
}

.icmform--casesearch input,.icmform--casesearch select,.icmform--casesearch .chosen-container-multi .chosen-choices {
    margin: 0 0 10px 0;
    border-color: #767676
}

.icmltext--casesearch {
    margin: 0
}

.btn--casesearch {
    margin: 10px 0;
    position: relative
}

.casesearch__dateselection {
    display: none
}

.grid--2col.grid--casesearch-filters .casesearch__daterange {
    width: calc(50% - 10px);
    float: left
}

.grid--2col.grid--casesearch-filters .casesearch__daterange:first-child {
    margin-right: 20px
}

.gi-tabs--casesearch {
    margin: 20px 0
}

.gi-tabs--casesearch .gi-tabs__tab {
    font-size: 1.2rem;
    padding: 15px 20px;
    margin-right: 5px;
    line-height: 1.5
}

.gi-tabs--casesearch .gi-tabs__tab[aria-selected="true"] {
    font-weight: bold
}

.gi-tabs__tab--casesearch-list::before {
    content: "\f0c9";
    font-weight: normal;
    padding: 0 5px 0 0;
    display: inline-block
}

.gi-tabs__tab--casesearch-map::before {
    content: "\e819";
    padding: 0 5px 0 0;
    display: inline-block
}

.gi-tabs--casesearch .gi-tabs__panel {
    padding: 10px
}

.gi-tabs__panel--casesearch-map>.alert {
    padding-top: 20px;
    padding-bottom: 20px
}

.gi-tabs__panel--casesearch-map>.alert::before {
    top: 20px
}

.gi-tabs__panel--casesearch-map>.alert:last-child {
    margin-bottom: 0
}

.grid--casesearch-list {
    width: calc(100% + 20px);
    margin-left: -10px
}

.grid--casesearch-list .grid__cell {
    padding: 0 10px
}

.casesearch__title--results {
    width: 100%;
    margin: 0
}

.casesearch__summary {
    display: inline-block;
    margin: 0 20px 10px 0;
    width: 100%
}

.casesearch__postfilters {
    display: inline-block;
    width: 100%
}

.casesearch__postfilters .btn--pill {
    display: inline-block
}

.casesearch__postfilters .btn--pill:hover,.casesearch__postfilters .btn--pill:focus {
    color: inherit
}

.gi-case {
    border: 1px solid #ccc;
    padding: 10px;
    position: relative;
    margin: 0 0 20px 0;
    float: left;
    width: 100%;
    box-sizing: border-box;
    font-size: 1rem
}

.grid--casesearch-list.grid--3col .gi-case {
    box-shadow: 0 4px 8px -2px rgb(9 30 66 / 25%),0 0 1px rgb(9 30 66 / 31%)
}

.grid--casesearch-list.grid--1col .gi-case {
    border: 0;
    border-bottom: 1px solid #ccc;
    padding: 10px;
    margin: 0
}

.grid--casesearch-list.grid--1col .grid__cell:nth-child(even) .gi-case {
    background-color: #f5f5f5
}

.gi-case__title--name {
    width: calc(100% - 180px);
    margin: 0
}

.gi-case__content {
    float: left;
    width: 100%;
    clear: both
}

.gi-case__email {
    font-size: 1rem;
    font-weight: normal
}

.gi-case__ref {
    position: absolute;
    top: 5px;
    right: 5px;
    background-color: #e5e5e5;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-radius: 15px;
    padding: 5px 10px;
    font-size: .9rem
}

.gi-case .nvp {
    display: block
}

.gi-case .nvp__label {
    display: inline-block;
    width: 110px;
    line-height: 1.2
}

.gi-case .nvp__value {
    display: inline-block;
    width: calc(100% - 115px)
}

@media(max-width: 760px) {
    .gi-case .nvp__label,.gi-case .nvp__value {
        display:block;
        width: 100%
    }
}

.gi-case__casedetails {
    border-top: 1px solid #ccc;
    margin: 10px 0 0 0;
    padding: 10px 0 0 0
}

.gi-case__details {
    position: relative;
    padding-right: 30px;
    box-sizing: border-box
}

.gi-case__details--case::before {
    content: "\f0f6";
    position: absolute;
    top: 0;
    right: 8px
}

.gi-case__details--user::before {
    content: "\f2be";
    position: absolute;
    top: 0;
    right: 8px
}

.gi-case__heading {
    border-bottom: 1px solid #ccc;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0
}

.gi-case .btn--case {
    display: block;
    margin: 10px 0 0 0;
    position: static;
    float: left;
    clear: both
}

.gi-case .btn--case::before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 1
}

.grid--casesearch-list.grid--3col .gi-case__details--case {
    border-bottom: 1px solid #ccc;
    padding: 0 30px 10px 0;
    margin: 0 0 10px 0
}

.grid--casesearch-list.grid--1col .gi-case__details--user {
    border-left: 1px solid #ccc;
    padding-left: 10px
}

.grid--casesearch-list.grid--1col .gi-case__content {
    display: table;
    width: 100%
}

.grid--casesearch-list.grid--2col .gi-case__details,.grid--casesearch-list.grid--1col .gi-case__details {
    width: 49%;
    display: table-cell;
    padding-right: 30px;
    vertical-align: top
}

@media(max-width: 750px) {
    .grid--casesearch-list.grid--2col .gi-case__details,.grid--casesearch-list.grid--1col .gi-case__details {
        width:100%;
        display: inline-block
    }

    .grid--casesearch-list.grid--1col .gi-case__details--user {
        border-left: 0;
        border-top: 1px solid #ccc;
        padding: 10px 0 0 0;
        margin: 10px 0 0 0
    }

    .grid--casesearch-list.grid--1col .gi-case__details--user::before {
        top: 10px
    }
}

.paging--casesearch {
    padding: 10px 0 0 0
}

.gi-case--map {
    position: relative;
    background-color: #fff;
    width: 315px;
    padding: 10px
}

.gi-case--map .gi-case__title--name {
    padding-top: 30px;
    margin: 0;
    width: 100%
}

.gi-case--map .gi-case__details--case {
    border-bottom: 1px solid #ccc;
    padding: 0 0 10px 0;
    margin: 0 0 10px 0
}

.gi-case.gi-case--map {
    border: 0;
    margin: 0;
    padding-bottom: 0;
    max-width: 375px
}

.gi-case.gi-case--map .gi-case__details.gi-case__details--case {
    border-bottom: 1px solid #ccc;
    padding: 0 30px 10px 0;
    margin: 0 0 10px 0
}

.gi-case.gi-case--map .btn--case {
    margin-top: 10px;
    background-color: transparent;
    padding: 0;
    color: #005ea5;
    text-decoration: underline;
    font-weight: normal
}

.dialog--casesearch .dialog__content {
    padding: 0 10px
}

.dialog--casesearch .gi-case {
    margin: 0;
    float: left;
    width: 100%;
    clear: both;
    box-sizing: border-box;
    border: 0
}

.dialog--casesearch .gi-case:hover {
    background-color: transparent
}

.dialog--casesearch .gi-case__ref {
    position: absolute;
    top: 10px;
    right: 40px
}

.grid--casesearch-list.grid--3col .dialog--casesearch .gi-case__details,.grid--casesearch-list.grid--1col .dialog--casesearch .gi-case__details,.gi-tabs__panel--casesearch-map .dialog--casesearch .gi-case__details {
    width: calc(50% - 5px);
    display: block;
    float: left;
    box-sizing: border-box;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    padding: 10px;
    margin: 0 0 10px 0
}

.grid--casesearch-list.grid--3col .dialog--casesearch .gi-case__details--case,.grid--casesearch-list.grid--1col .dialog--casesearch .gi-case__details--case,.gi-tabs__panel--casesearch-map .dialog--casesearch .gi-case__details--case {
    margin-right: 10px
}

@media(max-width: 750px) {
    .dialog--casesearch .gi-case__details {
        width:100%;
        float: none
    }

    .dialog--casesearch .gi-case__details--user {
        border-left: 0;
        border-top: 1px solid #ccc;
        padding: 20px 0 0 0
    }
}

.dialog--casesearch h3.gi-case__title {
    font-size: 1.4rem
}

.dialog--casesearch h4.gi-case__title {
    font-size: 1.2rem;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    border-bottom: 1px solid #ccc
}

.dialog--casesearch .gi-case .nvp {
    margin: 0 0 10px 0
}

.dialog--casesearch .gi-case .nvp__label,.dialog--casesearch .gi-case .nvp__value {
    display: block;
    width: 100%
}

.dialog--casesearch .gi-case__details::before {
    top: 10px;
    font-size: 1.5rem;
    right: 10px
}

.dialog--casesearch .gi-case__content {
    border-bottom: 1px solid #ccc;
    margin: 0 0 10px 0
}

.cs-map {
    width: auto;
    height: 620px
}

@media(max-width: 767px) {
    .cs-map__btncontainer {
        z-index:10;
        position: relative;
        top: -3.2rem;
        width: 100%;
        pointer-events: none
    }

    .btn--searchhere {
        margin-left: .5rem;
        pointer-events: all
    }
}

@media(min-width: 768px) {
    .cs-map__btncontainer {
        z-index:10;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        pointer-events: none
    }

    .btn--searchhere {
        display: inherit;
        margin: 1.2rem auto 0 auto;
        pointer-events: all
    }
}

.gm-style-iw[role="dialog"] {
    border-radius: 0;
    overflow: visible
}

.cs-map-wrapper {
    position: relative
}

.cs-map button.gm-ui-hover-effect {
    background: white!important;
    opacity: 1;
    top: 0!important;
    right: -45px!important;
    width: 44px!important;
    height: 44px!important
}

.cs-map button.gm-ui-hover-effect span {
    width: 20px!important;
    height: 20px!important;
    margin: 12px!important
}

.gi-case__userdetail,.gi-case__caseitem {
    margin-top: .4rem
}

.grid--members .grid__cell {
    padding: 10px
}

.contactlist>li {
    margin-bottom: 5px
}

.nvp__label--contact {
    max-width: 150px;
    min-width: 95px;
    display: inline-block
}

.nvp__value--contact ul {
    display: inline-block
}

ul.nvp__value--contact {
    display: inline-block
}

.nvp__value--contact {
    word-wrap: break-word
}

.nvp--contact-summary {
    padding: 0 0 20px 0;
    margin: 0
}

.card--contact .card__content a {
    position: relative
}

.card--contact .card__imagecontainer {
    display: table;
    margin: 10px 0;
    padding: 0;
    width: 100%;
    height: 180px;
    text-align: center;
    background-color: #e5e5e5
}

.card--contact .gi-responsiveimage--contact {
    display: table-cell;
    vertical-align: middle
}

.grid--contact .contact__imagecontainer {
    padding-right: 20px
}

.grid__cell--contact-info {
    margin-bottom: 20px
}

@media(max-width: 806px) {
    .grid--contact .contact__imagecontainer {
        padding-right:0;
        text-align: center;
        margin-bottom: 20px
    }
}

.gi-responsiveimage--contact,.gi-responsiveimage.gi-responsiveimage--contact {
    margin: 0
}

.gi-responsiveimage--contactcard .gi-responsiveimage__imagewrapper {
    max-height: 180px;
    margin: 0 auto
}

.gi-responsiveimage--contactcard .gi-responsiveimage__image {
    display: inline-block;
    width: auto;
    max-height: 180px;
    object-fit: cover;
    object-position: center
}

.grid__cell--contact-info .grid__cell:nth-child(odd) .grid__cellwrap {
    margin: 0 10px 0 0
}

.grid__cell--contact-info .grid__cell:nth-child(even) .grid__cellwrap {
    margin: 0 0 0 10px
}

.event__social {
    float: right;
    margin-top: -10px
}

.event__link--social {
    margin: 0 0 0 20px;
    text-decoration: none;
    display: inline-block;
    vertical-align: middle
}

.event__link--social.event__link--facebook {
    background-color: #3B5998;
    color: #fff;
    border-radius: 50%;
    width: 34px;
    height: 34px;
    text-align: center
}

.event__link--social.event__link--facebook::before {
    content: "\f09a";
    font-size: 20px;
    line-height: 1.8
}

.event__link--social.event__link--twitter {
    background-color: #1DA1F2;
    color: #fff;
    border-radius: 50%;
    width: 34px;
    height: 34px;
    text-align: center
}

.event__link--social.event__link--twitter::before {
    content: "\f099";
    font-size: 20px;
    line-height: 1.8
}

.event__link--social.event__link--web {
    background-color: #fff;
    width: 34px;
    height: 34px;
    text-align: center;
    color: #4a4a4a
}

.event__link--social.event__link--web::before {
    content: "\e832";
    font-size: 38px;
    line-height: .9
}

.event__link--social:hover,.event__link--social:focus {
    opacity: .8;
    text-decoration: none
}

.event__info {
    background-color: #efefef;
    padding: 10px 10px 10px 20px;
    box-sizing: border-box;
    width: 100%;
    float: left;
    clear: both
}

.event__book {
    float: right;
    clear: right;
    width: 30%;
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid #ccc;
    background-color: #fff
}

.event__link--book {
    background: #333;
    color: #fff;
    padding: 10px 15px;
    display: block;
    font-size: 1.6rem
}

.event__link--book:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: none
}

.event__link--book:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: underline
}

.event__details--date {
    float: left;
    width: 70%;
    padding: 0 10px 0 0;
    box-sizing: border-box
}

.event__date {
    line-height: 1;
    font-size: 1.6rem;
    display: inline-block;
    padding: 10px
}

.event__date--start {
    padding: 20px 5px 10px 0
}

.event__date--end {
    padding: 20px 20px 0 0
}

.event__date--end::before {
    content: "-";
    vertical-align: top;
    padding: 0 10px 0 0;
    line-height: 1
}

.event-detail--availability {
    padding: 0 0 20px 0;
    font-size: 1.2rem
}

.event-detail__value--availability {
    font-weight: bold
}

.event-detail--time,.event-detail--price {
    float: left;
    padding: 20px 60px 10px 0;
    box-sizing: border-box;
    font-size: 1.1rem
}

.event__date--start::before {
    content: "\e81e";
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    font-size: 90%
}

.event-detail--time::before {
    content: "\e823";
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    font-size: 150%
}

.event-detail--availability::before {
    content: "\f145";
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    font-size: 150%
}

.event-detail--price::before {
    content: "\00a3";
    font-family: Arial,sans-serif;
    margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
    font-size: 150%;
    font-weight: bold
}

.event-detail__time--end::before {
    content: "-";
    vertical-align: top;
    padding: 0 5px 0 0
}

.event-detail__time {
    display: inline-block
}

.event-detail__time:first-child {
    margin: 0 5px 0 0
}

.event-detail__value {
    font-weight: bold
}

.event__intro {
    width: 100%;
    display: block;
    float: left;
    padding: 20px 0 10px 0;
    font-weight: bold;
    font-size: 1.25rem
}

.event__relatedimage {
    float: left;
    margin: 0 40px 40px 0
}

.event__image--related {
    max-width: 100%;
    height: auto
}

.event__body {
    width: 100%;
    clear: both;
    padding: 20px 0 40px 0
}

.location__intro+.event__body {
    padding: 0 0 40px 0
}

.location__intro+.event__body {
    padding: 0 0 40px 0
}

.event-location {
    float: left;
    width: 100%;
    clear: both;
    padding: 20px 0 40px 0
}

.event-location__heading {
    padding: 10px 0
}

.event-location__map {
    float: left;
    width: 70%
}

.event-location__details {
    float: right;
    width: 30%;
    box-sizing: border-box;
    padding: 0 20px 0 40px
}

.event-location__icon {
    display: inline-block;
    margin: 0 20px 0 0;
    vertical-align: top;
    min-width: 32px;
    text-align: center;
    font-size: 150%
}

.event-location__icon::before {
    content: "\e819";
    font-size: 200%
}

.event-location__address {
    display: inline-block;
    vertical-align: top
}

.event-location__address p {
    margin: 5px 0
}

.event-location__link--article {
    font-size: 1.2rem;
    font-weight: bold
}

.event-location__details .cta-link--location {
    width: 100%;
    margin: 10px 0 0 0;
    font-weight: normal;
    text-align: center
}

.event-location__details .cta-link--location::after {
    display: none
}

.event-related {
    clear: both
}

.event-related .container {
    padding: 0
}

.event-related__heading {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 0 0 40px 0;
    padding: 0 0 10px 0;
    border-bottom: 2px solid #ccc
}

.event-related__item {
    width: 100%;
    float: left;
    border-bottom: 1px solid #ccc;
    padding: 0 0 40px 0;
    margin: 0 0 40px 0
}

.event-related__imagecontainer {
    float: right;
    display: block;
    width: 20%;
    box-sizing: border-box;
    padding: 0 0 0 40px
}

.event-related__details {
    float: left;
    display: block;
    width: 20%
}

.event-related__image {
    max-width: 100%;
    height: auto
}

.event-related__info {
    float: left;
    display: block;
    width: 60%;
    box-sizing: border-box;
    padding: 0 40px 0 0
}

div:not(.event-related__imagecontainer) ~ .event-related__info {
    width: 80%;
    padding: 0 40px 0 0
}

.event-related__date {
    background: #ccc;
    box-sizing: border-box;
    padding: 10px;
    margin: 10px 0;
    font-size: 1.1em
}

.event-related__number {
    font-weight: bold;
    float: left;
    font-size: 2.5rem;
    line-height: 1;
    padding: 0 10px 0 0
}

.event-related__container--monthyear {
    font-weight: bold
}

.event-related__title {
    font-weight: bold;
    font-size: 1.2rem;
    padding: 0 0 10px 0
}

.event-related__detail {
    margin: 0 0 10px 0
}

.event-related__value,.event-related__icon {
    display: inline-block;
    vertical-align: middle
}

.event-related__icon {
    width: 32px;
    text-align: center;
    margin: 0 20px 0 0
}

@media(max-width: 1000px) {
    .event-related__imagecontainer {
        width:30%
    }

    .event-related__info {
        width: 70%
    }

    .event-related__details {
        width: 100%;
        margin-top: 20px
    }
}

@media(max-width: 720px) {
    .event__social {
        float:none;
        margin-top: 0
    }

    .event__date {
        float: none
    }

    .event__link--social {
        margin: 0 20px 0 0
    }

    .event__details--date {
        float: none;
        clear: none;
        width: 100%;
        padding: 0
    }

    .event__book {
        float: none;
        clear: none;
        width: 100%;
        margin-top: 10px;
        text-align: center
    }

    .event__relatedimage {
        float: none;
        margin: 0 0 40px 0
    }

    .event-location__map {
        float: none;
        width: 100%;
        margin: 0 0 20px 0
    }

    .event-location__details {
        float: none;
        width: 100%;
        padding: 0
    }

    .event-related__imagecontainer {
        width: 100%;
        padding: 0
    }

    .event-related__info {
        width: 100%;
        padding: 20px 0 0 0
    }
}

.location__social {
    float: right;
    margin-top: -10px
}

.location__link--social {
    margin: 0 0 0 20px;
    text-decoration: none
}

.location__link--social:hover,.location__link--social:focus {
    opacity: .8;
    text-decoration: none
}

.location__title {
    font-size: 2rem;
    font-weight: bold;
    margin: 20px 0 0 0
}

.location__intro {
    width: 100%;
    display: block;
    float: left
}

.location__relatedimage {
    float: left;
    margin: 0 40px 40px 0
}

.location__image--related {
    max-width: 100%;
    height: auto
}

.location__body {
    width: 100%;
    clear: both;
    padding: 0 0 40px 0
}

.location__body ul {
    margin: 0 0 20px 0;
    padding: 0 20px 0 20px;
    display: inline-block
}

.relateditem--location {
    float: left;
    width: 100%
}

.location-info {
    background: #efefef;
    float: left;
    width: 100%;
    margin: 0 0 40px 0
}

.location-info__cell {
    width: 50%;
    float: left;
    margin: 40px 0;
    box-sizing: border-box
}

.location-info__cell:nth-child(2n-1) {
    border-right: 1px solid #333;
    padding: 0 60px 0 0;
    clear: both
}

.location-info__cell:nth-child(2n) {
    padding: 0 0 0 60px
}

.location-info__cell:nth-child(2n-1):only-child {
    width: 100%;
    border-right: 0 solid #333
}

.location-info__cell:nth-child(n+3) {
    margin: 0 0 40px 0
}

.location-info__label {
    margin: 0 0 20px;
    display: block;
    font-weight: bold;
    font-size: 1.1rem
}

.location-info__value p {
    margin: 5px 0 5px 0
}

.location-info__value ul {
    padding: 0 0 0 20px;
    margin: 0;
    list-style: disc
}

.location-info__value ol {
    padding: 0 0 0 20px;
    margin: 0;
    list-style: decimal
}

.location-info__link--directions,.location-info__link--view {
    background: #333;
    color: #fff;
    padding: 10px 15px;
    display: block;
    margin: 10px 0;
    width: 100%;
    box-sizing: border-box;
    text-align: center
}

.location-info__link--directions {
    margin: 40px 0 10px 0
}

.location-info__link--directions:last-child,.location-info__link--view:last-child {
    margin: 10px 0 20px 0
}

.location-info__link--directions:hover,.location-info__link--view:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: none
}

.location-info__link--directions:focus,.location-info__link--view:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: underline
}

.location-info__map {
    min-height: 400px;
    clear: both;
    width: 100%
}

@media(max-width: 720px) {
    .location__social {
        float:none;
        margin-top: 0
    }

    .location__link--social {
        margin: 0 20px 0 0
    }

    .location__relatedimage {
        float: none;
        margin: 0 0 40px 0
    }
}

.event-search {
    float: left;
    width: 100%;
    clear: both
}

.event-search__results--hide {
    display: none
}

.event-search__options {
    box-sizing: border-box;
    width: 100%;
    float: left;
    border: 1px solid #ccc;
    margin: 20px 0
}

.event-search__selections {
    width: 100%;
    display: table
}

.event-search__option {
    display: table-cell;
    box-sizing: border-box;
    padding: 20px;
    background-color: #eaeaea;
    border-left: 2px solid #fff
}

.event-search__option:first-child {
    border-left: 0 solid #fff
}

.event-search__selections--4col>.event-search__option {
    width: 25%
}

.event-search__selections--3col>.event-search__option {
    width: 33.3%
}

.event-search__selections--2col>.event-search__option {
    width: 50%
}

.event-search__selections--1col>.event-search__option {
    width: 100%
}

.event-search__dropdown {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    font-size: 1rem
}

.event-search__dropdown option {
    padding: 10px
}

.event-search__option--range {
    margin: 20px 0 0 0;
    display: none
}

.event-search__dateinput {
    padding: 10px;
    box-sizing: border-box;
    font-size: 1rem;
    margin: 0 0 20px 0
}

.event-search__option--errors {
    background-color: #fce5e5;
    border: 1px solid #f00;
    color: #f00;
    padding: 10px;
    box-sizing: border-box
}

.event-search__option--keywords {
    width: 100%;
    display: block;
    border-left: 0 solid #fff;
    background-color: #fff
}

.event-search__keywords {
    display: inline-block;
    width: 100%
}

.event-search__label {
    display: block;
    font-size: 1.2rem;
    margin-bottom: 10px
}

.event-search__label--hidden {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.event-search__option--keywords .event-search__label {
    display: inline-block
}

.event-search .searchoptions {
    margin-left: 20px
}

.event-search .grid--1col>.grid__cell>.grid__cellwrap>.searchoptions {
    margin-left: 0
}

.searchoptions__selected--sortby {
    display: table;
    width: 100%
}

.template--eventsearch .facet {
    padding: 0 0 10px 0;
    border-bottom: 1px solid #ccc
}

.template--eventsearch .facet__heading {
    padding: 10px 10px 0;
    margin: 0
}

.event-search__link--sortby {
    width: 50%;
    display: table-cell;
    margin: 0 0 20px 0;
    text-align: center;
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 10px 15px;
    text-decoration: none
}

.event-search__link--sortby:hover,.event-search__link--sortby:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: underline
}

.event-search__link--selected {
    border: 1px solid #333;
    background-color: #333;
    color: #fff
}

.event-search__link--selected:hover,.event-search__link--selected:focus {
    box-shadow: none;
    text-decoration: none
}

.event-search__form--keywords {
    display: inline-block;
    width: 100%
}

.event-search__input--keywords {
    width: 66%;
    display: inline-block
}

.event-search__field--text,.searchform__inputtxt--event-search {
    width: 100%;
    margin: 0;
    padding: 10px;
    box-sizing: border-box;
    font-size: 1rem
}

.event-search__submitwrap {
    width: 33.3%;
    box-sizing: border-box;
    padding: 0 0 0 40px;
    display: inline-block
}

.event-search__submit--keywords {
    width: 100%;
    font-size: 1.2rem;
    height: 40px;
    color: #fff;
    text-align: center;
    background-color: #333;
    border: 0 solid #fff
}

.event-search__submit--keywords:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: none;
    cursor: pointer
}

.event-search__submit--keywords:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: underline
}

@media(max-width: 1000px) {
    .event-search__selections--4col>.event-search__option,.event-search__selections--3col>.event-search__option,.event-search__selections--2col>.event-search__option,.event-search__selections--1col>.event-search__option,.event-search__option {
        width:100%;
        display: block
    }

    .event-search__submitwrap {
        width: 33.3%;
        box-sizing: border-box;
        padding: 0 0 0 10px;
        display: inline-block
    }

    .event-search__option {
        border-left: 0 solid #fff
    }
}

@media(max-width: 720px) {
    .event-search__option {
        width:100%
    }

    .event-search__input--keywords {
        width: 100%
    }

    .event-search__submitwrap {
        width: 100%;
        padding: 20px 0 0 0
    }
}

.event-search__view {
    margin: 20px 0 40px 0;
    border-bottom: 1px solid #ccc
}

@media(max-width: 1000px) {
    .event-search__view {
        float:left;
        clear: both;
        width: 100%
    }
}

.event-search__viewlink {
    display: inline-block;
    margin: 0 5px -1px 0;
    padding: 15px 20px;
    border: 1px solid #ccc;
    border-bottom: 0;
    text-decoration: none;
    font-size: 1.2rem;
    line-height: 1.5
}

.event-search__viewlink:not(.event-search__viewlink--selected) {
    background-color: #f2f2f2
}

.event-search__viewlink:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: none;
    cursor: pointer
}

.event-search__viewlink:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: underline
}

.event-search__viewlink:last-child {
    margin-right: 0
}

@media(max-width: 1000px) {
    .event-search__viewlink {
        width:calc(50% - 3px)
    }

    .event-search__viewlink:last-child {
        width: calc(50% - 2px)
    }
}

.event-search__viewlink--selected {
    border-color: #ccc;
    border-bottom: 2px solid #fff;
    color: #4a4a4a
}

.event-search__viewlink--list::before,.event-search__viewlink--map::before {
    content: "\f0c9";
    display: inline-block;
    font-weight: normal;
    line-height: 1.5;
    padding: 0 5px 0 0
}

.event-search__viewlink--map::before {
    content: "\e819"
}

.event-search__refine {
    float: right;
    width: 25%
}

.event-search__tag {
    background-color: #ccc;
    display: inline-block;
    padding: 10px 15px 10px 20px;
    margin: 10px 5px 0 0;
    text-decoration: none
}

.event-search__tag::after {
    content: url(./resource/template/events/images/events/red_cross_sm.png);
    margin-left: 5px
}

.event-search__tag:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: none
}

.event-search__tag:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: underline
}

.event-search__details {
    float: left;
    width: 100%;
    font-size: 1.1em;
    padding: 10px 0 30px 0
}

.event-search__text {
    float: left
}

.searchoptions__label--sortby {
    display: table-row;
    height: 40px
}

.event-search__detail {
    float: left;
    margin-left: 5px
}

.event-search__value {
    font-weight: bold
}

@media(max-width: 1000px) {
    .event-search__value {
        float:none
    }
}

@media(max-width: 580px) {
    .event-search__viewlink::before {
        display:block;
        margin-bottom: 10px
    }
}

.event-search__mobile {
    display: none;
    float: left;
    width: 100%;
    box-sizing: border-box;
    padding: 20px;
    background-color: #eaeaea;
    margin: 0 0 20px 0
}

.event-search__label--mobile::after {
    content: url(./resource/template/events./resource/template/events/images/events/filter_icon.png);
    display: inline-block;
    vertical-align: middle;
    padding: 0 20px
}

.event-search__mobile:hover,.event-search__mobile:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    cursor: pointer
}

@media(max-width: 1250px) {
    .event-search__refine,.event-search__results {
        float:left;
        width: 100%
    }

    .event-search__refine {
        display: none;
        padding: 10px 20px
    }

    .event-search__details {
        margin: 10px 0 0 0
    }

    .event-search__mobile {
        display: block
    }

    .event-search__refine--close {
        display: none
    }

    .event-search__refine--open {
        display: block
    }

    .event-search__label--mobile {
        margin-bottom: 0
    }
}

.event-results__item {
    width: 100%;
    float: left;
    border-bottom: 1px solid #ccc;
    padding: 0 0 40px 0;
    margin: 0 0 40px 0
}

.template--location .event-results__item {
    padding: 0;
    margin: 0 0 20px 0
}

.event-results__imagecontainer {
    float: left;
    display: block;
    width: 30%;
    box-sizing: border-box;
    padding: 0 10px 0 40px;
    text-align: right
}

@media(max-width: 1000px) {
    .event-results__imagecontainer {
        width:100%;
        padding: 0;
        margin: 20px 0 20px 0
    }
}

.event-results__image {
    max-width: 100%;
    height: auto
}

.event-results__info {
    float: left;
    display: block;
    width: 70%;
    box-sizing: border-box
}

@media(max-width: 1000px) {
    .event-results__info {
        width:100%;
        padding: 0
    }
}

.event-search__results--map .event-related__image {
    display: none
}

.event-search__results--map .event-results__item {
    padding: 10px 40px 10px 0
}

.gm-style .gm-style-iw {
    font-size: 14px!important
}

.event-results__title {
    font-weight: bold;
    font-size: 1.2rem;
    padding: 0 0 20px 0
}

.event-instances {
    margin: 20px 0 0 0;
    float: left;
    width: 100%
}

.event-instances__heading,.event-instances__item {
    clear: both;
    float: left;
    width: 100%;
    display: table
}

.event-instances__title,.event-instances__value {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    width: 20%;
    box-sizing: border-box;
    padding: 10px
}

.event-instances__title {
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    font-size: 1.1rem
}

.event-instances__title--view {
    color: #fff
}

.event-instances__value--date,.event-instances__title--date {
    width: 30%
}

.event-instances__value--availability,.event-instances__title--availability {
    width: 15%
}

.event-instances__value--price,.event-instances__title--price {
    width: 10%
}

.event-instances__value--location,.event-instances__title--location {
    width: 20%
}

.event-instances__value--actions,.event-instances__title--actions {
    width: 25%
}

.event-instances__to::before {
    content: " - ";
    vertical-align: top
}

@media(max-width: 720px) {
    .event-instances__heading {
        display:none
    }

    .event-instances__title,.event-instances__value,.event-instances__value--availability,.event-instances__title--availability,.event-instances__value--price,.event-instances__title--price,.event-instances__value--location,.event-instances__title--location {
        display: inline-block;
        width: 33%;
        text-align: center
    }

    .event-instances__title--date,.event-instances__value--date {
        width: 100%;
        font-weight: bold
    }

    .event-instances__value--actions,.event-instances__title--actions {
        width: 100%
    }

    .event-instances__item {
        padding: 10px 0
    }

    .event-instances__item {
        text-align: center
    }

    .event-instances__time {
        font-weight: normal
    }

    .event-instances__to::before {
        vertical-align: middle
    }

    .event-instances__value--availability::before {
        content: "\f145";
        margin-right: 10px;
        display: inline-block;
        vertical-align: middle;
        font-size: 150%
    }

    .event-instances__value--date::before {
        content: "\e823";
        margin-right: 10px;
        display: inline-block;
        vertical-align: middle;
        font-size: 150%
    }

    .event-instances__value--price::before {
        content: "\00a3";
        font-family: Arial,sans-serif;
        margin-right: 10px;
        display: inline-block;
        vertical-align: middle;
        font-size: 150%;
        font-weight: bold
    }

    .event-instances__value--location::before {
        content: "\e819";
        margin-right: 10px;
        display: inline-block;
        vertical-align: middle;
        font-size: 150%
    }

    .event-instances__link--location {
        display: inline-block
    }
}

.event-instances__date {
    font-weight: bold
}

.event-instances__item:nth-child(even) {
    background-color: #f2f2f2
}

.event-instances__link,.event-instances__link--suppressed {
    text-decoration: none
}

.event-instances__link:hover {
    text-decoration: underline
}

.event-instances__link--view,.event-instances__link--viewall {
    background-color: #333;
    color: #fff;
    padding: 10px 15px;
    display: inline-block;
    text-align: center
}

.event-instances__link--view:hover,.event-instances__link--viewall:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: none
}

.event-instances__link--view:focus,.event-instances__link--viewall:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: underline
}

.event-instances__viewall {
    width: 100%;
    display: block;
    float: left;
    text-align: center;
    margin: 20px 0 0 0
}

.event-detail--noevent {
    float: left;
    padding: 20px 60px 10px 0;
    box-sizing: border-box;
    font-size: 1.1rem
}

.event-detail--noevent::before {
    content: "\e81e";
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    font-size: 150%
}

.event-detail--noevent .event-detail__value {
    display: inline-block;
    vertical-align: middle
}

.cta-link.cta-link--eventresults {
    width: 100%;
    margin: 0 10px 10px 0;
    position: relative;
    font-weight: normal
}

.cta-link.cta-link--eventresults::after {
    position: absolute;
    top: 10px;
    line-height: 1.7;
    right: 10px
}

.cta-link--eventresults.cta-link--full:hover {
    cursor: default;
    box-shadow: none
}

.cta-link--eventresults.cta-link--full::after {
    display: none
}

.cta-link--eventresults.cta-link--expired:hover {
    cursor: default;
    box-shadow: none
}

.cta-link--eventresults.cta-link--expired::after {
    display: none
}

.cta-link--eventresults:last-child {
    margin: 0
}

.event__instances {
    float: left;
    width: 100%;
    clear: both
}

.daily-link {
    margin: 20px 0 0 0;
    box-sizing: border-box;
    float: left;
    padding: 0 10px 0 0;
    width: 50%;
    max-width: 260px
}

.daily-link--next {
    float: right;
    padding: 0 0 0 10px
}

.cta-link--daily {
    font-size: 1.15rem;
    padding: 10px 30px 10px 20px;
    font-weight: normal;
    width: 100%;
    margin: 0
}

span.cta-link--daily {
    box-shadow: none;
    font-weight: bold
}

span.cta-link--daily:hover {
    box-shadow: none;
    cursor: default
}

.daily-link--previous .cta-link--daily {
    padding: 10px 20px 10px 30px
}

.cta-link--daily::after {
    position: absolute;
    top: 15px;
    right: 10px;
    padding: 0
}

.daily-link--previous .cta-link--daily::after {
    right: auto;
    left: 10px;
    content: "\e826"
}

.cta-link--daily .detail {
    display: block;
    font-weight: normal;
    font-size: 1rem
}

.calendar {
    width: 100%;
    margin: 0;
    clear: both
}

.calendar__controls {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    text-align: center;
    background: #fff;
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    opacity: 1;
    transition: opacity .7s linear
}

.calendar__controls--sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 6
}

.calendar__link {
    font-size: 1.2em;
    display: block;
    line-height: 2em;
    padding: 10px 10px;
    text-decoration: none
}

.calendar__link:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    color: #fff;
    text-decoration: none
}

.calendar__link:focus {
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: underline
}

.calendar__link--previous {
    float: left
}

.calendar__link--previous::before {
    border: 8px solid transparent;
    border-right-color: #000;
    box-sizing: border-box;
    content: "";
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px 0 0
}

.calendar__link--previous:hover::before,.calendar__link--previous:focus::before {
    border-right-color: #fff
}

.calendar__link--next {
    float: right
}

.calendar__link--next::after {
    border: 8px solid transparent;
    border-left-color: #000;
    box-sizing: border-box;
    content: "";
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 10px
}

.calendar__link--next:hover::after,.calendar__link--next:focus::after {
    border-left-color: #fff
}

.calendar__link--past::before,.calendar__link--past::after {
    border-right-color: #aaa
}

.calendar__link--past::after {
    border-left-color: #aaa;
    border-right-color: transparent
}

.calendar__title {
    display: inline-block;
    font-size: 1.8em;
    line-height: 2em
}

@media(max-width: 580px) {
    .calendar__title {
        display:inline-block;
        font-size: 1.6em;
        line-height: 2.3em
    }
}

.calendar__week {
    width: 100%;
    display: table;
    border-bottom: 1px solid #ccc;
    background: #fff;
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    opacity: 1;
    transition: opacity .7s linear
}

.calendar__week--sticky {
    position: fixed;
    top: 60px;
    left: 0;
    right: 0;
    z-index: 5
}

.calendar__row--default {
    margin-bottom: 400px
}

@media(max-width: 780px) {
    .calendar__week {
        display:none;
        height: 1px;
        padding: 0;
        margin: 0
    }
}

.calendar__day {
    display: table-cell;
    text-align: center;
    padding: 20px 0;
    width: 14.3%;
    font-size: 1.2em
}

@media(max-width: 780px) {
    .calendar__day {
        display:none
    }
}

.calendar__row {
    width: 100%;
    display: table;
    position: relative;
    border-left: 1px solid #ccc
}

@media(max-width: 780px) {
    .calendar__row {
        border:0;
        margin-bottom: 0!important
    }
}

.calendar__cell {
    display: table-cell;
    text-align: center;
    width: 14.3%;
    height: 100px;
    vertical-align: middle;
    box-sizing: border-box
}

@media(max-width: 780px) {
    .calendar__cell {
        display:block;
        width: 100%;
        height: auto;
        text-align: left;
        float: left;
        border: 0
    }

    .calendar__row .calendar__cell:first-of-type,.calendar__cell+.calendar__cell button {
        border-right: 0 solid #ccc
    }
}

.calendar-date {
    text-align: center;
    background-color: #fff;
    width: 100%;
    height: 100px;
    vertical-align: middle;
    box-sizing: border-box;
    padding: 0;
    cursor: default;
    border: 1px solid #ccc;
    border-top: 0;
    border-left: 0;
    position: relative
}

.calendar-date--hasevent:after {
    content: '';
    position: absolute;
    bottom: 0;
    border-top: 15px solid transparent;
    border-right: 15px solid #000;
    right: 0
}

.calendar-date:hover {
    cursor: default
}

.calendar-date--hasevent:hover,.calendar-date--hasevent {
    cursor: pointer
}

.calendar-date:focus {
    outline-offset: -2px
}

@media(min-width: 780px) {
    .calendar__row--sticky .calendar-date {
        position:fixed;
        top: 0;
        z-index: 5;
        display: table-cell;
        box-sizing: border-box;
        border-left: 1px solid #ccc
    }
}

@media(max-width: 780px) {
    .calendar-date {
        height:auto;
        text-align: left;
        border: 0;
        float: left;
        border-bottom: 1px solid #ccc
    }
}

.calendar-date--weekend {
    background: #f2f2f2
}

.calendar-date--previousmonth,.calendar-date--nextmonth {
    color: #888
}

.calendar-date--today {
    background: #ddd
}

.calendar-date--hasevent:hover,.calendar-date--hasevent:focus {
    cursor: pointer;
    box-shadow: inset 20em 20em rgba(0,0,0,0.1)
}

.calendar-date--selected {
    background-color: #333;
    font-weight: bold;
    color: #fff
}

.calendar-date--hasevent.calendar-date--selected:after {
    border-right: 15px solid #fff
}

.calendar-date__number {
    display: block;
    text-align: center;
    padding: 35px 0;
    width: 100%;
    height: 100px;
    vertical-align: middle;
    box-sizing: border-box;
    cursor: default;
    font-size: 1.6em
}

.calendar-date--hasevent .calendar-date__number:hover,.calendar-date--hasevent .calendar-date__number:focus {
    cursor: pointer
}

@media(max-width: 780px) {
    .calendar-date__number {
        text-align:left;
        padding: 20px;
        height: 65px
    }
}

@media(max-width: 780px) {
    .calendar-date--sticky {
        position:fixed;
        top: 60px;
        transition: position .5s linear;
        left: 0;
        right: 0;
        z-index: 999
    }
}

@media(max-width: 780px) {
    .calendar-date__day {
        display:block;
        position: absolute;
        top: 25px;
        left: 80px
    }
}

.calendar__list {
    display: none;
    border-top: 1px solid #ccc;
    list-style: none;
    position: absolute;
    font-size: 1em;
    width: 100%;
    background: #fff;
    margin: 0;
    padding: 0;
    top: 100px;
    left: 0;
    color: #000;
    text-align: left;
    cursor: default
}

@media(max-width: 780px) {
    .calendar__list {
        position:relative;
        font-size: 1em;
        width: 100%;
        background: #fff;
        top: 0;
        margin: 0;
        left: 0;
        text-align: left;
        border: 0;
        float: left
    }
}

.calendar .event-results {
    padding: 20px 0;
    float: left;
    width: 100%;
    display: block
}

.calendar .event-results__item {
    margin: 0;
    padding: 0 0 30px 0
}

@media(max-width: 780px) {
    .calendar .event-related__item {
        padding:0 10px 30px 10px;
        box-sizing: border-box
    }
}

.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer {
    position: absolute;
    left: 0;
    top: 0
}

.leaflet-container {
    overflow: hidden
}

.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -webkit-user-drag: none
}

.leaflet-safari .leaflet-tile {
    image-rendering: -webkit-optimize-contrast
}

.leaflet-safari .leaflet-tile-container {
    width: 1600px;
    height: 1600px;
    -webkit-transform-origin: 0 0
}

.leaflet-marker-icon,.leaflet-marker-shadow {
    display: block
}

.leaflet-container .leaflet-overlay-pane svg,.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer {
    max-width: none!important;
    max-height: none!important
}

.leaflet-container.leaflet-touch-zoom {
    -ms-touch-action: pan-x pan-y;
    touch-action: pan-x pan-y
}

.leaflet-container.leaflet-touch-drag {
    -ms-touch-action: pinch-zoom;
    touch-action: none;
    touch-action: pinch-zoom
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
    -ms-touch-action: none;
    touch-action: none
}

.leaflet-container {
    -webkit-tap-highlight-color: transparent
}

.leaflet-container a {
    -webkit-tap-highlight-color: rgba(51,181,229,0.4)
}

.leaflet-tile {
    filter: inherit;
    visibility: hidden
}

.leaflet-tile-loaded {
    visibility: inherit
}

.leaflet-zoom-box {
    width: 0;
    height: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 800
}

.leaflet-overlay-pane svg {
    -moz-user-select: none
}

.leaflet-pane {
    z-index: 400
}

.leaflet-tile-pane {
    z-index: 200
}

.leaflet-overlay-pane {
    z-index: 400
}

.leaflet-shadow-pane {
    z-index: 500
}

.leaflet-marker-pane {
    z-index: 600
}

.leaflet-tooltip-pane {
    z-index: 650
}

.leaflet-popup-pane {
    z-index: 700
}

.leaflet-map-pane canvas {
    z-index: 100
}

.leaflet-map-pane svg {
    z-index: 200
}

.leaflet-vml-shape {
    width: 1px;
    height: 1px
}

.lvml {
    behavior: url(#default#VML);
    display: inline-block;
    position: absolute
}

.leaflet-control {
    position: relative;
    z-index: 800;
    pointer-events: visiblePainted;
    pointer-events: auto
}

.leaflet-top,.leaflet-bottom {
    position: absolute;
    z-index: 1000;
    pointer-events: none
}

.leaflet-top {
    top: 0
}

.leaflet-right {
    right: 0
}

.leaflet-bottom {
    bottom: 0
}

.leaflet-left {
    left: 0
}

.leaflet-control {
    float: left;
    clear: both
}

.leaflet-right .leaflet-control {
    float: right
}

.leaflet-top .leaflet-control {
    margin-top: 10px
}

.leaflet-bottom .leaflet-control {
    margin-bottom: 10px
}

.leaflet-left .leaflet-control {
    margin-left: 10px
}

.leaflet-right .leaflet-control {
    margin-right: 10px
}

.leaflet-fade-anim .leaflet-tile {
    will-change: opacity
}

.leaflet-fade-anim .leaflet-popup {
    opacity: 0;
    -webkit-transition: opacity .2s linear;
    -moz-transition: opacity .2s linear;
    -o-transition: opacity .2s linear;
    transition: opacity .2s linear
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
    opacity: 1
}

.leaflet-zoom-animated {
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0
}

.leaflet-zoom-anim .leaflet-zoom-animated {
    will-change: transform
}

.leaflet-zoom-anim .leaflet-zoom-animated {
    -webkit-transition: -webkit-transform .25s cubic-bezier(0,0,0.25,1);
    -moz-transition: -moz-transform .25s cubic-bezier(0,0,0.25,1);
    -o-transition: -o-transform .25s cubic-bezier(0,0,0.25,1);
    transition: transform .25s cubic-bezier(0,0,0.25,1)
}

.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile {
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none
}

.leaflet-zoom-anim .leaflet-zoom-hide {
    visibility: hidden
}

.leaflet-interactive {
    cursor: pointer
}

.leaflet-grab {
    cursor: -webkit-grab;
    cursor: -moz-grab
}

.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive {
    cursor: crosshair
}

.leaflet-popup-pane,.leaflet-control {
    cursor: auto
}

.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing
}

.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container {
    pointer-events: none
}

.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive {
    pointer-events: visiblePainted;
    pointer-events: auto
}

.leaflet-container {
    background: #ddd;
    outline: 0
}

.leaflet-container a {
    color: #0078A8
}

.leaflet-container a.leaflet-active {
    outline: 2px solid orange
}

.leaflet-zoom-box {
    border: 2px dotted #38f;
    background: rgba(255,255,255,0.5)
}

.leaflet-container {
    font: 12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif
}

.leaflet-bar {
    box-shadow: 0 1px 5px rgba(0,0,0,0.65);
    border-radius: 4px
}

.leaflet-bar a,.leaflet-bar a:hover {
    background-color: #fff;
    border-bottom: 1px solid #ccc;
    width: 26px;
    height: 26px;
    line-height: 26px;
    display: block;
    text-align: center;
    text-decoration: none;
    color: black
}

.leaflet-bar a,.leaflet-control-layers-toggle {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    display: block
}

.leaflet-bar a:hover {
    background-color: #f4f4f4
}

.leaflet-bar a:first-child {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px
}

.leaflet-bar a:last-child {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom: 0
}

.leaflet-bar a.leaflet-disabled {
    cursor: default;
    background-color: #f4f4f4;
    color: #bbb
}

.leaflet-touch .leaflet-bar a {
    width: 30px;
    height: 30px;
    line-height: 30px
}

.leaflet-touch .leaflet-bar a:first-child {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px
}

.leaflet-touch .leaflet-bar a:last-child {
    border-bottom-left-radius: 2px;
    border-bottom-right-radius: 2px
}

.leaflet-control-zoom-in,.leaflet-control-zoom-out {
    font: bold 18px 'Lucida Console',Monaco,monospace;
    text-indent: 1px
}

.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out {
    font-size: 22px
}

.leaflet-control-layers {
    box-shadow: 0 1px 5px rgba(0,0,0,0.4);
    background: #fff;
    border-radius: 5px
}

.leaflet-control-layers-toggle {
    background-image: url(images/layers.png);
    width: 36px;
    height: 36px
}

.leaflet-retina .leaflet-control-layers-toggle {
    background-image: url(images/layers-2x.png);
    background-size: 26px 26px
}

.leaflet-touch .leaflet-control-layers-toggle {
    width: 44px;
    height: 44px
}

.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
    display: none
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
    display: block;
    position: relative
}

.leaflet-control-layers-expanded {
    padding: 6px 10px 6px 6px;
    color: #333;
    background: #fff
}

.leaflet-control-layers-scrollbar {
    overflow-y: scroll;
    overflow-x: hidden;
    padding-right: 5px
}

.leaflet-control-layers-selector {
    margin-top: 2px;
    position: relative;
    top: 1px
}

.leaflet-control-layers label {
    display: block
}

.leaflet-control-layers-separator {
    height: 0;
    border-top: 1px solid #ddd;
    margin: 5px -10px 5px -6px
}

.leaflet-default-icon-path {
    background-image: url(images/marker-icon.png)
}

.leaflet-container .leaflet-control-attribution {
    background: #fff;
    background: rgba(255,255,255,0.7);
    margin: 0
}

.leaflet-control-attribution,.leaflet-control-scale-line {
    padding: 0 5px;
    color: #333
}

.leaflet-control-attribution a {
    text-decoration: none
}

.leaflet-control-attribution a:hover {
    text-decoration: underline
}

.leaflet-container .leaflet-control-attribution,.leaflet-container .leaflet-control-scale {
    font-size: 11px
}

.leaflet-left .leaflet-control-scale {
    margin-left: 5px
}

.leaflet-bottom .leaflet-control-scale {
    margin-bottom: 5px
}

.leaflet-control-scale-line {
    border: 2px solid #777;
    border-top: 0;
    line-height: 1.1;
    padding: 2px 5px 1px;
    font-size: 11px;
    white-space: nowrap;
    overflow: hidden;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
    background: rgba(255,255,255,0.5)
}

.leaflet-control-scale-line:not(:first-child) {
    border-top: 2px solid #777;
    border-bottom: 0;
    margin-top: -2px
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
    border-bottom: 2px solid #777
}

.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar {
    box-shadow: none
}

.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar {
    border: 2px solid rgba(0,0,0,0.2);
    background-clip: padding-box
}

.leaflet-popup {
    position: absolute;
    text-align: center;
    margin-bottom: 20px
}

.leaflet-popup-content-wrapper {
    padding: 1px;
    text-align: left;
    border-radius: 12px
}

.leaflet-popup-content {
    margin: 13px 19px;
    line-height: 1.4
}

.leaflet-popup-content p {
    margin: 18px 0
}

.leaflet-popup-tip-container {
    width: 40px;
    height: 20px;
    position: absolute;
    left: 50%;
    margin-left: -20px;
    overflow: hidden;
    pointer-events: none
}

.leaflet-popup-tip {
    width: 17px;
    height: 17px;
    padding: 1px;
    margin: -10px auto 0;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg)
}

.leaflet-popup-content-wrapper,.leaflet-popup-tip {
    background: white;
    color: #333;
    box-shadow: 0 3px 14px rgba(0,0,0,0.4)
}

.leaflet-container a.leaflet-popup-close-button {
    position: absolute;
    top: 0;
    right: 0;
    padding: 4px 4px 0 0;
    border: 0;
    text-align: center;
    width: 18px;
    height: 14px;
    font: 16px/14px Tahoma,Verdana,sans-serif;
    color: #c3c3c3;
    text-decoration: none;
    font-weight: bold;
    background: transparent
}

.leaflet-container a.leaflet-popup-close-button:hover {
    color: #999
}

.leaflet-popup-scrolled {
    overflow: auto;
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd
}

.leaflet-oldie .leaflet-popup-content-wrapper {
    zoom:1}

.leaflet-oldie .leaflet-popup-tip {
    width: 24px;
    margin: 0 auto;
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
    filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678)
}

.leaflet-oldie .leaflet-popup-tip-container {
    margin-top: -1px
}

.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip {
    border: 1px solid #999
}

.leaflet-div-icon {
    background: #fff;
    border: 1px solid #666
}

.leaflet-tooltip {
    position: absolute;
    padding: 6px;
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 3px;
    color: #222;
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    box-shadow: 0 1px 3px rgba(0,0,0,0.4)
}

.leaflet-tooltip.leaflet-clickable {
    cursor: pointer;
    pointer-events: auto
}

.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before {
    position: absolute;
    pointer-events: none;
    border: 6px solid transparent;
    background: transparent;
    content: ""
}

.leaflet-tooltip-bottom {
    margin-top: 6px
}

.leaflet-tooltip-top {
    margin-top: -6px
}

.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before {
    left: 50%;
    margin-left: -6px
}

.leaflet-tooltip-top:before {
    bottom: 0;
    margin-bottom: -12px;
    border-top-color: #fff
}

.leaflet-tooltip-bottom:before {
    top: 0;
    margin-top: -12px;
    margin-left: -6px;
    border-bottom-color: #fff
}

.leaflet-tooltip-left {
    margin-left: -6px
}

.leaflet-tooltip-right {
    margin-left: 6px
}

.leaflet-tooltip-left:before,.leaflet-tooltip-right:before {
    top: 50%;
    margin-top: -6px
}

.leaflet-tooltip-left:before {
    right: 0;
    margin-right: -12px;
    border-left-color: #fff
}

.leaflet-tooltip-right:before {
    left: 0;
    margin-left: -12px;
    border-right-color: #fff
}

.fmn-marker__item {
    width: 13px;
    height: 13px;
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    border-width: 2px;
    border-style: solid;
    cursor: pointer;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.fmn-marker__item--myproperty {
    width: 19px;
    height: 19px;
    background-color: #fff;
    border-color: #000;
    border-style: solid;
    border-width: 1px
}

.fmn-marker__item--myproperty::before {
    content: "\e80e";
    margin: 0 0 0 2px;
    padding: 0;
    transform: rotate(45deg);
    font-size: 1rem
}

.fmn-marker__cluster {
    background-clip: padding-box;
    border-radius: 20px
}

.fmn-marker__clusteritem {
    width: 28px;
    height: 28px;
    margin-left: 5px;
    margin-top: 5px;
    text-align: center;
    border-radius: 15px;
    border-style: dotted;
    border-width: 2px
}

.fmn-marker__clusteritem span {
    line-height: 28px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    text-shadow: 1px 1px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,2px 2px 5px rgba(0,0,0,0.65)
}

.home-icon::after {
    content: "\e80e"
}

.close-icon::after {
    content: "\e809"
}

.fmn-postcodesearch {
    position: relative
}

.fmn-layersearch__submit {
    display: none
}

.block--fmn-search .block__heading {
    position: relative
}

.block--fmn-search .block__heading::after {
    content: ""
}

.block__link--fmn-search::after {
    content: "\e861";
    font-size: 18px;
    padding: 0 0 0 5px
}

.fmn-postcodesearch__noresults {
    margin: 15px 0 0 0
}

.fmn-postcodesearch__loader {
    display: none;
    width: 20px;
    position: absolute;
    top: 14px;
    left: 95px
}

.fmn-postcodesearch__loader .fmn-loaderimage {
    width: 100%
}

.fmn-postcodesearch__useraddress {
    display: inline-block;
    max-width: 100%;
    min-width: 100px;
    width: calc(100% - 175px)
}

.icmform--postcodesearch input,.icmform--postcodesearch select {
    margin: 0
}

.icmform--postcodesearch input:focus,.icmform--postcodesearch select:focus,.icmform--postcodesearch button:focus {
    outline-offset: -3px
}

.icmform--postcodesearch select {
    padding: 12px 10px;
    width: 100%;
    min-width: 92px;
    max-width: 85px;
    margin-left: -5px;
    height: 48px
}

.icmform--postcodesearch .icmtext {
    max-width: 100%;
    min-width: 100px;
    width: calc(100% - 155px);
    height: 48px;
    padding: 10px 10px
}

.block--fmn-search .icmform--postcodesearch .icmtext {
    width: calc(100% - 140px);
    min-width: 0
}

.block--fmn-search .icmform--postcodesearch .btn--fmn {
    height: 48px;
    width: 50px;
    vertical-align: top;
    margin: 0 0 0 -4px;
    padding: 0
}

.block--fmn-search .icmform--postcodesearch .btn--fmn::after {
    top: calc(50% - 11px);
    right: 15px;
    font-size: 20px
}

.icmform--postcodesearch .fmn-postcodesearch__list {
    display: block;
    padding: 10px;
    margin: 10px 0 0 0;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #999;
    max-height: 300px;
    overflow: auto
}

.icmform--postcodesearch .fmn-postcodesearch__item {
    margin: 10px 0 0 0
}

.icmform--postcodesearch .fmn-postcodesearch__item:first-child {
    margin: 0
}

.grid--fmn {
    width: calc(100% + 20px);
    margin-left: -10px
}

.grid--fmn .block {
    padding: 15px
}

.grid--fmn>.grid__cell--fmn {
    padding: 10px
}

.grid--fmn>.grid__cell--fmn:only-child {
    width: 100%
}

.fmn-views {
    border-bottom: 1px solid #aaa
}

.fmn-views__link {
    color: inherit;
    font-weight: bold;
    display: inline-block;
    padding: 20px;
    font-size: 1.1rem;
    border: 1px solid #ccc;
    margin-right: 10px;
    margin-bottom: -1px;
    text-decoration: none;
    background: #f1f1f1;
    border-radius: 10px 10px 0 0;
    -webkit-border-radius: 10px 10px 0 0;
    -moz-border-radius: 10px 10px 0 0;
    -ms-border-radius: 10px 10px 0 0;
    -o-border-radius: 10px 10px 0 0
}

@media(max-width: 480px) {
    .fmn-views__link {
        padding:10px
    }
}

.fmn-views__link:hover,.fmn-views__link:focus {
    color: inherit;
    cursor: default
}

.fmn-views__link:not(.fmn-views__link--selected):hover,.fmn-views__link:not(.fmn-views__link--selected):focus {
    -webkit-box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    box-shadow: inset 20em 20em rgba(0,0,0,0.1);
    text-decoration: none;
    cursor: pointer
}

.fmn-views__link:last-child {
    margin-right: 0
}

.fmn-views__link--selected {
    background: #fff;
    border: 1px solid #aaa;
    border-bottom: 1px solid #fff
}

.fmn-views__link--list::before,.fmn-views__link--map::before {
    content: "\e84a";
    line-height: 37px;
    font-size: 20px;
    padding: 0 10px 0 0
}

.fmn-views__link--map::before {
    content: "\f279"
}

.block--fmn {
    position: relative
}

.block--fmn .block__heading {
    border-bottom: 1px solid #aaa;
    padding: 0 0 10px 0;
    margin: 0 0 15px 0
}

.block--fmn .block__summary {
    margin: 0 0 10px 0
}

.block--fmn-layer-hidden {
    display: none
}

.fmn-marker--block {
    position: absolute;
    top: 20px;
    right: 20px
}

.layer-item {
    border: 1px solid #ccc;
    position: relative;
    background-color: #fff
}

.layer-item--map {
    border: 0 none
}

.grid--layer-item {
    width: calc(100% + 20px);
    margin-left: -10px
}

.grid__cell--layer-item {
    padding: 10px
}

.layer-item__label {
    text-align: right
}

.layer-item__labeltxt {
    display: inline-block;
    padding: 5px 10px;
    font-size: .9rem;
    background-color: #e5e5e5
}

.layer-item__heading {
    padding: 20px 0 10px 0;
    margin: 0;
    box-sizing: border-box
}

.layer-item__label+.layer-item__heading {
    padding: 5px 0 10px 0
}

.layer-item__link--heading {
    display: block;
    clear: both;
    color: inherit
}

.layer-item__link--heading::before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 0
}

.layer-item__content {
    padding: 0 10px 20px 20px;
    box-sizing: border-box
}

.layer-item__summary {
    clear: both;
    width: 100%;
    display: block;
    margin: 0;
    box-sizing: border-box
}

.layer-item__data {
    padding: 0;
    list-style: none
}

.layer-item__attribution {
    padding: 20px 0 0 0
}

.layer-item .nvp {
    margin: 10px 0 0 0;
    display: block;
    word-break: break-word
}

.layer-item .nvp__label,.layer-item .nvp__value {
    display: inline-block
}

.layer-item .nvp__label {
    width: 90px;
    margin: 0 0 5px 0
}

.layer-item__actions {
    padding: 0 10px 10px 10px;
    box-sizing: border-box
}

.layer-item .cta-link {
    margin: 10px 0 0 0;
    padding-left: 10px;
    border: 0
}

.layer-item__actions .cta-link:first-child {
    margin: 0
}

.layer-item img {
    max-width: 100%;
    height: auto
}

.layer-item--fmn .card__labeltxt {
    background-color: #e5e5e5;
    font-weight: bold;
    font-size: 1rem
}

.cta-link--viewonmap::after {
    content: "\e819";
    font-size: 24px;
    top: 6px
}

.grid__cell--fmn-map {
    position: relative
}

.fmn-map {
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.fmn-map__map {
    height: 500px;
    background-color: #f2f2f2;
    border: 1px solid #ccc;
    padding: 10px
}

.btn--searchhere {
    display: none;
    z-index: 401
}

.fmn-map__btncontainer {
    position: absolute;
    left: 0;
    right: 0;
    top: 20px;
    text-align: center
}

.grid--fmn-preference .grid__cell--fmn-filters {
    float: right
}

.grid--fmn-spatial .grid__cell--fmn-filters {
    float: right
}

.grid__cell--fmn-filters .icmform--postcodesearch select {
    padding: 12px 0 12px 5px;
    min-width: 92px;
    max-width: 92px;
    height: 48px
}

.grid__cell--fmn-filters .block__summary {
    font-weight: bold;
    margin: 0 0 10px 0
}

.block--fmn-search .fmn-postcodesearch__useraddress {
    width: 100%
}

.nvp--fmn-address {
    text-transform: capitalize
}

.facet--fmn .facet__list {
    padding: 0 15px
}

.facet--fmn .facet__list--open {
    width: 100%;
    max-height: 265px;
    margin: 0;
    overflow-x: auto;
    border-top: 1px solid #ccc
}

.facet--fmn .facet__item {
    padding: 15px 0 0 0
}

.facet--fmn .facet__item:last-child {
    padding: 15px 0
}

.grid--fmn-preference .facet__list--group:last-child {
    margin: 0
}

.fmn-layer-loader {
    display: none
}

.fmn-layer-loader--filter {
    float: right;
    margin: 3px
}

.fmn-layer-loader--result {
    width: 100%;
    text-align: center
}

.fmn-layer-loader__img--filter {
    width: 20px;
    height: 20px
}

.fmn-layer-loader__img--result {
    width: 40px;
    height: 40px
}

.facet--fmn .facet__heading {
    margin: 10px 15px
}

.fmn-layer__checkbox {
    position: absolute;
    cursor: pointer;
    left: 0;
    width: 38px;
    height: 38px;
    z-index: 1;
    margin: 0;
    zoom:1;filter: alpha(opacity=0);
    opacity: 0
}

.fmn-layer__label {
    padding: 5px 10px 5px 48px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 30px);
    min-height: 36px
}

.fmn-layer__label:hover {
    cursor: pointer
}

.fmn-layer__label::before {
    cursor: pointer;
    content: "";
    border: 1px solid #767676;
    background: #fff;
    width: 34px;
    height: 34px;
    visibility: visible;
    z-index: 3;
    position: absolute;
    top: 0;
    left: 0;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.fmn-layer__checkbox:checked+.fmn-layer__label::after {
    content: "";
    border: solid;
    border-width: 0 0 5px 5px;
    background: transparent;
    border-top-color: transparent;
    width: 17px;
    height: 7px;
    z-index: 4;
    position: absolute;
    top: 9px;
    left: 7px;
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    color: #333;
    cursor: pointer;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.fmn-layer__checkbox:focus+.fmn-layer__label::before {
    outline: 2px solid #0064FF;
    outline-offset: 0
}

.fmn-marker--facet {
    display: inline-block;
    vertical-align: top;
    padding: 3px 0 0 0;
    float: right
}

.fmn-layer--disabled,.fmn-layer--disabled .fmn-layer__checkbox:checked+.fmn-layer__label::after {
    color: #ccc
}

.fmn-layer--disabled .fmn-layer__checkbox:checked+.fmn-layer__label::after {
    cursor: default
}

.fmn-layer--disabled .fmn-layer__label:hover {
    cursor: default
}

.fmn-layer--disabled .fmn-marker--facet {
    opacity: .3
}

.a-template--findmynearest .searchoptions {
    margin-left: 0
}

.a-template--findmynearest .searchoptions__title {
    padding: 10px 30px 10px 15px
}

.a-panel--pt {
    float: left;
    clear: both;
    width: 100%;
    padding: 60px 0;
    background-color: #fff
}

.a-panel--pt.a-panel--body {
    padding: 60px 0
}

.gi-responsiveimage--pt {
    margin: 0
}

.a-panel--pt .a-panel__content {
    position: relative;
    margin: 0;
    padding: 0;
    clear: both;
    z-index: 2;
    text-align: left;
    height: auto;
    max-width: none
}

.a-panel--pt .a-panel__content::after {
    content: "";
    display: block;
    clear: both
}

.a-panel--pt .a-panel__linkwrap {
    color: inherit
}

.a-panel--pt .a-panel__linkwrap::before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 0
}

.a-panel--pt.a-panel--list .a-panel__linkwrap::before {
    display: none;
    position: static
}

.a-panel__link--pt {
    display: inline-block;
    position: static;
    margin: 0;
    padding: 10px 20px;
    color: inherit;
    background-color: #e6e6e6;
    font-size: 1rem;
    font-family: inherit;
    font-weight: bold;
    text-decoration: none
}

.a-panel__linkwrap:hover .a-panel__link--pt,.a-panel__linkwrap:focus .a-panel__link--pt {
    text-decoration: none;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.a-panel__link--pt::after {
    content: '\e827';
    position: static;
    margin-left: 10px
}

.a-panel--removelink .a-panel__linkwrap,.a-panel--removelink .a-panel__link--pt {
    display: none
}

.a-panel--pt .a-panel__title,.a-panel--pt .a-panel__summary,.a-panel--pt .a-panel__body {
    color: inherit
}

.a-panel--pt .a-panel__title::before,.a-panel--pt .a-panel__title::after {
    content: none;
    display: none
}

.a-panel--pt .a-panel__title:hover {
    color: inherit;
    text-decoration: none
}

.a-panel--pt .a-panel__imagecontainer {
    width: 49.999%;
    float: left;
    margin: 0 40px 0 0
}

.a-panel--pt.a-panel--body .a-panel__imagecontainer {
    margin-bottom: 20px
}

.a-panel--right .a-panel__imagecontainer,.a-panel--pt.a-panel--right .a-panel__imagecontainer {
    float: right;
    margin: 0 0 0 40px
}

.a-panel--top .a-panel__imagecontainer,.a-panel--pt.a-panel--top .a-panel__imagecontainer {
    float: none;
    margin: 0 auto 20px
}

@media(max-width: 1000px) {
    .a-panel--pt .a-panel__imagecontainer,.a-panel--right .a-panel__imagecontainer,.a-panel--pt.a-panel--right .a-panel__imagecontainer,.a-panel--top .a-panel__imagecontainer,.a-panel--pt.a-panel--top .a-panel__imagecontainer {
        float:none;
        width: 100%;
        margin: 0 0 20px 0
    }
}

.a-panel--pt .a-panel__summary {
    max-width: none
}

.a-panel--pt.a-panel--hasbackground {
    position: relative;
    padding: 60px 20px;
    background-attachment: unset;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

.a-panel--pt.a-panel--hasbackground::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.a-panel--pt.a-panel--parallax-background {
    background-attachment: fixed
}

.a-panel--pt.a-panel--hasbackground .a-panel__content {
    padding: 20px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    width: 100%;
    text-align: left;
    clear: both;
    color: #000;
    background-color: #fff
}

.a-panel--s-50 .a-panel__content {
    width: 50%;
    margin: 0 auto
}

@media(max-width: 840px) {
    .a-panel--s-50 .a-panel__content {
        width:100%;
        margin: 0
    }
}

.a-panel--removetitle .a-panel__title {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0px 0 0 0);
    clip: rect(0px,0px,0px,0px);
    clip-path: polygon(0px 0,0px 0,0px 0,0px 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.a-panel--muted-grey .a-panel__content {
    padding: 20px;
    background-color: #e5e5e5
}

.a-panel--muted-grey .a-panel__link--pt {
    background-color: #4a4a4a;
    color: #fff
}

.a-panel--pt.a-panel--list .grid {
    width: calc(100% + 20px);
    margin-left: -10px
}

.a-panel--pt.a-panel--list .grid__cell {
    padding: 0 10px 20px 10px
}

.a-panel--pt.a-panel--list .grid--list {
    padding: 0 0 30px 0
}

.a-panel--pt.a-panel--list .grid__cellwrap>.item {
    border: 1px solid #ccc;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background-color: #fff
}

.a-panel--pt.a-panel--list .item__content {
    padding: 20px
}

.a-panel--pt.a-panel--list .fa-block__links .item__content {
    padding: 0
}

.a-panel--pt.a-panel--render {
    padding: 80px 0
}

.a-panel--pt.a-panel--render.a-panel--hasbackground {
    padding: 80px 20px
}

.a-panel--pt.a-panel--list .item__imagecontainer {
    padding: 0 0 10px 0;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    overflow: hidden
}

@media(min-width: 470px) {
    .a-panel--pt .grid--list.grid--1col .item__imagecontainer {
        padding:0 20px 0 0
    }
}

.a-panel--pt.a-panel--list .item__title {
    padding: 0 0 10px 0;
    font-weight: bold;
    margin: 0
}

.a-panel--pt.a-panel--list .fa-block__links .item__title {
    padding: 0;
    font-weight: normal
}

.a-panel--pt.a-panel--list .item__sublinks li {
    padding: 10px 0 0 0
}

.a-panel--pt.a-panel--search.a-panel--centre .a-panel__title,.a-panel--pt.a-panel--search.a-panel--centre .a-panel__summary {
    text-align: center
}

.a-panel--pt.a-panel--search.a-panel--centre .gi-sitesearch--pt {
    margin: 0 auto;
    width: 70%
}

@media(max-width: 840px) {
    .a-panel--pt.a-panel--search.a-panel--centre .gi-sitesearch--pt {
        width:100%
    }
}

.a-panel--pt.a-panel--select {
    padding: 60px 0
}

.a-panel--pt.a-panel--select.a-panel--hasbackground {
    padding: 80px 0
}

@media(max-width: 1280px) {
    .a-panel--pt.a-panel--select.a-panel--hasbackground {
        padding:40px 20px
    }
}

.a-panel--pt.a-panel--select .a-panel__content {
    background-color: transparent
}

.a-panel--pt.a-panel--select.a-panel--hasbackground .a-panel__content {
    background-color: rgba(255,255,255,1);
    padding: 20px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    width: 100%
}

.a-panel--pt.a-panel--select .a-panel__title {
    display: block;
    padding: 0 0 20px 0;
    text-align: center
}

.a-panel--pt.a-panel--select .a-panel__summary {
    text-align: center;
    padding: 0 0 40px 0
}

.select-item__icon {
    display: none;
    max-width: 100%
}

.select-item__icon--default,.gi-tabs__tab--pt[aria-selected="true"] .select-item__icon--selected,.gi-accordion__toggle[aria-expanded] .select-item__icon--selected {
    display: inline-block
}

.gi-tabs__tab--pt[aria-selected="true"] .select-item__icon--default,.gi-accordion__toggle[aria-expanded] .select-item__icon--default {
    display: none
}

.select-item__title {
    display: block;
    padding: 10px 0 0 0;
    color: #4a4a4a;
    font-size: 1.2rem;
    font-weight: 400;
    text-decoration: none
}

.gi-tabs__tab--pt[aria-selected="true"] .select-item__title--button {
    font-weight: 700
}

.select-item-panel {
    position: relative
}

.select-item-panel::after {
    content: "";
    display: block;
    width: 100%;
    clear: both
}

.select-item-panel__imagecontainer {
    float: right;
    width: 49.999%;
    margin: 0 0 0 20px
}

.select-item-panel .a-panel__link--pt {
    background-color: #4a4a4a;
    color: #fff
}

.gi-responsiveimage--tabspanel {
    margin: 0;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    overflow: hidden;
    -webkit-box-shadow: 7px 8px 23px -6px rgba(0,0,0,0.2);
    -moz-box-shadow: 7px 8px 23px -6px rgba(0,0,0,0.2);
    box-shadow: 7px 8px 23px -6px rgba(0,0,0,0.2)
}

.select-item__summary {
    padding: 0 0 30px 0
}

.gi-tabs--pt {
    display: block
}

.a-panel--hasbackground .gi-tabs--pt {
    background: #f1f1f1;
    width: calc(100% + 40px);
    margin: 0 0 -20px -20px;
    padding: 20px;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px
}

@media(max-width: 850px) {
    .gi-tabs--pt {
        display:none
    }
}

.gi-tabs__panel--pt {
    border: 0
}

.gi-tabs__panel--pt::after {
    content: "";
    display: block;
    clear: both
}

.gi-accordion__panelcontent--pt::after {
    content: "";
    display: block;
    clear: both
}

.gi-tabs__tablist--pt {
    display: flex;
    margin: 0;
    border: 0;
    border-bottom: solid 4px #ccc
}

.gi-tabs__tab--pt,.gi-tabs__tab--pt[aria-selected="true"] {
    margin: 0 10px;
    border: 0;
    -webkit-border-radius: 10px 10px 0 0;
    border-radius: 10px 10px 0 0;
    background-color: transparent;
    flex-grow: 1;
    outline-offset: -2px;
    transition: .4s
}

.gi-tabs__tab--pt[aria-selected="true"] {
    background-color: #ccc
}

.gi-tabs__tab--pt:hover,.gi-tabs__tab--pt:focus {
    background-color: #e5e5e5
}

.gi-tabs__tab--pt[aria-selected="true"]:hover,.gi-tabs__tab--pt[aria-selected="true"]:focus {
    background-color: #ccc
}

.gi-tabs__fallback--pt {
    border: 0;
    background-color: transparent;
    margin: 0 auto 15px
}

.gi-tabs__fallback--pt:hover,.gi-tabs__fallback--pt:focus {
    background-color: #ccc
}

.gi-tabs--pt .a-panel__summary,.gi-accordion__panel--pt .a-panel__summary {
    text-align: left
}

.gi-accordion--pt {
    display: none
}

@media(max-width: 850px) {
    .gi-accordion--pt {
        display:block
    }
}

.gi-accordion__toggle--pt,.gi-accordion__fallback--pt {
    background-color: #e5e5e5
}

.gi-accordion__toggle--pt[aria-expanded],.gi-accordion__toggle--pt.gi-accordion__fallback--close {
    background-color: transparent
}

.gi-accordion__toggle--pt:hover,.gi-accordion__toggle--pt:focus,.gi-accordion__fallback--pt:hover,.gi-accordion__fallback--pt:focus,.gi-accordion__toggle--pt[aria-expanded]:hover,.gi-accordion__toggle--pt[aria-expanded]:focus,.gi-accordion__toggle--pt.gi-accordion__fallback--close:hover,.gi-accordion__toggle--pt.gi-accordion__fallback--close:focus {
    background-color: transparent
}

@media(max-width: 850px) {
    .select-item__iconcontainer {
        display:table-cell;
        vertical-align: middle;
        padding: 0 10px
    }

    .select-item__title {
        display: table-cell;
        font-size: 1.5rem;
        vertical-align: middle
    }
}

@media(max-width: 580px) {
    .select-item__imagecontainer {
        width:100%;
        margin: 0 0 20px 0
    }
}

.a-panel--pt.a-panel--square {
    padding: 60px 0 0 0;
    text-align: center
}

.a-panel--pt.a-panel--hasbackground .a-panel__squares {
    margin-top: 60px
}

.a-panel--pt .square {
    float: left;
    position: relative;
    width: 25%;
    overflow: hidden
}

.a-panel--pt .square__link {
    display: block;
    text-decoration: none;
    color: #000
}

.a-panel--pt .square__link:hover,.a-panel--pt .square__link:focus {
    text-decoration: underline;
    color: #000
}

.a-panel--pt .square__link::before {
    content: "";
    width: 1px;
    margin-left: -1px;
    float: left;
    height: 0;
    padding-top: 100%
}

@media(min-width: 1025px) {
    .a-panel--pt .square__link::after {
        content:"";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        transition: transform .4s linear
    }
}

.a-panel--pt .square__picture {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .4s linear;
    margin: 0;
    padding: 0;
    border: 0
}

.a-panel--pt .square__link--content:hover::after,.a-panel--pt .square__link--content:focus::after,.a-panel--pt .square__link--content:hover .square__picture,.a-panel--pt .square__link--content:focus .square__picture {
    transform: translateY(-20px)
}

@media(max-width: 1024px) {
    .a-panel--pt .square__image {
        display:block;
        position: relative
    }
}

.a-panel--pt .square__overlay {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 2;
    text-align: center;
    background-color: rgba(0,0,0,0.5)
}

.a-panel--pt .square__link--content:hover .square__overlay,.a-panel--pt .square__link--content:focus .square__overlay {
    opacity: 1
}

.a-panel--pt .square__content {
    padding: 35px
}

@media(min-width: 1025px) {
    .a-panel--pt .square__content {
        position:absolute;
        visibility: visible;
        display: block;
        width: 1px;
        height: 1px;
        margin: -1px;
        top: auto;
        left: 0;
        padding: 0;
        bottom: -999px;
        z-index: 3;
        border: 0;
        clip: rect(0 0 0 0);
        clip: rect(0,0,0,0);
        color: #000;
        background-color: #f1f1f1;
        overflow: hidden
    }

    .a-panel--pt .square__link--content:hover .square__content,.a-panel--pt .square__link--content:focus .square__content,.a-panel--pt .square__link--content:active .square__content {
        clip: auto;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 35px;
        color: inherit;
        bottom: 0;
        -webkit-transition: bottom .4s ease-in-out;
        -o-transition: bottom .4s ease-in-out;
        transition: bottom .4s ease-in-out
    }

    .a-panel--pt .square__link--content:focus .square__content,.a-panel--pt .square__link--content:active .square__content {
        border: 1px dotted #0064ff
    }
}

.a-panel--pt .square__title {
    display: block;
    font-size: 1.2rem;
    margin: 0;
    padding: 0 0 20px 0;
    font-weight: 700
}

.a-panel--pt .square__summary {
    font-size: 1rem
}

.a-panel--pt .square__summary .a-panel__summary {
    text-align: center;
    padding: 0
}

.a-panel--pt .carousel--square {
    display: none
}

.a-panel--pt .gi-carousel--square {
    width: auto;
    margin: 0 20px
}

.a-panel--pt.a-panel--hasbackground .gi-carousel--square {
    margin: 20px 0 0 0
}

.a-panel--pt .gi-carousel--square .gi-carousel__linkswrapper {
    padding: 20px 0
}

.a-panel--pt .carousel--square {
    display: none
}

.a-panel--pt .carousel--square .arrows {
    top: 0
}

@media(max-width: 1024px) {
    .a-panel--pt .square {
        width:50%
    }

    .a-panel--pt .square__content {
        bottom: 0;
        position: static
    }

    .a-panel--pt .square:nth-child(2n+1) {
        clear: both
    }

    .a-panel--pt .square:nth-child(2n+1) .square__content {
        background: #e5e5e5
    }

    .a-panel--pt .square__link--content:hover::after,.a-panel--pt .square__link--content:focus::after,.a-panel--pt .square__link--content:hover .square__picture,.a-panel--pt .square__link--content:focus .square__picture {
        transform: none
    }
}

@media(max-width: 580px) {
    .a-panel--pt .square {
        width:100%
    }

    .a-panel--pt.a-panel--square {
        padding: 60px 0 0 0
    }

    .a-panel--pt .a-panel__squares {
        display: none
    }

    .a-panel--pt .carousel--square {
        display: block
    }

    .a-panel--pt .square__overlay {
        display: none
    }

    .a-panel--pt .square:nth-child(2n+1) .square__content {
        background: #fff
    }
}

.a-panel--pt.a-panel--parallax {
    position: relative;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #4a4a4a
}

.a-panel--pt.a-panel--parallax .a-panel__content {
    padding: 40px 20px 20px 20px;
    background-color: rgba(0,0,0,1);
    -webkit-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    text-shadow: 0 0 .8em #000,0 0 .2em #000,0 0 .2em #000
}

.a-panel--pt .grid--parallax {
    width: calc(100% + 20px);
    margin: 0 -10px
}

.a-panel--pt .grid__cell--feature {
    padding: 20px 10px 0 10px
}

.a-panel--pt .fa-block {
    background-color: rgba(0,0,0,1);
    color: #fff;
    padding: 35px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid #aaa;
    width: 100%
}

.a-panel--pt .fa-block__content {
    display: block;
    width: 100%
}

.a-panel--pt .fa-block__content::after {
    content: "";
    display: block;
    clear: both
}

.a-panel--pt .fa-block__imagecontainer {
    display: inline-block;
    width: 30%;
    float: left;
    vertical-align: top
}

.a-panel--pt .fa-block__details {
    display: inline-block;
    vertical-align: top;
    width: 100%
}

.a-panel--pt .fa-block__imagecontainer+.fa-block__details {
    padding: 0 0 0 35px;
    width: 60%
}

.a-panel--pt .fa-block__title {
    margin: 0;
    padding: 0 0 20px 0;
    font-size: 1.556rem
}

.a-panel--pt .fa-block__link,.a-panel--pt .fa-block a {
    color: #fff;
    text-decoration: none
}

.a-panel--pt .fa-block__link:hover,.a-panel--pt .fa-block__link:focus,.a-panel--pt .fa-block a:hover,.a-panel--pt .fa-block a:focus {
    text-decoration: underline;
    color: #fff
}

.a-panel--pt .fa-block__body {
    margin: 0 0 20px 0;
    color: #fff
}

.a-panel--pt .fa-block__links .item__link {
    margin: 0 0 20px 0;
    display: block
}

@media(max-width: 1200px) {
    .a-panel--pt .fa-block__imagecontainer {
        display:block;
        width: 100%;
        padding: 0 0 10px 0
    }

    .a-panel--pt .fa-block__imagecontainer+.fa-block__details {
        padding: 0;
        width: 100%
    }

    .a-panel--pt .fa-block__details {
        display: block;
        padding: 0
    }

    .a-panel--pt .grid--2col>.grid__cell--feature {
        width: 50%;
        margin: 0;
        padding: 10px 0
    }

    .a-panel--pt .grid--2col>.grid__cell--feature:nth-child(2n) .grid__cellwrap {
        padding: 0 0 0 10px
    }

    .a-panel--pt .grid--2col>.grid__cell--feature:nth-child(2n+1) .grid__cellwrap {
        padding: 0 10px 0 0
    }
}

@media(max-width: 850px) {
    .a-panel--pt .grid--2col>.grid__cell--feature {
        width:100%;
        margin: 0;
        padding: 10px 0
    }

    .a-panel--pt .grid--2col>.grid__cell--feature:nth-child(2n) .grid__cellwrap,.a-panel--pt .grid--2col>.grid__cell--feature:nth-child(2n+1) .grid__cellwrap {
        padding: 0
    }
}

.a-panel--pt.a-panel--carousel-pt {
    padding: 60px 0 0 0
}

.container.container--carousel {
    padding-bottom: 20px
}

.gi-carousel--pt {
    clear: both;
    padding: 0
}

.gi-carousel--pt .gi-carousel__controls {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    text-align: right;
    z-index: 2
}

.gi-carousel--pt .gi-carousel__linkswrapper {
    position: absolute;
    bottom: 20px;
    width: 100%;
    z-index: 2
}

.gi-carousel--pt .gi-carousel__slide {
    padding: 0
}

.a-panel--carousel-pt.a-panel--parallax-background .gi-carousel--pt .a-panel--pt.a-panel--hasbackground,.a-panel--carousel-pt.a-panel--parallax-background .a-panel__no-carousel .a-panel--pt.a-panel--hasbackground {
    background-attachment: fixed
}

.gi-carousel--pt .gi-carousel__slide {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden
}

.a-panel--carouselitem {
    background-color: initial
}

.a-panel--pt.a-panel--render.a-panel--carouselitem {
    padding-top: 84px;
    padding-bottom: 94px
}

.booking-search__quicksearch {
    width: 100%;
    overflow: auto;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    background-color: transparent;
    width: 100%;
    text-align: left;
    font-weight: bold;
    font-size: 1.1rem;
    font-family: inherit;
    color: inherit;
    border: 1px solid #ccc
}

.booking-search__option {
    padding: 10px 30px
}

.booking-search__label {
    clear: both;
    font-size: 1.25em
}

.booking-search__dropdown {
    display: block;
    width: 100%;
    height: 40px
}

.booking-search__field {
    display: block;
    width: 100%;
    height: 34px
}

.booking-search__submitwrap.booking-search__submitwrap--keywords {
    margin: 30px 30px 0
}

.booking-search__submit {
    width: 100%
}

.booking--error {
    border: 4px solid #b10e1e
}

.booking--errortext {
    color: #b10e1e;
    font-size: 1.1875rem;
    line-height: 1.31579;
    font-weight: bold
}

.booking-search__input--keywords {
    width: calc(100% - 10px)
}

.nvp__value--inlineblock {
    display: inline-block
}

.btn--shortlist {
    position: relative;
    max-width: 200px;
    top: 0;
    right: 0;
    z-index: 2;
    background-color: transparent;
    padding: 0;
    padding-left: 20px;
    margin: 0;
    margin-right: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
    display: inline-block;
    float: right
}

.btn--shortlist::before {
    content: "\e805";
    left: 0;
    font-weight: bold;
    line-height: 1
}

.btn--shortlist.cta-shortlist-remove::before {
    content: "\e804";
    left: 0;
    font-weight: bold;
    line-height: 1
}

.cta-link--shortlist {
    width: 100%;
    margin-bottom: 10px;
    margin-top: 10px;
    text-align: center
}

.template--roombookingsearch .grid.grid--slotbooking.grid--filter.grid--3col {
    display: none
}

.template--roombookingsearch .searchform__input {
    float: left;
    width: calc(100% - 70px)
}

.booking-search__field--error {
    outline: 4px solid #b10e1e;
    outline-offset: 5px
}

.slotbook__info {
    display: inline-block
}

.slotbook__info::before {
    content: "\e839";
    font-size: 1rem;
    cursor: pointer;
    right: 20px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.slotbook__title--shortlist {
    position: relative
}

.cta-link__room--half {
    width: calc(50% - 15px);
    margin-right: 20px
}

.template--roombookingsearch .grid__cell--searchitem__roominfo .cta-link:last-child {
    margin-right: 0;
    margin-top: 20px
}

.booking-search__dropdown--starttime {
    width: calc(50% - 5px);
    float: left;
    margin-right: 5px
}

.booking-search__dropdown--starttime:last-child {
    width: calc(50% - 5px);
    float: left;
    margin-right: 0;
    margin-left: 5px
}

.booking-search__dropdown--endtime {
    width: calc(50% - 5px);
    float: left;
    margin-right: 5px
}

.booking-search__dropdown--endtime:last-child {
    width: calc(50% - 5px);
    float: left;
    margin-right: 0;
    margin-left: 5px
}

.booking-search__input.booking-search__input--datestart {
    width: 100%;
    overflow: auto
}

.booking-search__input.booking-search__input--dateend {
    width: 100%;
    overflow: auto
}

.booking-search__date {
    margin: 10px 30px
}

.booking-search__date .booking-search__option {
    padding: 0
}

.booking-search__date .booking-search__option--keywords:last-child {
    margin-top: 20px
}

.template--roombookingsearch .roomsearch-advancedsearch {
    border: 1px solid #ccc;
    border-top: 0
}

.template--roombookingsearch .searchoptions.searchoptions--desktop {
    margin-top: 60px
}

.template--roombookingsearch .gi-sitesearch__container {
    margin: 0
}

.template--roombookingsearch .roomcard {
    border: 1px solid #ccc;
    padding: 20px;
    position: relative
}

.template--roombookingsearch .searchresults__item {
    list-style: none!important
}

.template--roombookingsearch .cta-link--shortlist {
    display: none!important
}

.errormsgformatstarttime,.errormsgformatbookingdate,.errormsgformatbookingcapacity,.errormsgformatbookingmaxcapacity {
    margin: 10px 30px;
    color: #b10e1e;
    font-weight: bold
}

.errormsgformatbookingdate,.errormsgformatbookingcapacity,.errormsgformatbookingmaxcapacity {
    margin: 0;
    margin-bottom: 10px
}

.booking-search__option.booking-search__option--capacity {
    width: calc(50% - 50px);
    float: left;
    padding: 0;
    padding-left: 30px
}

.booking-search__checkcontainer input[type="checkbox"] {
    position: absolute;
    cursor: pointer;
    left: 0;
    top: 0;
    width: 38px;
    height: 38px;
    z-index: 1;
    margin: 0;
    zoom:1;filter: alpha(opacity=0);
    opacity: 0
}

.booking-search__checkcontainer input[type="checkbox"]:checked+label::after {
    content: "";
    border: solid;
    border-top-color: currentcolor;
    border-top-width: medium;
    border-right-width: medium;
    border-bottom-width: medium;
    border-left-width: medium;
    border-width: 0 0 5px 5px;
    background: transparent;
    border-top-color: transparent;
    width: 17px;
    height: 7px;
    position: absolute;
    top: 9px;
    left: 7px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    color: #333
}

.booking-search__checkcontainer label:before {
    content: "";
    border: 1px solid #999;
    background: transparent;
    width: 34px;
    height: 34px;
    position: absolute;
    top: 0;
    left: 0
}

.booking-search__checkcontainer li {
    position: relative
}

.booking-search__checkcontainer label {
    padding: 5px 20px 20px 50px;
    display: inline-block;
    font-weight: normal;
    max-width: calc(100% - 25px);
    vertical-align: top
}

.booking-search__check ol {
    height: 106px;
    overflow-y: scroll;
    border: 1px solid #999;
    background-color: #fff;
    padding: 10px
}

.booking-search__checkcontainer input[type="checkbox"]:focus+label::before {
    outline: 2px solid #0064FF;
    outline-offset: 0
}

.room__details {
    width: 100%;
    white-space: pre-wrap
}

.cta-link__room {
    width: 100%;
    text-align: center
}

.template--roombookingsearch .card__imagecontainer {
    text-align: center
}

.template--roombookingsearch .card__image {
    max-width: 100%;
    margin-top: 20px
}

.a-relimage.a-relimage--slotbook {
    display: none
}

.card__list--roomdetails {
    float: left;
    width: calc(100% / 2)
}

.card__list--roomdetails .nvp {
    margin-bottom: 10px
}

.card__list--roomdetails .nvp__label {
    min-width: 120px;
    display: inline-block
}

.card__list--roomdetails+.card__image {
    float: right;
    vertical-align: top;
    margin: 0 0 1em;
    width: calc(100% / 2);
    max-width: 400px
}

.shortlist__datepicker::before {
    content: "\e81e";
    line-height: 1;
    font-size: 150%;
    color: #333;
    margin: 0 0 0 20px
}

.shortlist__datepicker:hover::before {
    color: #000
}

.shortlist__datepicker {
    position: relative
}

.shortlist__datepicker:focus,.shortlist__datepicker:hover {
    border: 0;
    text-decoration: none;
    cursor: pointer
}

.shortlist__datepickerinput,.shortlist__datepickerinput:focus,.shortlist__datepickerinput:hover {
    width: 0;
    padding: 0;
    border: 0;
    margin: 30px 0 0 -30px;
    position: absolute
}

#searchanchor {
    visibility: hidden;
    height: 0;
    width: 0
}

.dialog--slot-details .card__list--roomdetails+.card__image {
    float: right;
    margin: 20px 0;
    width: 100%;
    max-width: none
}

.btn--selfservice,.cta-link--selfservice {
    margin: 0
}

.block--selfservice .block__heading {
    font-size: 1.5rem
}

.block--selfservice .grid__cell--viewall {
    text-align: right
}

.block--selfservice .grid__cell--cols1+.grid__cell--viewall {
    text-align: left
}

.block--selfservice .cta-link--task {
    margin: 10px 0 0 0;
    padding: 5px 30px 5px 10px;
    font-weight: normal
}

.block--selfservice .cta-link--viewall {
    background-color: #fff;
    border: 1px solid #ccc
}

.template--selfservice .cta-link--task:first-child,.template--selfservice .cta-link--task:only-child {
    margin: 0
}

.block--selfservice .paging {
    padding: 10px 0
}

.block--selfservicedetails {
    background-color: #efefef;
    padding: 20px
}

.grid__cell--selfservicedetails-summaryform>.grid__cellwrap {
    background-color: #fff;
    padding: 20px;
    border: 1px solid #ccc;
    overflow-x: auto;
    width: 100%;
    box-sizing: border-box
}

.block--selfservicedetails .icmformdatacontainer {
    padding: 10px
}

.block--selfservicedetails .icmformdatalabel,.block--selfservicedetails .icmformdatavalue {
    padding: 10px
}

.block--selfservicedetails .icmformdata tr {
    border-bottom: 1px solid #ccc
}

.block--selfservicedetails .icmformdata tr:last-child {
    border-bottom: 0
}

.block--selfservicedetails .icmformdata .WYSIWYG-READONLY {
    margin: 0;
    display: table-row
}

.block--selfservicedetails .icmformdata pre {
    font-family: inherit
}

.block--selfservicedetails .icmformdatalabel {
    width: 200px
}

.block--selfservicedetails .icmformdatavalue {
    width: auto
}

.block--selfservicedetails-eventlog {
    margin-top: 20px;
    background-color: #fff
}

.block--selfservicedetails-eventlog .block__listitem {
    position: relative;
    padding: 10px;
    border: 1px solid #ccc;
    border-bottom: 0
}

.block--selfservicedetails-eventlog .block__listitem:last-child {
    border-bottom: 1px solid #ccc
}

.block--selfservicedetails-eventlog .block__listitem:nth-child(odd) {
    background-color: #f2f2f2
}

.nvp--eventdescription {
    font-weight: bold;
    display: block
}

.nvp--highlight {
    border-right: 1px solid #ccc;
    padding: 0 5px
}

.nvp--highlight:last-child {
    border: 0
}

.block__link--eventdetails:before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 0
}

.block__link--eventdetails:hover:before,.block__link--eventdetails:focus:before {
    background-color: rgba(0,0,0,0.2)
}

.dialog--nojs.dialog--eventdetails-open {
    display: block
}

.dialog--selfservicedetails-event .icmformdata {
    margin: 20px 0 0 0
}

.dialog--selfservicedetails-event .nvp {
    display: block;
    padding: 0 0 10px 0
}

.dialog--selfservicedetails-event .nvp__time {
    padding: 0 0 0 10px
}

.selfservice-search {
    width: 100%;
    padding: 10px 0;
    clear: both
}

@media(max-width: 920px) {
    .selfservice-search .grid__cell {
        width:100%;
        padding: 0 0 20px 0
    }

    .selfservice-search .grid__cell:last-of-type {
        padding: 0
    }
}

.selfservice-search__label--filter,.selfservice-search__label {
    margin: 0 10px 0 0;
    font-weight: bold;
    font-size: 1rem
}

.selfservice-search__filter,.selfservice-search__pagesize {
    padding: 0 20px 0 10px;
    border: solid 1px #999;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.6
}

.selfservice-search__label--keywords {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0px 0 0 0);
    clip: rect(0px,0px,0px,0px);
    clip-path: polygon(0px 0,0px 0,0px 0,0px 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.selfservice-search__keywords {
    width: calc(100% - 50px);
    height: 50px;
    padding: 10px;
    border: solid 1px #999;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.6
}

.selfservice-search .btn--sort,.selfservice-search__filter,.selfservice-search__pagesize {
    height: 50px
}

.searchsummary--selfservice {
    padding: 20px 0
}

.selfservice-search__no-results {
    margin: 20px 0 0 0
}

.btn--selfservice-search {
    border: solid 1px #000;
    border-left: 0;
    margin: 0;
    font-size: 20px;
    height: 50px;
    width: 50px;
    float: right
}

.btn--selfservice-search .btn__text {
    width: 1px;
    height: 1px;
    margin: -1px;
    position: absolute;
    overflow: hidden
}

.btn--selfservice-search:after {
    content: "\e800";
    top: calc(50% - 12px);
    right: 14px
}

.gi-loader--datatable {
    height: 80px;
    width: 80px;
    background-size: 80px 80px;
    left: calc(50% - 40px)
}

.datatable--assignedTasks .datatable__heading,.datatable--claimableTasks .datatable__heading,.datatable--activeProcesses .datatable__heading,.datatable--completedHistory .datatable__heading {
    box-sizing: border-box
}

.datatable--assignedTasks .datatable__heading--check,.datatable--claimableTasks .datatable__heading--check {
    min-width: 50px
}

.datatable--assignedTasks .datatable__heading--task,.datatable--claimableTasks .datatable__heading--task {
    min-width: 200px
}

.datatable--assignedTasks .datatable__heading--description,.datatable--claimableTasks .datatable__heading--description,.datatable--activeProcesses .datatable__heading--description,.datatable--completedHistory .datatable__heading--description {
    min-width: 300px
}

.datatable--assignedTasks .datatable__heading--date,.datatable--claimableTasks .datatable__heading--date,.datatable--activeProcesses .datatable__heading--date,.datatable--completedHistory .datatable__heading--date,.datatable--assignedTasks .datatable__heading--user,.datatable--claimableTasks .datatable__heading--user,.datatable--activeProcesses .datatable__heading--user,.datatable--completedHistory .datatable__heading--user {
    min-width: 180px
}

.datatable--assignedTasks .datatable__cell--task,.datatable--claimableTasks .datatable__cell--task,.datatable--activeProcesses .datatable__cell--task {
    padding: 10px
}

.nvp--ss-datatable-bk {
    display: block;
    margin-top: 5px
}

.cta-link--assigned:hover,.cta-link--assigned:focus,.cta-link--claimanddo:hover,.cta-link--claimanddo:focus {
    color: #fff
}

.cta-link--disabled.cta-link--claim,.cta-link--disabled.cta-link--claim:hover,.cta-link--disabled.cta-link--claim:focus {
    color: #666;
    background-color: #e5e5e5
}

.cta-link--disabled.cta-link--assigned,.cta-link--disabled.cta-link--assigned:hover,.cta-link--disabled.cta-link--assigned:focus,.cta-link--disabled.cta-link--claimanddo,.cta-link--disabled.cta-link--claimanddo:hover,.cta-link--disabled.cta-link--claimanddo:focus {
    color: #4a4a4a;
    background-color: #ccc
}

@media(min-width: 1000px) {
    .grid__cell--selfservicedetails-actions {
        float:right
    }

    .grid__cell--selfservicedetails-summaryform {
        padding-right: 20px
    }
}

.grid__cell--selfservicedetails-summaryform:only-child {
    padding-right: 0
}

.block--selfservicedetails-actions {
    background-color: #fff
}

.a-relimage--service {
    display: none
}

.service-results__item {
    display: block;
    margin: 0 0 30px 0;
    padding: 0 0 30px 0;
    border-bottom: 2px solid #ccc;
    float: left;
    width: 100%
}

a.service__results--heading {
    font-size: 1.25rem;
    font-weight: bold
}

div.service-results__summary {
    padding: 0;
    margin: 10px 0;
    display: inline-block
}

.nvp--service-location::before {
    content: "\e819";
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    font-size: 150%
}

.nvp--service-contact::before {
    content: "\e81b";
    margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
    font-size: 150%
}

.service-results__imagecontainer {
    max-width: 200px;
    float: right
}

.service-results__image {
    max-width: 100%
}

.service-related__heading {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 0 0 40px 0;
    padding: 0 0 10px 0;
    border-bottom: 2px solid #ccc
}

.servicemap__infowindow a {
    font-weight: bold;
    float: left;
    margin-bottom: 10px;
    width: 100%
}

.servicemap__infowindow {
    margin-right: 10px;
    font-size: 16px
}

.service-logo {
    max-width: 300px;
    border: 1px solid #ddd;
    background-color: #fff;
    line-height: 150px;
    padding: 5px;
    border-collapse: collapse;
    margin: 0 20px 20px 0;
    text-align: center
}

.service-logo__image img {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
    max-height: 150px;
    width: auto
}

.service-contact .grid {
    width: 100%
}

.a-intro--service {
    margin: 10px 0 30px 0
}

.template--eventsearch .nvp__value {
    width: calc(100% - 64px);
    padding-right: 10px
}

.template--eventsearch span.nvp__value {
    word-break: break-word;
    display: inline-block
}

.template--eventsearch .nvp--service {
    margin-bottom: 10px
}

.template--eventsearch .nvp__service::before {
    display: inline-block;
    font-size: 150%;
    height: 44px;
    width: 44px
}

.template--service .nvp__value {
    width: calc(100% - 64px);
    padding-right: 10px
}

.template--service span.nvp__value {
    word-break: break-word;
    display: inline-block
}

.template--service .nvp--service {
    margin-bottom: 10px
}

.template--service .nvp__service::before {
    display: inline-block;
    font-size: 150%;
    height: 44px;
    width: 44px
}

.nvp__service--address,.nvp__service--telephone,.nvp__service--email,.nvp__service--web,.nvp__service--contact {
    margin-bottom: 10px
}

.nvp__service--address::before {
    content: "\e819"
}

.nvp__service--telephone::before {
    content: "\e81b"
}

.nvp__service--email::before {
    content: "\f0e0"
}

.nvp__service--web::before {
    content: "\e832"
}

.social-media__link {
    width: 44px;
    height: 44px;
    display: inline-block;
    font-size: 150%
}

.social-media__link--facebook::before {
    content: url('./resource/template/service/images/servicedirectory/facebook.png?v=638240578080000000');
    width: 44px;
    height: 44px
}

.social-media__link--twitter::before {
    content: url('./resource/template/service/images/servicedirectory/twitter.png?v=638240578080000000');
    width: 44px;
    height: 44px
}

.social-media__link--instagram::before {
    content: url('./resource/template/service/images/servicedirectory/instagram.png?v=638240578080000000');
    width: 44px;
    height: 44px
}

.service-openinghours {
    margin-top: 20px
}

.nvp__service--opening .nvp__label {
    display: block;
    padding: 10px 10px;
    border: 1px solid #bbb;
    box-sizing: border-box;
    border-collapse: collapse;
    background-color: #ddd
}

.nvp__service--opening .nvp__value {
    display: block;
    border-left: 1px solid #bbb;
    border-bottom: 1px solid #bbb;
    border-right: 1px solid #bbb;
    padding: 10px 10px;
    width: 100%;
    border-collapse: collapse;
    box-sizing: border-box
}

.service-openinghours .note {
    margin-top: 10px
}

@media(max-width: 640px) {
    .nvp__service--opening {
        width:100%
    }

    .nvp__service--opening .nvp__label,.nvp__service--opening .nvp__value {
        display: inline-block
    }

    .nvp__service--opening .nvp__label {
        width: calc(30% - 20px)
    }

    .nvp__service--opening .nvp__value {
        width: calc(65% - 20px);
        border: 0
    }

    .service-openinghours .grid__cell--cols1 {
        width: 100%
    }
}

.service-location {
    margin: 30px 0
}

.service__cta {
    text-align: center;
    margin: 30px 0 10px 0
}

.service__map {
    width: auto;
    height: 400px;
    position: relative;
    overflow: hidden;
    margin: 0 0 20px 0;
    border: 1px solid #ddd
}

.template--service .a-relimage {
    display: none
}

.a-body.a-body--service {
    padding: 0 30px 80px 30px
}

#SERVICECREATE_FORM .icmform .locationsearch:first-of-type input[type="button"] {
    margin: 0 10px 20px 0
}

#SERVICECREATE_FORM .icmlocationmap {
    margin-bottom: 20px
}

#SERVICECREATE_FORM .gi-accordion__toggle[aria-expanded],#SERVICECREATE_FORM .gi-accordion__fallback--close,#SERVICECREATE_FORM .gi-accordion__toggle[aria-expanded]:hover,#SERVICECREATE_FORM .gi-accordion__toggle[aria-expanded]:focus,#SERVICECREATE_FORM .gi-accordion__fallback--close:hover,#SERVICECREATE_FORM .gi-accordion__fallback--close:focus {
    background: #4a4a4a;
    color: #fff
}

#SERVICECREATE_FORM .gi-accordion__panelcontent {
    border-top: 0;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc
}

#SERVICECREATE_FORM .summaryeditbtn {
    margin-top: 10px
}

.slotbooking {
    font-size: 1rem;
    position: relative;
    width: 100%;
    margin: 0 0 20px 0
}

.grid--wrapper {
    overflow: visible
}

.slotbooking .gi-disclosure {
    position: relative;
    border: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%
}

.slotbooking .gi-disclosure__toggle {
    border: 0;
    background-color: #333;
    color: white;
    padding: 0;
    margin: 0;
    margin-bottom: 20px
}

.slotbooking .gi-disclosure__toggle::after {
    display: none
}

.slotbooking .accordion--closed .accordion__heading {
    border-bottom: 0;
    margin: 0
}

.slotbooking .accordion__heading::after {
    display: none
}

.slotbooking .accordion__heading {
    box-sizing: border-box;
    padding: 20px;
    display: block;
    cursor: pointer;
    margin: 0
}

.slotbooking .accordion__content {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px;
    background-color: #fff;
    display: none
}

.walkin-list__item {
    list-style: none
}

.slotbooking .accordion__heading::after {
    position: absolute;
    right: 20px;
    top: 17px;
    display: block;
    text-align: center;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    font-size: 150%
}

.gi-disclosure--walkin .accordion__heading {
    text-align: center;
    color: #fff;
    background-color: #333;
    font-weight: bold;
    font-size: 1.5rem;
    padding: 10px
}

.gi-disclosure--walkin .accordion__heading::after {
    top: 5px
}

.cta-link--walkin {
    font-size: 1.25rem;
    width: 100%
}

.cta-link--walkin::after {
    position: absolute;
    top: 0;
    line-height: 44px
}

.cta-link--walkin .cta-link__text {
    display: inline-block;
    vertical-align: middle;
    line-height: 1
}

.cta-link__text--person::before {
    content: "-";
    line-height: 1;
    vertical-align: baseline
}

.walkin-list li:last-child .cta-link {
    margin: 0
}

.slotbooking__day {
    width: 100%;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    color: #fff;
    background-color: #333;
    display: block;
    font-weight: bold;
    font-size: 1.25rem;
    position: relative
}

.slotbooking__day:hover,.slotbooking__day:focus {
    -webkit-box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    box-shadow: inset 20em 20em rgba(0,0,0,0.5);
    text-decoration: none
}

.slotbooking__day--select,.slotbooking__day--select:hover {
    background-color: #dedede;
    color: inherit;
    -webkit-box-shadow: none;
    box-shadow: none
}

.slotbooking__day--past:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: calc(100% + 2px);
    height: 1px;
    background-color: #aaa;
    -webkit-transform: rotate(-12deg);
    -ms-transform: rotate(-12deg);
    transform: rotate(-12deg)
}

.grid__cell--datepicker .searchform__inputtxt {
    width: auto;
    max-width: 125px
}

.grid__cell--datepicker .btn {
    vertical-align: middle
}

.grid__cell--datepicker {
    background-color: #dedede;
    padding: 20px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold
}

.grid__cell--datepicker .slotbooking__label {
    display: inline-block;
    vertical-align: middle
}

.slotbooking__calendarbtn::before {
    content: "\e81e";
    line-height: 1;
    font-size: 150%;
    color: #333;
    margin: 0 0 0 20px
}

.slotbooking__datepicker:hover::before {
    color: #000
}

.slotbooking__datepicker {
    position: relative;
    display: inline-block
}

.slotbooking__datepicker:focus,.slotbooking__datepicker:hover {
    border: 0;
    text-decoration: none;
    cursor: pointer
}

.grid--slotbooking.grid--filter>.grid__cell:nth-child(3n+1) {
    clear: none
}

.grid--filter {
    overflow: visible;
    background-color: #dedede;
    padding: 0 10px;
    margin: 0 0 10px 0;
    width: 100%;
    box-sizing: border-box
}

.grid--filter .grid__cell.grid__cell--title {
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
    padding: 20px 0
}

.grid--filter .grid__cellwrap {
    padding: 0 10px 20px 10px
}

.gi-disclosure--filter .accordion__heading {
    background-color: #333;
    color: #fff;
    font-weight: bold;
    font-size: 1.1rem;
    padding: 10px
}

.gi-disclosure--filter .accordion__heading::after {
    top: 7px;
    right: 15px
}

.grid--filter.grid--3col .gi-disclosure--filter.accordion--open .accordion__content {
    border: 1px solid #ccc;
    position: absolute;
    top: 44px;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 6
}

.filter-list__item {
    position: relative;
    height: 40px;
    margin: 0 0 10px 0
}

.filter-list--time .filter-list__item {
    height: auto;
    margin: 0 0 20px 0
}

.filter-list__item:last-child {
    margin: 0
}

.filter-list__checkbox {
    position: absolute;
    cursor: pointer;
    left: 0;
    top: 0;
    width: 38px;
    height: 38px;
    z-index: 1;
    margin: 0;
    zoom:1;filter: alpha(opacity=0);
    opacity: 0
}

.filter-list__label {
    padding: 5px 20px 0 50px;
    vertical-align: middle;
    display: inline-block
}

.filter-list--time .filter-list__label {
    padding: 0;
    margin: 0 0 0 10px;
    width: 70px
}

.ilter-list__input {
    display: block
}

.filter-list__label:hover,.filter-list__label::after:hover {
    cursor: pointer
}

.filter-list__label::before {
    content: "";
    border: 1px solid #999;
    background: #fff;
    width: 34px;
    height: 34px;
    position: absolute;
    top: 0;
    left: 0
}

.filter-list--time .filter-list__label::before {
    display: none
}

.filter-list__checkbox:checked+.filter-list__label::after {
    content: "";
    border: solid;
    border-width: 0 0 5px 5px;
    border-color: #333;
    background-color: transparent;
    border-top-color: transparent;
    width: 17px;
    height: 7px;
    position: absolute;
    top: 9px;
    left: 7px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.filter-list__checkbox:checked+.filter-list__label {
    font-weight: bold
}

.filter-list__checkbox:focus+.filter-list__label::before {
    -webkit-box-shadow: 0 0 0 2px #0064FF;
    box-shadow: 0 0 0 2px #0064FF
}

.filter-list__input {
    padding: 10px 20px;
    width: calc(100% - 90px);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: middle;
    display: inline-block;
    font-family: inherit;
    font-size: 1rem
}

.grid--slotbooking.grid--filter .btn--accordion {
    margin: 20px 0 0 0;
    font-size: 1.1rem
}

.slotbooking__time {
    width: 50px;
    margin: 0 10px 0 0;
    float: left
}

.slotbook_header--time:after {
    content: url('./resource/themes/_default/images/swipe_icon.png?v=638113666660000000');
    position: absolute;
    left: 5px;
    top: 12px;
    text-align: center
}

.slotbooking__calendars {
    width: calc(100% - 60px);
    float: left;
    white-space: nowrap;
    overflow-x: auto
}

.block--availability {
    margin: 20px 0;
    padding: 0
}

.overide-list__item {
    padding: 20px 20px 0 20px;
    margin: 0;
    list-style: none
}

.overide-list__item:last-child {
    padding-bottom: 20px
}

.overide-list__item--override {
    color: #f00;
    font-weight: 700
}

.cta-link--availability {
    margin: 0
}

.slotbook {
    width: calc(33% - 8px);
    height: 100%;
    display: inline-block;
    margin-right: 10px;
    vertical-align: top;
    position: relative
}

.slotbook--time {
    width: 50px;
    margin: 0 10px 0 0
}

.slotbook__title {
    margin: 0 10px 0 0;
    padding: 20px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    font-size: 1.1rem;
    font-weight: bold;
    background-color: #dedede;
    overflow: hidden;
    text-overflow: ellipsis
}

.slotbook__info::before {
    content: "\e839";
    font-size: 1.1rem;
    cursor: pointer;
    right: 20px;
    top: auto;
    position: absolute;
    font-weight: bold;
    color: #000;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.slotbook__slot {
    height: 40px;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    border-right: 2px solid #efefef;
    border-bottom: 2px solid #fff
}

.slotbook__slot--calendar {
    background-color: #dedede;
    border-right: 0
}

a.slotbook__slot--calendar:hover {
    background-color: #333;
    color: #fff
}

a.slotbook__slot--calendar:hover::after {
    content: attr(data-timespan);
    line-height: 40px;
    height: 100%;
    width: 100%;
    font-size: 1.1rem;
    text-align: center
}

a.slotbook__slot--calendar:hover::before {
    line-height: 40px;
    height: 100%;
    position: absolute;
    left: 15px;
    font-size: 1rem;
    text-align: left
}

.slotbook__slot--disabled {
    -webkit-box-shadow: inset 20em 20em rgba(255,255,255,0.6);
    box-shadow: inset 20em 20em rgba(255,255,255,0.6)
}

.slotbook__slot--time {
    position: relative
}

.slotbook__value--time {
    position: absolute;
    top: -22px;
    font-size: 1rem
}

.slotbook__value--timenoheader {
    position: absolute;
    top: -5px;
    font-size: 1rem
}

.slotbook__content--calendar {
    position: relative;
    overflow-y: hidden;
    margin-top: 0
}

.slotbook__item {
    position: absolute;
    border-bottom: 1px solid #FFF;
    border-right: 1px solid #FFF;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    overflow: hidden;
    background-color: #494949;
    color: #fff;
    z-index: 1
}

.slotbook__item--inactiveperiod {
    color: inherit;
    background-color: #bebebe
}

.slotbook__item--deselected {
    background-color: #CCC!important;
    color: #000!important
}

.slotbook__item--disabled {
    background-color: #CCC!important;
    color: #000!important
}

.slotbook__item--appointment:hover {
    -webkit-box-shadow: inset 35em 100em rgba(0,0,0,0.1);
    box-shadow: inset 35em 100em rgba(0,0,0,0.1)
}

.slotbook__itemtitle {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    margin-right: -50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    width: 100%;
    overflow: hidden;
    padding: 10px;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    line-height: 1;
    font-size: 1rem
}

.slotbook__header--fixed {
    position: absolute;
    top: 0;
    z-index: 5;
    width: 100%
}

.slotbook__header--fixed+.slotbook__content--calendar {
    margin-top: 75px
}

.grid--calendars {
    overflow-x: auto;
    position: relative;
    left: 0
}

.grid__cell--calendar {
    float: none;
    display: inline-block;
    vertical-align: top
}

.slotbooking__calendars .slotbook {
    min-width: 265px
}

.slotbooking__calendars--col-5 .slotbook {
    width: calc(20% - 8px)
}

.slotbooking__calendars--col-4 .slotbook {
    width: calc(25% - 10px)
}

.slotbooking__calendars--col-3 .slotbook {
    width: calc(33% - 6px)
}

.slotbooking__calendars--col-2 .slotbook {
    width: calc(50% - 7px)
}

.slotbooking__calendars--col-1 .slotbook {
    width: 100%
}

.slotbooking__calendars--col-5 .slotbook:last-child,.slotbooking__calendars--col-4 .slotbook:last-child,.slotbooking__calendars--col-3 .slotbook:last-child,.slotbooking__calendars--col-2 .slotbook:last-child,.slotbooking__calendars--col-1 .slotbook:last-child {
    margin: 0
}

@media(max-width: 1240px) {
    .override-list__value {
        display:block
    }

    .cta-link--availability {
        padding: 20px 10px
    }
}

.grid__cell--datepicker {
    background-color: #dedede;
    padding: 20px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold
}

.ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    font-size: 1.1em;
    display: none;
    z-index: 2!important
}

.ui-widget-header {
    background: transparent;
    border: 0
}

.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: .2em 0
}

.ui-helper-clearfix:before,.ui-helper-clearfix:after {
    content: "";
    display: table;
    border-collapse: collapse
}

.ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 .4em
}

.ui-datepicker th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0
}

.ui-datepicker td {
    border: 0;
    padding: 1px
}

.ui-datepicker td span,.ui-datepicker td a {
    display: block;
    padding: .2em;
    text-align: center;
    text-decoration: none
}

.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 2px;
    width: 1.8em;
    height: 1.8em
}

.ui-datepicker .ui-datepicker-prev {
    left: 2px
}

.ui-datepicker .ui-datepicker-next {
    right: 2px
}

.ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat
}

.ui-icon {
    width: 16px;
    height: 16px
}

.ui-widget-header .ui-datepicker-next::before {
    content: ">";
    line-height: 2.1em;
    padding: 0 13px;
    color: #fff;
    font-weight: bolder;
}

.ui-widget-header .ui-datepicker-prev::before {
    content: "<";
    line-height: 2.1em;
    padding: 0 13px 0 10px;
    color: #fff;
    font-weight: bolder;
}

.ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    text-align: center
}

.slotbooking__nodata {
    padding: 10px
}

.grid--body .grid__cell--datepicker {
    padding: 20px 0!important
}

.grid__cell--main.grid__cell--cols4 .grid__cellwrap .grid--filter .grid__cellwrap {
    padding: 0 10px 20px 10px!important
}

.taskmanagement-search__label {
    display: inline-block;
    margin: 0 10px 10px 0;
    font-weight: bold
}

.grid--taskmanagement-search {
    margin-top: 20px
}

.grid--taskmanagement-search .grid__cell {
    padding: 0 10px
}

.grid--taskmanagement-search .grid__cell:first-child {
    padding-left: 0
}

.grid--taskmanagement-search .grid__cell--cols2:nth-child(2n) {
    padding-right: 0
}

.grid--taskmanagement-search.grid--1col .grid__cell {
    padding: 0 0 10px 0
}

.grid--taskmanagement-search .grid__cell--cols4,.grid--taskmanagement-search.grid--1col .grid__cell:last-child {
    padding: 0
}

.taskmanagement-search__user,.taskmanagement-search__process,.taskmanagement-assign {
    width: 100%;
    min-width: 120px;
    min-height: 44px;
    margin: 0;
    padding: 10px;
    border: solid 1px #767676;
    font-family: inherit;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.6;
    white-space: pre
}

.btn--taskmanagement-search {
    float: right;
    margin: 10px 0 0 0
}

.taskmanagement-search__sortby {
    margin: 10px 0 0 0;
    padding: 10px 0
}

.taskmanagement-search__sortlabel,.taskmanagement-search__sort {
    display: inline-block;
    margin: 0 10px 0 0
}

.taskmanagement-search__sort--desc::after {
    content: "\e828";
    padding-left: 5px
}

.taskmanagement-search__sort--asc::after {
    content: "\e829";
    padding-left: 5px
}

.nvp--tm-datatable-bk {
    display: block;
    margin-top: 5px
}

.task__process {
    display: block;
    margin: 10px 0 0 0;
    font-style: italic
}

.assigned__assignee,.assigned__unclaim,.assigned__reassign {
    display: block;
    margin: 0 0 10px 0
}

.assigned__assignee:empty {
    display: none
}

.assigned__availablegroup {
    display: block
}

.assigned__unclaim {
    position: relative
}

.assigned__unclaim .datatable__label--checkbox {
    display: block;
    min-height: 20px;
    padding: 2px 0 2px 40px
}

.card--userrequest .card__heading,.card--userrequest .card__label+.card__heading {
    padding-left: 10px;
    padding-right: 10px
}

.card--userrequest .card__content {
    padding: 0 10px 10px 10px
}

.card--userrequest .card__label {
    margin: -2px 0 0 0
}

.card--userrequest .card__labeltxt {
    padding: 0 10px 5px 10px;
    top: 0
}

.card--userrequest.card--inprogress,.block--inprogress {
    border-top: 5px solid #ffb81b
}

.card--inprogress .card__labeltxt {
    background-color: #ffb81b;
    color: #000
}

.card--userrequest.card--complete,.block--complete {
    border-top: 5px solid #ccc
}

.card--complete .card__labeltxt {
    background-color: #ccc
}

.card--userrequest .nvp--userrequest .nvp__label {
    display: inline-block;
    width: 110px;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto
}

.card--userrequest .nvp--userrequest .nvp__value {
    display: inline-block;
    width: calc(100% - 120px)
}

.nvp--userrequest .nvp__date,.nvp--userrequest .nvp__time {
    display: block
}

.cta-link--assigned {
    background-color: #004e00;
    color: #fff;
    margin: 10px 0 0 0
}

.cta-link--unclaim {
    background: rgba(0,128,0,0.2);
    margin: 0
}

.cta-link--claimanddo {
    background-color: #123186;
    color: #fff;
    margin: 10px 0 0 0
}

.cta-link--claim {
    background-color: rgba(62,105,222,0.2);
    margin: 0
}

.cta-link--cancelrequest {
    margin: 10px 0 0 0
}

.grid--ur-tasks .grid__cell:first-child .cta-link {
    margin: 0
}

.block--userrequests {
    position: relative;
    padding: 20px 20px 0 20px
}

.block--userrequests .block__summary {
    margin: 10px 0
}

.block--ureq-none .grid__cell {
    padding-bottom: 20px
}

.cta-link--viewallrequests {
    float: right;
    margin: 0;
    top: 0
}

.block--userrequests .grid--1col .cta-link--viewallrequests {
    float: none
}

.searchsummary--userrequests .searchsummary__text {
    font-weight: bold
}

.grid--ureq-details {
    margin: 0 0 20px 0
}

.nvp--ureq-details {
    padding: 0 0 10px 0
}

.nvp--ureq-details .nvp__label {
    padding: 0 5px 0 0;
    min-width: 100px
}

.myaccount .block .grid__cell--card {
    padding: 0 0 20px 0
}

.block .grid--card {
    padding: 10px 0
}

.block--ureq-summarydetails {
    position: relative;
    padding: 0;
    background-color: #fff
}

.block--ureq-summarydetails .btn--accordion {
    background-color: transparent;
    text-align: left;
    margin: 0;
    position: static
}

.block--ureq-summarydetails .btn--close {
    border-bottom: 1px solid #ccc
}

.block--ureq-summarydetails .block__heading {
    padding: 0;
    margin: 0
}

.block--ureq-summarydetails .block__heading .btn--accordion {
    font-size: inherit
}

.block--ureq-summarydetails .block__heading .btn__text {
    display: inline-block;
    vertical-align: middle;
    line-height: 1.6
}

.block--ureq-summarydetails .btn--open:after,.block--ureq-summarydetails .btn--close:after {
    content: "\e807";
    font-size: 110%;
    line-height: 1.6;
    border: 2px solid #4a4a4a;
    border-radius: 50%;
    color: #4a4a4a;
    padding: 0 9px;
    top: 7px
}

.block--ureq-summarydetails .btn--close:after {
    content: "\e808"
}

.block--ureq-summarydetails .block__panel {
    padding: 20px
}

.block--ureq-summarydetails .icmformdata__cell {
    width: auto
}

.block--ureq-eventdetails {
    background-color: #fff;
    margin: 20px 0 0 0
}

.grid--ureq-event>.grid__cell {
    padding: 0 10px
}

.grid--ureq-event .nvp--ureq-details {
    padding: 0
}

.nvp--ureq-description {
    font-weight: bold;
    display: block;
    font-size: 1.15rem;
    padding: 0 0 5px 0
}

.block__listitem--ureq-eventdetails {
    position: relative;
    padding: 10px 0;
    border: 1px solid #ccc;
    border-bottom: 0
}

.block__listitem--ureq-eventdetails:last-child {
    border-bottom: 1px solid #ccc
}

.block__link--ureq-eventdetails:before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 0
}

.block--ureq-eventdetails .nvp--ureq-details:nth-child(3)::before {
    margin: 0 5px;
    content: "|";
    vertical-align: top
}

.block__link--eventdetails:hover:before,.block__link--eventdetails:focus:before {
    background-color: rgba(0,0,0,0.2)
}

.block__listitem--ureq-eventdetails:nth-child(odd) {
    background-color: #f2f2f2
}

.grid--event .icmformdatapagetable {
    border-spacing: 0;
    width: 100%;
    font-size: 1rem;
    border: 0
}

.grid--event .icmformdatalabel {
    padding: 10px 10px 10px 0;
    font-weight: bold
}

.grid--event .icmformdatavalue {
    word-wrap: break-word
}

.grid--event .icmformdatacontainer {
    background-color: transparent;
    padding: 20px 0;
    font-size: 1.25rem;
    font-weight: bold
}

.grid--event .icmformdatapagetable td {
    border: 0 solid #ccc
}

.grid--event .icmformdatapagetable tr:last-child td {
    padding: 10px 0 0 0
}

.block--selected {
    background-color: #f2f2f2
}

.block--ureq-eventdetails .block__list {
    padding-top: 10px
}

.grid--ureq-eventdetails-props {
    margin-top: 10px
}

.nvp--ureq-event-details .nvp__label {
    padding-right: 10px
}

.grid--myaccount-userrequest .grid__cell:nth-child(2) .grid__cellwrap,.grid--myaccount-userrequest .grid__cell:nth-child(2) {
    height: auto!important
}

.grid--myaccount-userrequest .grid__cell:nth-child(2) .cta-link--alert {
    width: auto;
    text-align: center
}

.grid--myaccount-userrequest .grid__cell:nth-child(2) .cta-link--alert .cta-link__text {
    min-width: 60%
}

.grid--userrequests+.grid--userrequests {
    padding: 20px 0 0 0;
    margin: 20px 0 0 0;
    border-top: 1px solid #ccc
}

.block--userrequest .card__heading {
    padding: 10px
}

.block--userrequest .grid__cell--block {
    padding-right: 0
}

.grid__cell--userrequests.grid__cell--card.grid__cell--cols1:last-child {
    padding-bottom: 0
}

a:hover {
    cursor: pointer
}

#responsiveindex,.hide {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0px 0 0 0);
    clip: rect(0px,0px,0px,0px);
    -webkit-clip-path: polygon(0px 0,0px 0,0px 0,0px 0);
    clip-path: polygon(0px 0,0px 0,0px 0,0px 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

::after,::before {
    padding: 0
}

.cookiemessage[aria-hidden="true"],.pollform__results[aria-hidden="true"],.pollform[aria-hidden="true"],.poll-results[aria-hidden="true"] {
    display: none
}

#responsiveindex {
    z-index: 1
}

@media(min-width: 640px) {
    #responsiveindex {
        z-index:2
    }
}

@media(min-width: 1024px) {
    #responsiveindex {
        z-index:3
    }
}

.cookiemessage {
    z-index: 10
}

input {
    font-family: "Open Sans",sans-serif;
    font-size: 1rem
}

h2 {
    margin: .5em 0
}

figure {
    padding: 0;
    margin: 0
}

img {
    border: 0
}

.container {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 20px;
    clear: both
}

.container::after {
    content: "";
    display: table;
    clear: both
}

.maincontent {
    display: block
}

.mobilebar {
    position: relative;
    background-color: #000;
    padding-top: 40px
}

@media(min-width: 1024px) {
    .mobilebar {
        display:none
    }
}

.gi-mobilenavtoggle--toggle,.gi-mobilenavtoggle--search {
    position: absolute;
    right: 4px;
    top: 4px;
    width: 32px;
    height: 32px
}

.gi-mobilenavtoggle--search {
    right: 40px
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] {
    background-color: #900
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt1,.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt2,.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt3 {
    background-color: #fff
}

@media(min-width: 1024px) {
    .gi-mobilenavtoggle--toggle,.gi-mobilenavtoggle--search {
        display:none
    }
}

.gi-mobilenav {
    background-color: #333;
    min-height: 1em;
    overflow: hidden
}

.gi-mobilenav--animating {
    display: block
}

.gi-mobilenav--search {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    color: #000;
    background: #fff
}

.gi-mobilenav--search.gi-mobilenav--nojs:target,.gi-mobilenav--search.gi-mobilenav--open {
    position: static;
    width: 100%;
    height: auto;
    clip: auto;
    overflow: visible
}

.gi-mobilenav__item--closelink {
    margin: 0 20px
}

.gi-mobilenav__link--closelink,.gi-mobilenav__link--closelink:hover,.gi-mobilenav__link--closelink:focus {
    padding: 10px 0;
    color: #fff;
    text-decoration: none;
    border-top: 1px solid #666
}

.gi-mobilenav--search .gi-mobilenav__link--closelink,.gi-mobilenav--search .gi-mobilenav__link--closelink:hover,.gi-mobilenav--search .gi-mobilenav__link--closelink:focus {
    border-top: 0
}

.gi-sitesearch--mobile {
    width: auto;
    height: auto;
    clip: auto;
    margin: auto;
    padding: 20px;
    position: relative
}

.mobilemenu {
    background-color: #333;
    display: none;
    min-height: 20px;
    overflow: hidden
}

@media(min-width: 1024px) {
    .mobilemenu {
        display:none
    }
}

.toputils-nav__list,.myaccount-nav__list,.main-nav__list {
    list-style: none;
    margin: 14px;
    padding: 0 0 14px 0;
    border-bottom: 1px solid #666;
    font-size: 1rem
}

.main-nav__list {
    padding-bottom: 0;
    border-bottom: 0
}

.toputils-nav__link,.myaccount-nav__link,.main-nav__link {
    padding: 10px 0 10px 5px;
    margin: 0;
    line-height: 1;
    display: block;
    color: #fff;
    text-decoration: none
}

.toputils-nav__link:hover,.myaccount-nav__link:hover,.main-nav__link:hover,.toputils-nav__link:active,.myaccount-nav__link:active,.main-nav__link:active {
    color: #fff
}

.mobilemenu--open {
    display: block
}

@media(max-width: 380px) {
    .searchsummary__pages {
        padding-top:10px;
        float: none;
        display: block
    }
}

.stcontainer {
    position: absolute;
    top: 0;
    left: 0
}

.strotate {
    position: absolute;
    -ms-transform: translate(5px,5px);
    -webkit-transform: translate(5px,5px);
    transform: translate(5px,5px)
}

.st1 {
    display: block;
    position: absolute;
    background-color: #fff;
    border-radius: 19px;
    width: 19px;
    height: 19px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.st2 {
    display: block;
    position: absolute;
    background-color: #000;
    border-radius: 13px;
    width: 13px;
    height: 13px;
    -ms-transform: translate(3px,3px);
    -webkit-transform: translate(3px,3px);
    transform: translate(3px,3px);
    z-index: 2;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.st3 {
    width: 10px;
    height: 3px;
    display: block;
    background-color: #fff;
    -ms-transform: translate(15px,18px) rotate(45deg);
    -webkit-transform: translate(16px,18px) rotate(45deg);
    transform: translate(15px,18px) rotate(45deg);
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.mobilemenu__searchtoggle--open .st1 {
    border-radius: 1px;
    width: 20px;
    height: 4px;
    -ms-transform: translate(1px,9px) rotate(-45deg);
    -webkit-transform: translate(1px,9px) rotate(-45deg);
    transform: translate(1px,9px) rotate(-45deg)
}

.mobilemenu__searchtoggle--open .st2 {
    opacity: 0;
    border-radius: 1px;
    width: 20px;
    height: 4px;
    -ms-transform: translate(1px,9px) rotate(-45deg);
    -webkit-transform: translate(1px,9px) rotate(-45deg);
    transform: translate(1px,9px) rotate(-45deg)
}

.mobilemenu__searchtoggle--open .st3 {
    border-radius: 1px;
    width: 20px;
    height: 4px;
    -ms-transform: translate(1px,9px) rotate(45deg);
    -webkit-transform: translate(1px,9px) rotate(45deg);
    transform: translate(1px,9px) rotate(45deg)
}

.toputils {
    display: none
}

.toputils-nav__link[aria-current="page"],.myaccount-nav__link[aria-current="page"],.main-nav__link[aria-current="page"] {
    font-weight: bold
}

@media(min-width: 1024px) {
    .toputils {
        display:block;
        background-color: #242424;
        color: #fff
    }

    .myaccount-nav__list,.toputils-nav__list {
        margin: 0;
        padding: 0;
        border-bottom: 0
    }

    .myaccount-nav__item+.myaccount-nav__item,.toputils-nav__item+.toputils-nav__item {
        border-left: 2px solid #242424
    }

    .toputils__right {
        float: right
    }

    .toputils-nav {
        float: left;
        padding: 0 10px
    }

    .toputils-nav li {
        float: left
    }

    .toputils-nav__link,.myaccount-nav__link {
        display: block;
        color: #fff;
        text-decoration: none;
        line-height: 2.5rem;
        font-size: .875rem;
        padding: 0 1em
    }

    .toputils-nav__link:hover,.toputils-nav__link:focus {
        color: #fff;
        text-decoration: underline
    }

    .toputils-nav__link:focus {
        outline-offset: -2px
    }

    .myaccount-nav {
        background-color: #3e3e3e;
        float: left;
        padding: 0 0 0 45px;
        position: relative
    }

    .myaccount-nav::before {
        content: "\e806";
        font-size: 1.5rem;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 13px
    }

    .myaccount-nav__link:hover,.myaccount-nav__link:focus {
        color: #fff;
        text-decoration: underline
    }

    .myaccount-nav__item {
        float: left
    }

    .mobilemenu--enabled .toputils-nav__link,.mobilemenu--enabled .myaccount-nav__link,.mobilemenu--enabled .main-nav__link {
        color: #000;
        line-height: 1;
        padding: 0
    }
}

.header {
    clear: left;
    padding-bottom: 36px
}

.header--thin {
    background-color: #4a4a4a;
    padding-bottom: 0
}

.gi-sitelogo--header {
    float: left;
    display: table;
    height: 100px;
    width: 100%
}

@media(min-width: 640px) {
    .gi-sitelogo--header {
        width:auto
    }
}

.gi-sitelogo--header .gi-sitelogo__link {
    display: table-cell;
    vertical-align: middle;
    text-align: center
}

.gi-sitelogo--header .gi-sitelogo__image {
    display: inline-block;
    width: auto;
    height: auto;
    max-width: 100%;
    padding: 20px 0
}

.gi-sitelogo--header .gi-sitelogo__link:hover .gi-sitelogo__image,.gi-sitelogo--header .gi-sitelogo__link:focus .gi-sitelogo__image {
    opacity: .75
}

@media(min-width: 640px) {
    .gi-sitelogo--header .gi-sitelogo__image {
        display:block
    }

    .header--thick .gi-sitelogo--header .gi-sitelogo__image {
        display: inline-block
    }
}

.header__nav {
    position: relative
}

.mainnav,.gi-sitenav--toplevel {
    display: none;
    float: right;
    margin: 20px 60px 0 0;
    opacity: 1;
    -webkit-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out
}

.gi-sitenav--toplevel {
    position: static
}

.gi-sitenav__link {
    margin: 0
}

@media(min-width: 1024px) {
    .mainnav,.gi-sitenav--toplevel {
        display:block
    }
}

.mainnav__lvl1,.gi-sitenav__list--lvl1 {
    padding: 0;
    list-style: none;
    display: inline-block
}

.mainnav__lvl1-item,.gi-sitenav__item--lvl1 {
    float: left
}

.mainnav__lvl1-link,.gi-sitenav__link--lvl1 {
    font-size: 1.125rem;
    display: block;
    padding: 20px;
    text-align: right;
    color: #fff;
    text-decoration: none
}

.mainnav__lvl1-link:hover,.mainnav__lvl1-link:focus,.gi-sitenav__link--lvl1:hover,.gi-sitenav__link--lvl1:focus {
    color: #dedede
}

.mainnav__lvl1-link[aria-haspopup="true"],.gi-sitenav__link--lvl1[aria-haspopup="true"] {
    padding-right: 50px;
    position: relative
}

.mainnav__lvl1-link[aria-haspopup="true"]::after,.gi-sitenav__link--lvl1[aria-haspopup="true"]::after {
    content: "\f107";
    margin-left: 12px;
    top: 50%;
    font-size: 1.85rem;
    position: absolute;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.mainnav__lvl1-link[aria-expanded="true"],.gi-sitenav__link--lvl1[aria-expanded="true"] {
    background-color: #333
}

.mainnav__lvl1-link[aria-expanded="true"]::after,.gi-sitenav__link--lvl1[aria-expanded="true"]::after {
    content: "\f106"
}

.mainnav__lvl2 {
    position: absolute;
    left: 0;
    right: 0;
    background-color: #333;
    display: block;
    list-style: none;
    padding: 36px 0 10px 0;
    overflow: hidden;
    z-index: 10
}

.gi-sitenav--lvl2 {
    padding: 0
}

.gi-sitenav__list--lvl2 {
    padding: 36px 0 10px 0
}

.mainnav__lvl2-item,.gi-sitenav__item--lvl2 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-left: 2px solid #fff;
    width: 25%;
    float: left;
    margin: 0 0 27px 0;
    padding: 0 20px 0 50px
}

.mainnav__lvl2-item:nth-child(4n+1),.gi-sitenav__item--lvl2:nth-child(4n+1) {
    clear: both;
    border-left: 0
}

.mainnav__lvl2-link:hover,.mainnav__lvl2-link:focus,.gi-sitenav__link--lvl2:hover,.gi-sitenav__link--lvl2:focus {
    text-decoration: underline
}

.mainnav__lvl2-link:focus,.gi-sitenav__link--lvl2:focus {
    outline-offset: -2px
}

.mainnav__lvl2-link,.gi-sitenav__link--lvl2 {
    position: relative;
    display: block;
    color: #fff;
    text-decoration: none;
    font-size: 1.125rem;
    font-weight: normal
}

.mainnav__lvl2-link:hover,.mainnav__lvl2-link:focus,.gi-sitenav__link--lvl2:hover,.gi-sitenav__link--lvl2:focus {
    color: #dedede
}

.mainnav__lvl3,.gi-sitenav__list--lvl3 {
    list-style: none;
    margin: 1.25em 0 0 0
}

.mainnav__lvl3-link,.gi-sitenav__item--lvl3 {
    display: block;
    color: #fff;
    text-decoration: none;
    margin: 13px 0;
    font-size: 1rem
}

.mainnav__lvl3-link:hover,.mainnav__lvl3-link:focus,.gi-sitenav__item--lvl3:hover,.gi-sitenav__item--lvl3:focus {
    color: #dedede;
    text-decoration: underline
}

.mainnav__lvl1-link[aria-current="page"],.mainnav__lvl2-link[aria-current="page"],.mainnav__lvl3-link[aria-current="page"],.gi-sitenav__item--lvl1[aria-current="page"],.gi-sitenav__item--lvl2[aria-current="page"],.gi-sitenav__item--lvl3[aria-current="page"] {
    font-weight: bold
}

.mainnav__lvl2-item--viewall,.gi-sitenav__item--viewall {
    display: block;
    float: none;
    clear: both;
    padding: 0;
    text-align: center;
    width: 100%;
    border-left: 0
}

.mainnav__lvl2-link--viewall,.gi-sitenav__item--viewall .gi-sitenav__link {
    display: inline-block;
    background-color: #000;
    padding: 10px 0;
    width: 50%
}

.mainnav__lvl2-link--viewall:hover,.mainnav__lvl2-link--viewall:focus,.gi-sitenav__item--viewall .gi-sitenav__link:hover,.gi-sitenav__item--viewall .gi-sitenav__link:focus {
    color: #fff;
    -webkit-box-shadow: inset 20em 20em rgba(0,0,0,0.2);
    box-shadow: inset 20em 20em rgba(0,0,0,0.2)
}

.gi-sitesearch--header {
    display: none
}

@media(min-width: 1024px) {
    .gi-sitesearch--header {
        display:block
    }
}

.gi-sitesearch--header .gi-sitesearch__container {
    position: absolute;
    right: 0;
    margin-top: 30px
}

.gi-sitesearch--header[data-collapsed='false'] .gi-sitesearch__container {
    z-index: 1;
    width: calc(100% - 310px)
}

.gi-sitesearch--mobile .gi-sitesearch__searchtoggle,.gi-sitesearch--header .gi-sitesearch__searchtoggle {
    width: 57px
}

.gi-sitesearch--mobile .gi-sitesearch__button--search,.gi-sitesearch--header .gi-sitesearch__button--search {
    width: 57px;
    padding: 10px 16px;
    color: #fff;
    background-color: transparent;
    border: 0;
    font-size: 1.5em
}

.gi-sitesearch--mobile .gi-sitesearch__button--search::after,.gi-sitesearch--header .gi-sitesearch__button--search::after {
    transform: translateY(-7px)
}

.gi-sitesearch--mobile[data-collapsible='true'][data-collapsed='true'] .gi-sitesearch__button--search,.gi-sitesearch--header[data-collapsible='true'][data-collapsed='true'] .gi-sitesearch__button--search {
    border-left: 0
}

.gi-sitesearch--mobile .gi-sitesearch__searchfield,.gi-sitesearch--mobile[data-collapsible='true'][data-suppress-closebtn='true'] .gi-sitesearch__searchfield,.gi-sitesearch--header .gi-sitesearch__searchfield,.gi-sitesearch--header[data-collapsible='true'][data-suppress-closebtn='true'] .gi-sitesearch__searchfield {
    width: calc(100% - 57px)
}

.a-heading {
    clear: left;
    overflow: hidden;
    margin: 20px 0 0 0
}

.a-heading__title {
    font-weight: 500
}

.homehighlight {
    clear: both;
    padding: 20px 0 0 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

.sitealert {
    float: none;
    background-color: #a4a4a4;
    color: #000
}

.sitealert__title {
    font-weight: bold;
    font-size: 1.25rem;
    color: #000
}

.sitealert__title:hover,.sitealert__title:focus {
    color: #000
}

.intro {
    font-weight: 600
}

.item__link {
    color: #000
}

.a-body--default ul {
    padding-left: 20px
}

@media(min-width: 1024px) {
    .maincontent__left {
        float:left;
        max-width: calc(100% - 320px);
        width: 100%
    }

    .maincontent__left:only-child {
        float: none;
        max-width: 100%
    }

    .maincontent__left:only-child .a-relimage {
        float: right;
        max-width: 450px;
        margin: 0 0 20px 20px
    }

    .maincontent__right {
        float: right;
        max-width: 300px;
        width: 100%
    }
}

.mainccontent__banner,.imageinline {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto
}

.maincontent__bodytext a {
    text-decoration: underline
}

.maincontent__bodytext a:hover,.maincontent__bodytext a:focus {
    text-decoration: none
}

.maincontent__divider,.maincontent__left hr {
    background-color: #e1e1e1;
    height: 2px;
    width: 100%;
    border: 0;
    margin: 20px 0
}

.imageinline__container {
    margin-bottom: 1.5em
}

.imageinline--captioned {
    background-color: #333
}

.imageinline__caption {
    font-size: .875rem;
    padding: .75em 1.25em;
    background-color: #e1e1e1
}

.inlineimage {
    text-align: center
}

.inlineimage,.inlineimage>a,.inline image img {
    display: block
}

.inlineimage img {
    margin: 1em auto;
    max-width: 100%;
    height: auto
}

.panel {
    background-color: #fff;
    padding: 0;
    margin: 0;
    border: 0;
    border: 0;
    margin-top: 20px
}

.panel:first-of-type {
    margin: 0
}

.panel__list {
    padding: 0
}

.panel__item {
    margin: 0;
    border-bottom: 1px solid #e5e5e5;
    padding: 10px 0
}

.panel__item {
    list-style: none
}

.panel__item:last-child {
    border-bottom: 0
}

.panel__link {
    display: inline-block;
    padding: 10px;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto
}

.panel__heading {
    position: relative;
    font-size: 1.25rem;
    font-weight: 400;
    margin: 0;
    padding: 10px 0;
    border-top: 2px solid #707070;
    color: #4a4a4a
}

.panel__headingtext {
    font-weight: 700;
    font-size: 1em;
    padding: 0
}

.relateditem--primary .panel__heading {
    color: #fff;
    background-color: #333
}

.relateditem--secondary .panel__heading {
    color: #fff;
    background-color: #32928e
}

.media-link__filesize {
    font-size: .75rem
}

.media-link__filesize img.relateditem__itemimage {
    width: 100%;
    height: auto;
    margin-top: 1em
}

.media-link__filesize img.relateditem_offsite {
    width: 9px;
    height: 9px;
    margin-top: 0
}

.relateditem__cta {
    display: block;
    background-color: #e1e1e1;
    color: #000;
    text-align: center;
    font-size: 1rem;
    line-height: 2.5
}

.relateditem__cta--primary {
    background-color: #609;
    color: #fff
}

.relateditem__cta--secondary {
    background-color: #32928e;
    color: #fff
}

.contributoraction--relactions {
    padding: 5px 10px 20px 0
}

.panel__item {
    margin: 0;
    border-bottom: 1px solid #e1e1e1;
    padding-right: 20px
}

.panel__item--pdf .media-link__text::before {
    content: url('./resource/themes/cruise/images/icon-pdf.jpg?v=638282083700000000')
}

.panel__item--word .media-link__text::before {
    content: url('./resource/themes/cruise/images/icon-word.jpg?v=638282083700000000');
    left: -24px
}

.panel__item--excel .media-link__text::before {
    content: url('./resource/themes/cruise/images/icon-excel.jpg?v=638282083700000000');
    left: -24px
}

.panel__item--zip .media-link__text::before {
    content: url('./resource/themes/cruise/images/icon-zip.png?v=638282083700000000');
    left: -25px
}

.media-links__list {
    padding-top: 0;
    padding-left: 0
}

.pollform--related fieldset {
    border: 0;
    padding: 0;
    margin: 0
}

.poll-results {
    padding-bottom: .5em;
    margin-left: 3.5em
}

.pollform__question {
    font-size: 1rem;
    font-weight: 600;
    padding: .5rem .5rem .5rem 0;
    margin: 0
}

.pollform__answer {
    margin: 0;
    padding: .25em .5em 1em 0
}

.pollform__submitwrap {
    padding: 0 .5rem .5rem 0
}

.pollform__submit--vote,.pollform__submit--results {
    border: 0;
    padding: .3em 1em;
    margin: 0 0 .5em .5em
}

.pollform__submit--vote:hover,.pollform__submit--vote:focus,.pollform__submit--results:hover,.pollform__submit--results:focus {
    text-decoration: underline
}

.pollform__submit--vote {
    background-color: #333;
    color: #fff
}

.pollform__submit--results {
    background-color: #e1e1e1;
    color: #333
}

.relateditem--primary .pollform__submit--vote {
    color: #fff;
    background-color: #609
}

.relateditem--secondary .pollform__submit--vote {
    color: #fff;
    background-color: #32928e
}

.relatedpoll__options li {
    padding: .25rem 0;
    font-size: .875rem;
    font-weight: 600
}

.relateditem--linkicon .relateditem__link {
    background-image: url('./resource/themes/cruise/images/icon-offsitelink.png?v=638282083700000000');
    background-repeat: no-repeat;
    background-position: left 1.125em center
}

.relateditem__newsimage {
    display: none
}

@media(min-width: 1024px) {
    .relateditem__newsimage {
        display:block;
        width: 100%;
        height: auto
    }
}

.relateditem__newstext {
    font-size: 1rem
}

.breadcrumb {
    float: left;
    width: 100%;
    margin: 10px 0;
    padding: 10px 0;
    list-style: none
}

.gi-breadcrumb__item {
    margin-right: 10px
}

.gi-breadcrumb__item::after {
    content: "\f105";
    font-size: 1.25em;
    margin-left: 10px
}

.addthis_default_style {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    top: +2px
}

.a-share {
    width: 100%;
    display: block;
    clear: both;
    text-align: center;
    margin: 20px 0 40px 0;
    padding-top: 20px;
    border-top: solid 2px #000
}

@media(min-width: 1024px) {
    .a-share {
        float:left
    }
}

.a-share__link {
    padding: 0 2px;
    text-decoration: none
}

.a-share__link:hover {
    text-decoration: none;
    opacity: .8
}

.a-share__label {
    display: inline-block;
    padding: 0 10px 0 25px;
    position: relative;
    top: -10px
}

.a-share__label:first-of-type {
    padding: 0 10px 0 0
}

@media(max-width: 780px) {
    .a-share__label {
        display:block;
        padding: 10px 0 0 0;
        position: relative;
        top: auto
    }
}

.footer--site {
    overflow: hidden;
    color: #000;
    background-color: #959595;
    padding: 50px 14px 20px 14px;
}

@media(min-width: 1024px) {
    .footer__left {
        float:left;
        width: 35%
    }

    .footer__right {
        float: right;
        width: 65%;
        padding-left: 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }
}

.footer__logo {
    display: block;
    margin: 0 auto 20px auto;
    text-align: center;
    max-width: 100%
}

.imagelink--footerlogo .imagelink__image,.footer__logo .imagelink__image {
    max-width: 100%;
    height: auto
}

@media(min-width: 640px) {
    .footer__logo {
        text-align:left;
        margin: 0 0 20px 0
    }
}

.footer__socialmedia {
    text-align: center
}

.footer__socialmedia .imagelink {
    display: inline-block;
    margin: 0 20px 20px 0
}

@media(min-width: 640px) {
    .footer__socialmedia {
        text-align:left
    }
}

.footer__navigation {
    padding: 0 0 20px 0
}

.footer__navigation>ul {
    list-style: none;
    padding: 0
}

.footer__navlink {
    color: inherit;
    text-decoration: none;
    display: block;
    padding: 10px 0;
    text-align: center;
    font-weight: 700
}

.footer__navlink--selected {
    font-weight: bold;
    text-decoration: underline
}

.footer__navlink:hover,.footer__navlink:focus {
    color: inherit;
    text-decoration: underline
}

.footer .imagelink__link {
    color: #000
}

.footer .imagelink__link:hover,.footer .imagelink__link:focus {
    opacity: .8
}

.imagelink--socialmedia .imagelink__link {
    display: flex;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center
}

@media(min-width: 640px) {
    .footer__navlink {
        padding:0 10px 0 0;
        margin-right: 10px;
        text-align: left
    }

    .footer__navitem:last-child .footer__navlink {
        border-right: 0
    }
}

@media(min-width: 1024px) {
    .footer__navitem {
        float:left
    }

    .footer__navlink {
        border-right: 1px solid;
        border-color: inherit
    }
}

.footer__copyright {
    clear: both;
    text-align: center;
    font-weight: 700
}

@media(min-width: 640px) {
    .footer__copyright {
        text-align:left
    }
}

.bygoss__link {
    display: block;
    text-align: center;
    clear: both;
    font-size: 14px;
    font-weight: 700;
    color: inherit;
    text-decoration: none
}

.bygoss__link:hover,.bygoss__link:focus {
    color: inherit;
    text-decoration: underline
}

@media(min-width: 640px) {
    .bygoss__link {
        text-align:left
    }
}

.grid--list {
    width: calc(100% + 20px);
    padding: 10px 0 0 0;
    margin: 0 0 0 -10px
}

@media(min-width: 1024px) {
    .grid--list {
        width:calc(100% + 40px);
        padding: 20px 0 0 0;
        margin: 0 0 0 -20px;
        overflow: hidden
    }
}

.grid__cell--listitem {
    position: relative;
    padding: 10px
}

@media(min-width: 1024px) {
    .grid__cell--listitem {
        padding:20px
    }
}

.grid--list .item {
    float: left;
    width: 100%;
    padding: 20px;
    border-radius: 8px;
    -webkit-box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5);
    box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.grid--list.grid--1col .item__imagecontainer,.grid--list.grid--2col .item__imagecontainer {
    display: block;
    width: 100%;
    text-align: center
}

.grid--list.grid--1col .item__content {
    display: block
}

@media(min-width: 640px) {
    .grid--list.grid--1col .item__imagecontainer {
        float:left;
        width: 200px;
        margin-right: 20px
    }

    .grid--list.grid--1col .item__imagecontainer+.item__content {
        text-align: left;
        float: left;
        width: calc(100% - 220px);
        display: block
    }

    .grid--list.grid--1col .grid--itemlinks .grid__cell,.grid--list.grid--1col .grid--itemlinks .grid__cellwrap {
        padding: 5px 0
    }

    .grid--list.grid--1col .media-link {
        margin: 10px 0
    }

    .grid--list .item__image {
        width: 200px
    }
}

@media(min-width: 980px) {
    .grid--list.grid--2col .item {
        display:block
    }

    .grid--list.grid--2col .item__imagecontainer {
        display: block;
        width: 100%;
        line-height: normal
    }

    .grid--list.grid--2col .item__content {
        display: block
    }
}

@media(min-width: 1024px) {
    .grid--list.grid--2col .item__imagecontainer {
        float:left;
        width: 200px;
        margin-right: 20px
    }

    .grid--list.grid--2col .item__imagecontainer+.item__content {
        text-align: left;
        float: left;
        width: calc(100% - 220px);
        display: block;
        min-width: 194px
    }
}

.grid--list .item_link {
    color: #000
}

.item__title {
    margin: 0 0 10px 0;
    padding: 0;
    font-size: 24px;
    font-weight: 600;
    color: #000
}

.item__title .item__link {
    text-decoration: none
}

.item__title .item__link:hover,.item__title .item__link:focus {
    text-decoration: underline
}

.item__body {
    font-size: 18px
}

.item__body:not(:last-child) {
    margin: 0 0 10px 0
}

.item__sublink--list {
    color: #000;
    font-size: .875rem;
    font-weight: 700;
    display: block;
    margin-bottom: 5px;
    position: relative;
    text-decoration: none
}

.item__sublink--list:hover {
    text-decoration: underline
}

.header--thick {
    background-color: #343434;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 0
}

.header--thick .gi-sitelogo--header {
    width: 100%;
    padding: 20px 0
}

.template--home .gi-mobilenavtoggle--search,.template--home .gi-mobilenav--search,.template--home .gi-sitesearch--mobile {
    display: none
}

@media(min-width: 1024px) {
    .container--home {
        min-height:194px
    }
}

.gi-sitesearch--home,.gi-sitesearch--mobile {
    clear: none
}

.gi-sitesearch--home {
    display: block;
    position: relative;
    overflow: visible;
    margin: 0 auto;
    padding: 40px 0;
    height: auto
}

@media(min-width: 640px) {
    .gi-sitesearch--home {
        max-width:516px;
        padding: 20px 0
    }
}

.gi-sitesearch--desktop {
    display: none;
    width: 425px;
    text-align: left
}

.gi-sitesearch--withservices {
    position: absolute;
    right: 20px
}

@media(min-width: 1024px) {
    .gi-sitesearch--home {
        display:none
    }

    .gi-sitesearch--desktop {
        display: block
    }
}

.gi-sitesearch--home .gi-sitesearch__searchfield,.gi-sitesearch--home[data-collapsible='true'][data-suppress-closebtn='true'] .gi-sitesearch__searchfield {
    width: calc(100% - 60px);
    height: 60px
}

.gi-sitesearch--desktop .gi-sitesearch__searchfield,.gi-sitesearch--desktop[data-collapsible='true'][data-suppress-closebtn='true'] .gi-sitesearch__searchfield {
    width: 100%;
    height: auto
}

.gi-sitesearch--home .searchform__inputtxt {
    height: 60px;
    margin: 0
}

.gi-sitesearch--desktop .searchform__inputtxt {
    width: calc(100% - 60px)
}

.gi-sitesearch--home .gi-sitesearch__searchtoggle {
    width: 60px;
    height: 60px
}

.gi-sitesearch--desktop .gi-sitesearch__searchtoggle {
    width: auto;
    height: auto
}

.gi-sitesearch--home .gi-sitesearch__button--search {
    position: absolute;
    width: 60px;
    height: 60px;
    margin: 0;
    padding: 10px;
    border: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.5em;
    color: #fff;
    background: #343434
}

.gi-sitesearch--desktop .gi-sitesearch__button--search {
    bottom: 20px;
    right: 0
}

.gi-sitesearch--mobile {
    background-color: #000
}

.gi-sitesearch--mobile .searchform__inputtxt {
    border: 1px solid #000;
    height: auto;
    margin: 0
}

.gi-sitesearch--mobile .gi-sitesearch__button--search {
    position: absolute;
    margin: 0;
    height: 50px;
    background-color: #4a4a4a;
    color: #fff;
    font-size: 1.5em;
    padding: 10px 16px
}

.gi-sitesearch__label {
    display: block;
    margin: 0;
    padding: 10px;
    color: #fff;
    background-color: #767676;
    font-size: 1.35rem
}

@media(max-width: 1023px) {
    .gi-sitesearch__label {
        position:absolute;
        display: block;
        visibility: visible;
        border: 0;
        clip: rect(0 0 0 0);
        clip: rect(0,0,0,0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        width: 1px;
        color: #fff;
        background: #000
    }
}

.maincontent--home {
    background-color: #767676
}

.maincontent--home::after {
    content: "";
    display: block;
    background-color: #e1e1e1;
    padding: 20px
}

@media(min-width: 1024px) {
    .maincontent--home .maincontent__left {
        float:none;
        max-width: 100%
    }
}

.homebody {
    padding: 20px 0;
    background-color: #fff
}

.maincontent--home .breadcrumb,.maincontent--home .gi-breadcrumb__link {
    color: #fff
}

.hometoptasks {
    text-align: center;
    width: 280px;
    margin: 0 auto
}

.hometoptasks--desktop {
    width: 100%;
    display: none
}

@media(min-width: 640px) {
    .hometoptasks {
        width:auto;
        max-width: 555px;
        margin: 0 auto 40px auto
    }

    .hometoptasks--desktop {
        width: 100%;
        max-width: none
    }
}

@media(min-width: 1024px) {
    .hometoptasks {
        text-align:left;
        float: left;
        display: none
    }

    .hometoptasks--desktop {
        display: block
    }
}

.gi-tabs__tablist--hometoptasks {
    margin: 0;
    max-width: 550px
}

.gi-tabs__tab--hometoptasks,.gi-tabs__fallback--hometoptasks {
    display: inline-block;
    position: relative;
    min-width: 120px;
    margin: 20px 10px 0 0;
    padding: 10px 10px 0 10px;
    z-index: 2;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 0;
    border-radius: 8px;
    color: #000;
    background-color: #fff;
    -webkit-transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    -o-transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    font-weight: bold;
    font-size: 1.25rem;
    text-decoration: none;
    text-align: center
}

.gi-tabs--nojs .gi-tabs__tab--hometoptasks {
    display: none
}

.gi-tabs__tab--hometoptasks:hover,.gi-tabs__tab--hometoptasks:focus,.gi-tabs__fallback--hometoptasks:hover,.gi-tabs__fallback--hometoptasks:focus {
    color: #000;
    background-color: #fff;
    text-decoration: underline
}

.gi-tabs__tab--hometoptasks[aria-selected="true"] {
    color: #fff;
    background-color: #000
}

@media(min-width: 1024px) {
    .gi-tabs__tab--hometoptasks::after {
        content:"";
        width: 0;
        height: 0;
        border-left: 60px solid transparent;
        border-right: 60px solid transparent;
        border-top: 0;
        position: absolute;
        left: 0;
        bottom: 0;
        -webkit-transition: all .2s ease-in-out;
        -o-transition: all .2s ease-in-out;
        transition: all .2s ease-in-out;
        opacity: 0;
        border-radius: 50px;
        z-index: 1
    }

    .gi-tabs__tab--hometoptasks[aria-selected="true"]::after {
        border-top: 20px solid #000;
        bottom: -18px;
        opacity: 1
    }
}

.gi-tabs__tabtext {
    display: block;
    padding: 74px 0 20px 0;
    line-height: 2rem
}

.gi-tabs__tabtext--tabicon {
    padding-top: 10px
}

.gi-tabs__tabicon {
    max-width: 102px;
    height: auto;
    margin: 0 auto
}

.gi-tabs__tabicon--primary,.gi-tabs__tab--hometoptasks[aria-selected="true"] .gi-tabs__tabicon--secondary,.gi-disclosure__toggle--hometoptasks[aria-expanded="true"] .gi-tabs__tabicon--secondary {
    display: block
}

.gi-tabs__tabicon--secondary,.gi-tabs__tab--hometoptasks[aria-selected="true"] .gi-tabs__tabicon--primary,.gi-disclosure__toggle--hometoptasks[aria-expanded="true"] .gi-tabs__tabicon--primary {
    display: none
}

.gi-tabs__panel--hometoptasks {
    margin: 12px 0 -14px 0;
    padding: 0;
    border: 0
}

.hometoptasks__services {
    margin: 0;
    padding: 0;
    list-style: none
}

.hometoptasks__servicesitem {
    display: inline-block;
    margin: 20px 10px 0 0
}

.hometoptasks__serviceslink {
    display: inline-block;
    position: relative;
    padding: 10px;
    width: 120px;
    min-height: 140px;
    z-index: 2;
    box-sizing: border-box;
    border-radius: 8px;
    background-color: #000;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 1.25rem;
    text-decoration: none
}

.hometoptasks__serviceslink:hover,.hometoptasks__serviceslink:focus,.hometoptasks__serviceslink:hover .hometoptasks__servicesitem-text,.hometoptasks__serviceslink:focus .hometoptasks__servicesitem-text {
    text-decoration: underline;
    color: #fff
}

.hometoptasks__servicesitem-text {
    display: table-cell;
    vertical-align: middle;
    height: 120px;
    text-align: center;
    width: 110px
}

.hometoptasks__lvl1 {
    list-style: none
}

.hometoptasks__lvl1-item {
    display: inline-block;
    margin: 20px 10px 0 0
}

.hometoptasks__lvl1-link {
    display: inline-block;
    position: relative;
    width: 100%;
    min-width: 120px;
    padding: 10px 10px 0 10px;
    z-index: 2;
    box-sizing: border-box;
    border-radius: 8px;
    background-color: #000;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: 25px;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 1.25rem;
    text-decoration: none
}

.hometoptasks__lvl1-link {
    background-color: #fff;
    color: #000;
    -webkit-transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    -o-transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out
}

.hometoptasks__lvl1-link:hover,.hometoptasks__lvl1-link:focus {
    text-decoration: underline;
    color: #000
}

.hometoptasks__lvl1-item:last-child {
    margin-right: 0
}

@media(min-width: 640px) {
    .hometoptasks__lvl1-item:nth-child(n+3) {
        margin-top:20px
    }

    .hometoptasks__lvl1-link {
        width: auto
    }
}

.hometoptasks__lvl1-linktext {
    display: block;
    padding: 74px 0 20px 0;
    line-height: 2rem
}

.hometoptasks__lvl1-linktext--tabicon {
    padding-top: 10px
}

.hometoptasks__lvl1-linkicon {
    max-width: 102px;
    height: auto;
    margin: 0 auto
}

.hometoptasks__lvl1-linkicon {
    display: block
}

.gi-disclosure__toggle--hometoptasks {
    display: inline-block;
    position: relative;
    width: auto;
    min-width: 120px;
    margin: 0;
    padding: 10px 10px 0 10px;
    z-index: 2;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 0;
    border-radius: 8px;
    color: #000;
    background-color: #fff;
    -webkit-transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    -o-transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    transition: color .4s ease-in-out,background .4s ease-in-out,margin .4s ease-in-out;
    font-weight: bold;
    font-size: 1.25rem;
    text-decoration: none;
    text-align: center
}

.gi-disclosure__toggle--hometoptasks:hover,.gi-disclosure__toggle--hometoptasks:focus {
    color: #000;
    background-color: #fff;
    text-decoration: underline
}

.gi-disclosure__toggle--hometoptasks::after {
    content: "";
    width: 0;
    height: 0;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    border-top: 0;
    position: absolute;
    top: auto;
    left: 0;
    bottom: 0;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    opacity: 0;
    border-radius: 50px;
    z-index: 1
}

.gi-disclosure__toggle--hometoptasks[aria-expanded="true"] {
    color: #fff;
    background-color: #000
}

.gi-disclosure__toggle--hometoptasks[aria-expanded="true"]::after {
    content: "";
    border-top: 20px solid #000;
    bottom: -18px;
    opacity: 1
}

.gi-disclosure__content--hometoptasks {
    margin: 12px 0 0 0;
    padding: 0
}

.homefeaturedtask__container {
    position: relative;
    margin: 0 auto 20px auto;
    padding: 20px
}

@media(min-width: 1024px) {
    .homefeaturedtask__container {
        float:left;
        width: 100%;
        margin: 20px auto
    }
}

.homefeaturedtask {
    min-height: 140px;
    overflow: hidden;
    position: relative;
    z-index: 2;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 16px;
    float: left;
    width: 100%;
    background: #fff;
    margin: 40px 0
}

.homefeaturedtask--noservices {
    margin: 20px 0 40px 0
}

@media(min-width: 640px) {
    .homefeaturedtask {
        padding:32px
    }
}

.homefeaturedtask__title {
    margin: 0
}

.homefeaturedtask__titlelink {
    color: #000;
    font-weight: 700;
    font-size: 1.75rem;
    margin: 0;
    text-decoration: none
}

.homefeaturedtask__titlelink:hover {
    color: #000;
    text-decoration: underline
}

.homefeaturedtask__titlelink::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.homefeaturedtask__content {
    min-height: 140px;
    z-index: 2;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left
}

.homefeaturedtask__image+.homefeaturedtask__content {
    width: calc(100% - 270px);
    float: right
}

.homefeaturedtask__summary {
    font-size: 1rem;
    margin: 10px 0 40px;
    clear: right
}

.homefeaturedtask__image {
    max-width: 100%
}

@media(max-width: 1024px) {
    .homefeaturedtask__image+.homefeaturedtask__content,.homefeaturedtask__content {
        width:100%
    }
}

@media(min-width: 640px) {
    .homefeaturedtask__image {
        max-width:250px;
        float: left;
        margin: 0 20px 0 0
    }

    .homefeaturedtask__summary {
        clear: none
    }
}

@media(min-width: 1040px) {
    .homefeaturedtask {
        max-width:none
    }
}

.homeallservices {
    clear: both;
    max-width: 516px;
    position: relative;
    z-index: 3;
    margin: 0 auto;
    padding-bottom: 40px
}

.homeallservices--hasfeature {
    padding-bottom: 0
}

.homeallservices__button {
    color: #fff;
    background-color: #000;
    text-decoration: none;
    padding: 20px;
    text-align: center;
    font-weight: bold;
    font-size: 1.25rem;
    border-radius: 8px;
    margin-top: 20px;
    display: inline-block;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.homeallservices__button:hover,.homeallservices__button:focus {
    color: #fff;
    text-decoration: underline
}

@media(min-width: 640px) {
    .homeallservices__button {
        margin-top:0
    }
}

@media(min-width: 1024px) {
    .homeallservices {
        max-width:none
    }
}

.hometabs {
    overflow: hidden;
    background-color: #e1e1e1;
    padding: 40px 0;
    position: relative;
    z-index: 3
}

.hometabs:last-of-type {
    padding: 40px 0 0 0
}

.gi-tabs--hometabs {
    width: 984px
}

@media(max-width: 1024px) {
    .gi-tabs--hometabs {
        display:none
    }
}

.gi-tabs__tablist--hometabs {
    margin: 0
}

.gi-tabs__panel--hometabs {
    border: 0;
    clear: both;
    padding: 20px;
    background: #fff
}

.grid__cell--hometabs {
    padding: 0 0 20px 0
}

.grid__cell--hometabs.grid__cell--viewall {
    padding: 0;
    text-align: center
}

.gi-tabs__tab--hometabs,.gi-tabs__fallback--hometabs {
    float: left;
    width: 984px;
    margin: 0;
    padding: 10px 20px;
    color: #000;
    background: #b8b8b8;
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 2.25rem;
    text-align: left;
    text-decoration: none;
    border: 0;
    border-radius: 8px 8px 0 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.gi-tabs__tab--hometabs-2col,.gi-tabs__fallback--hometabs-2col {
    width: 491px;
    margin: 0 0 0 2px
}

.gi-tabs__tab--hometabs-3col,.gi-tabs__fallback--hometabs-3col {
    width: 326px;
    margin: 0 0 0 3px
}

.gi-tabs__tab--hometabs-4col,.gi-tabs__fallback--hometabs-4col {
    width: 243px;
    margin: 0 0 0 4px
}

.gi-tabs__tab--hometabs-2col:first-child,.gi-tabs__tab--hometabs-3col:first-child,.gi-tabs__tab--hometabs-4col:first-child,.gi-tabs__fallback--hometabs-2col:nth-child(2),.gi-tabs__fallback--hometabs-3col:nth-child(2),.gi-tabs__fallback--hometabs-4col:nth-child(2) {
    margin: 0
}

.hometabs__accordion {
    display: none
}

@media(max-width: 1024px) {
    .hometabs__accordion {
        display:block
    }
}

.hometabs__accordion--desktop {
    display: block
}

.hometabs__lvl1-item {
    display: inline-block;
    width: 100%;
    box-sizing: border-box
}

.hometabs__lvl1-link {
    background-color: #b8b8b8;
    display: inline-block;
    width: 100%;
    box-sizing: border-box;
    color: #000;
    font-weight: bold;
    padding: 10px 20px;
    font-size: 1.4rem;
    text-decoration: none;
    position: relative
}

.hometabs__lvl1-link:hover,.gi-tabs__tab--lvl1-item:hover,.gi-tabs__tab--lvl1-item:focus {
    color: #000;
    text-decoration: underline
}

.hometabs__lvl1-link[aria-expanded="true"],.gi-tabs__tab--lvl1-item[aria-expanded="true"] {
    background-color: #fff
}

.hometabs__lvl1-link[aria-expanded]::after {
    content: "\e808";
    position: absolute;
    right: 20px;
    top: 20px
}

.hometabs__lvl1-link[aria-expanded="false"]::after {
    content: "\e807"
}

.hometabs__lvl2 {
    padding-bottom: 20px;
    background-color: #fff
}

.hometabs__lvl2-item {
    box-sizing: border-box;
    padding: 20px 0 0 20px;
    width: 100%;
    display: block
}

.hometabs__tabheadings {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0
}

.hometabs__tabheading {
    background-color: #b8b8b8;
    color: #000;
    text-decoration: none;
    padding: 20px;
    font-weight: bold;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.125rem;
    outline: 0;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    border-radius: 0
}

.hometabs__tabheading:last-child {
    margin-right: 0
}

.hometabs__tabheading:hover,.hometabs__tabheading:focus {
    color: #000;
    text-decoration: underline
}

.hometabs__tabheading:focus {
    outline-offset: -2px
}

@media(min-width: 640px) {
    .hometabs__tabheading {
        background-image:none;
        max-width: 327px;
        border-radius: 8px 8px 0 0;
        margin-right: 2px
    }
}

@media(max-width: 640px) {
    .hometabs__tabheading {
        position:relative
    }

    .hometabs__tabheading::before {
        content: "\e807";
        position: absolute;
        right: 20px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%)
    }

    .hometabs__tabheading--selected::before {
        content: "\e808"
    }
}

.tabcontent__item {
    position: relative;
    display: block;
    padding: 0;
    overflow: hidden;
    background-color: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 1em
}

@media(min-width: 640px) {
    .tabcontent__item {
        float:left;
        width: 100%;
        border-bottom: 1px solid #979797
    }

    .tabcontent__item:nth-child(3n+1) {
        clear: both
    }
}

.tabcontent__link {
    color: #333;
    display: block;
    padding-left: 0;
    text-decoration: none;
    font-size: 1rem
}

.tabcontent__link:focus {
    text-decoration: underline
}

.hometabs__tabheading--selected {
    background-color: #fff;
    color: #000;
    font-weight: bold
}

@media(min-width: 640px) {
    .hometabs__tabheadings--enabled {
        border-bottom:5px solid #fff;
        overflow: hidden
    }
}

.tabcontent__item {
    position: relative;
    display: block;
    overflow: hidden;
    background-color: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 20px
}

@media(min-width: 640px) {
    .tabcontent__item {
        float:left;
        width: 30%;
        margin: 0 3.375% 20px 0
    }

    .tabcontent__item:nth-child(3n-1) {
        margin: 0 1.625% 20px 1.625%
    }

    .tabcontent__item:nth-child(3n) {
        margin: 0 0 20px 3.375%
    }

    .tabcontent__item:nth-child(3n+1) {
        clear: both
    }
}

.hometabs__tabcontent {
    clear: both;
    display: none;
    overflow: hidden;
    list-style: none;
    padding: 20px;
    margin: 0;
    background-color: #fff
}

.hometabs__tabcontent--selected {
    display: block
}

.gi-accordion--hometabs {
    margin: 0
}

.gi-accordion__toggle--hometabs,.gi-accordion__fallback--hometabs {
    background-color: #b8b8b8
}

.gi-accordion__panelcontent--hometabs {
    padding: 0;
    background: #fff
}

.a-panel--featuredtask {
    position: relative;
    padding: 40px 0 0 0;
    width: 100%;
    clear: both;
    text-align: center;
    background-color: #e1e1e1;
    z-index: 3
}

.a-panel--featuredtask .a-panel__content {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 986px;
    margin: 0 auto;
    padding: 60px;
    clear: both;
    background-color: #747474
}

.a-panel--featuredtask .a-panel__background {
    background-size: cover;
    margin: 0 auto;
    max-width: 986px
}

.a-panel--featuredtask .a-panel__content--hasbackground {
    background-color: rgba(0,0,0,0.55)
}

.a-panel--featuredtask .a-panel__title {
    display: block;
    font-size: 2rem;
    padding: 0 0 20px 0;
    color: #fff;
    font-weight: 700;
    text-align: center;
    text-decoration: none
}

.a-panel--featuredtask .a-panel__title::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.a-panel--featuredtask .a-panel__title:hover {
    color: #fff;
    text-decoration: underline
}

.a-panel--featuredtask .a-panel__summary {
    text-align: center;
    padding: 0 0 40px 0;
    color: #fff
}

@media(max-width: 992px) {
    .a-panel--featuredtask .a-panel__content {
        padding:40px 20px
    }
}

.homenewsandevents {
    background-color: #e1e1e1;
    padding: 40px 0 0 0
}

.hometabs+.homenewsandevents {
    padding: 0
}

.homenewsandevents .container {
    padding: 0
}

.newsandevents__panel {
    position: relative;
    margin: 0 20px;
    background-color: #f4f4f4
}

@media(max-width: 1024px) {
    .homenewsandevents .container {
        padding:0 10px
    }

    .homenewsandevents .grid__cell:nth-of-type(3) {
        width: 100%
    }

    .newsandevents__panel {
        margin: 0 10px 20px 10px
    }

    .homenewsandevents .grid__cell:last-of-type .newsandevents__panel {
        margin-bottom: 0
    }
}

@media(max-width: 640px) {
    .homenewsandevents .grid__cell {
        width:100%
    }
}

.newsandevents__imagecontainer {
    padding: 0 20px
}

.newsandevents__image,.gi-responsiveimage--newsandevents {
    width: 100%;
    display: block;
    height: auto;
    margin: 0
}

.newsandevents__title {
    margin: 0
}

.newsandevents__titlelink {
    display: inline-block;
    margin: 0;
    padding: 10px 20px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #000;
    text-decoration: none
}

.newsandevents__titlelink:hover {
    color: #000;
    text-decoration: underline
}

.newsandevents__titlelink::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.newsandevents__panel--list .newsandevents__title {
    position: relative;
    z-index: 2
}

.newsandevents__text {
    padding: 20px
}

.item--homepanel {
    position: static;
    padding: 0 20px 20px 20px
}

.item--homepanel .item__imagecontainer {
    padding-bottom: 20px
}

.item--homepanel .item__image {
    display: block
}

.item--homepanel .item__title {
    font-size: 1.125rem
}

.newsandevents__panel--redirect p {
    margin: 0
}

.newsandevents__panel--redirect {
    max-height: 600px;
    overflow-y: auto
}

.newsandevents__panel--redirect iframe {
    width: 100%!important;
    padding: 0 1px!important;
    -webkit-box-sizing: border-box!important;
    box-sizing: border-box!important
}

@media(min-width: 640px) and (max-width:1023px) {
    .layout__wrapper--newsandevents {
        margin:0 auto;
        max-width: 630px
    }
}

@media(min-width: 680px) and (max-width:1023px) {
    .layout__wrapper--newsandevents {
        margin:0 auto;
        max-width: 660px
    }
}

.contact__profile {
    overflow: hidden;
    margin-bottom: 20px
}

.searchresults__item .contact__profile {
    margin-top: 20px;
    margin-bottom: 0
}

.contact__photo {
    max-width: 100%;
    height: auto
}

@media(min-width: 640px) {
    .contact__photo {
        float:left;
        margin: 0 20px 20px 0
    }
}

.contact__summary {
    font-weight: bold
}

@media(min-width: 640px) {
    .contact__summary,.contact__intro {
        margin-top:0
    }
}

@media(min-width: 640px) {
    .contact__details {
        overflow:hidden
    }
}

.contact__details a {
    color: #8a40b3
}

.contact__details>dt {
    margin: 20px 0 0 0;
    padding: 0 14px 0 14px;
    font-weight: bold
}

.contact__details>dd {
    margin: 0;
    padding: 0 14px 20px 14px;
    overflow: auto;
    border-bottom: 2px solid #e1e1e1
}

.contact__details>dd:last-child {
    border-bottom: 0
}

.contact__socialmediaitem {
    overflow: hidden
}

.contact__socialmediaicon {
    display: block;
    float: left;
    margin-top: 10px;
    margin-right: 14px
}

@media only print {
    .toputils,.header,.cookiemessage,.mainccontent__banner,.breadcrumb,.maincontent__right,.sitealert,.a-share,.footer,.mobilebar {
        display: none
    }

    .maincontent__left {
        max-width: 100%
    }
}

ul.ui-autocomplete {
    max-height: 260px;
    margin: 0;
    padding: 0 20px 20px 20px;
    list-style: none;
    background: #fff;
    border: 1px solid #cecece;
    z-index: 2
}

ul.ui-autocomplete li {
    padding: 20px 0 0 0
}

ul.ui-autocomplete a {
    cursor: pointer
}

.ui-state-focus {
    font-weight: bold
}

.snippetheading,.snippetintro,.snippetbody,.snippetlink {
    display: block;
    margin-bottom: 10px
}

.snippetheading {
    font-weight: 600;
    margin: 10px 0
}

.ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    display: none
}

.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: .2em 0
}

.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 2px;
    width: 1.8em;
    height: 1.8em
}

.ui-datepicker .ui-datepicker-prev {
    left: 2px
}

.ui-datepicker .ui-datepicker-next {
    right: 2px
}

.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -15px;
    top: 50%;
    margin-top: -8px
}

.ui-datepicker .ui-datepicker-next span {
    margin-left: -25px
}

.ui-datepicker .ui-datepicker-title {
    margin: 0;
    line-height: 1.8em;
    text-align: center
}

.ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0
}

.ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 .4em
}

.ui-datepicker th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0
}

.ui-datepicker td {
    border: 0;
    padding: 1px
}

.ui-datepicker td span,.ui-datepicker td a {
    display: block;
    padding: .2em;
    text-decoration: none;
    color: #333;
    text-align: center
}

.ui-datepicker td a:hover {
    font-weight: bold;
    background: #333;
    color: #fff
}

.ui-datepicker-today {
    background-color: #ddd
}

.ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0
}

.ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: pointer;
    padding: .2em .6em .3em .6em;
    width: auto;
    overflow: visible
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left
}

.ui-datepicker.ui-datepicker-multi {
    width: auto
}

.ui-datepicker-multi .ui-datepicker-group {
    float: left
}

.ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em
}

.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%
}

.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%
}

.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left
}

.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0
}

.ui-datepicker-rtl {
    direction: rtl
}

.ui-datepicker .ui-datepicker-prev span:hover,.ui-datepicker .ui-datepicker-next span:hover {
    cursor: pointer;
    font-weight: bold;
    color: black
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group {
    float: right
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px
}

.ui-widget-header {
    border: 1px solid #ddd;
    background: #ddd;
    color: #444;
    font-weight: bold
}

.ui-widget-content {
    border: 1px solid #ddd;
    background: #fff;
    color: #444
}

.block--assistedservice-usersearch .grid__cell--viewall.grid__cell--cols1 {
    padding: 10px 0
}

.block--assistedservice-usersearch .searchform__input {
    width: calc(100% - 40px)
}

.block--assistedservice-usersearch .searchform__inputtxt {
    width: 100%
}

h1.accessibility {
    color: #000;
    background: #fff
}

.gi-feedback {
    margin-top: 40px
}

.gi-feedback__heading {
    font-size: 1.125rem
}

.homedatefeedback .gi-feedback__link {
    color: #000;
    background-color: #f4f4f4
}

@media(max-width: 1023px) {
    .gi-feedback__actions {
        display:block;
        margin: 20px 0;
        padding: 0 0 20px 0;
        border-bottom: solid 1px #000
    }
}

@media(max-width: 1023px) {
    .gi-feedback__link--yes {
        margin:0
    }
}

@media(max-width: 1023px) {
    .gi-feedback__link--problem {
        float:none
    }
}

main:not(:only-child):not(.maincontent--home) .gi-feedback__actions {
    display: block;
    margin: 20px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 1px #000
}

main:not(:only-child):not(.maincontent--home) .gi-feedback__link--yes {
    margin: 0
}

main:not(:only-child):not(.maincontent--home) .gi-feedback__link--problem {
    float: none
}

.homedatefeedback {
    background-color: #e1e1e1;
    padding: 40px 0 20px 0
}

.homedatefeedback .gi-feedback {
    margin-bottom: 0
}

:root {
    --body-color: #0b0c0c;
    --link-color: #004331;
    --link-color-hover: #007253;
    --primary-color: #006851;
    --primary-text: #fff;
    --secondary-color: #004331;
    --secondary-text: #fff
}

html {
    font-size: 16px
}

html,body {
    color: #0c0c0c;
    font-weight: 400;
    font-family: "Noto Sans",sans-serif
}

h5,h6 {
    font-size: 1rem;
    margin: 0 0 20px 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word
}

a {
    color: var(--link-color)
}

a:hover,a:focus {
    color: var(--link-color-hover)
}

a:focus,button:focus,input:focus,select:focus,textarea:focus,*[tabindex]:focus {
    outline: 3px solid #fd0;
    outline-offset: 0;
    box-shadow: inset 0 0 0 2px
}

a:focus,.footer-asset__listlink:focus,.item .item__link:focus,.skip-link:focus,.a-panel--body p a:focus,.gi-feedback__link:focus,.logo__link:focus,.fa-block__itemlink:focus:hover,.fa-block__itemlink:focus {
    outline: 3px solid transparent;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    text-decoration: none;
    border-bottom: 2px solid #fd0
}

a:focus:hover {
    text-decoration: none;
    color: var(--body-color)
}

.container,.gi-breadcrumb__list {
    max-width: #CHECKWIDTH
}

.btn {
    background-color: var(--link-color);
    color: #fff;
    border: var(--link-color) 2px solid;
    box-shadow: 0 2px 0 #002d18
}

.btn:hover {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid
}

.btn--negative {
    background-color: #800f18;
    box-shadow: none;
    border: 0
}

.btn--negative:hover {
    background-color: #800f18;
    -webkit-box-shadow: inset 0 0 20em rgba(0,0,0,0.5);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.5)
}

.btn:focus {
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0;
    box-sizing: border-box;
    box-shadow: 0 2px 0 #0b0c0c;
    outline: 3px solid transparent;
    border-bottom: 2px solid #fd0
}

.btn:focus:hover {
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118;
    border-color: #fd0;
    text-decoration: none
}

.maincontent h1 {
    margin-bottom: .5em;
    line-height: 1.11111
}

.maincontent h2:first-child {
    margin-top: 10px
}

.maincontent h2,.a-body h2:not(:first-child),.maincontent h3,.maincontent h4,.maincontent h5,.maincontent h6 {
    margin: 1em 0 .5em 0;
    line-height: 1.11111
}

.a-body .accordion+h2,.a-body .accordion+h3,.a-body .accordion+h4,.a-body .accordion+h5,.a-body .accordion+h6 {
    margin-top: 1.6em
}

.maincontent h1,.maincontent h1 .accordion__heading {
    font-size: 2.2rem
}

.maincontent h2,.maincontent h2 .accordion__heading {
    font-size: 1.8rem
}

.maincontent h3,.maincontent h3 .accordion__heading {
    font-size: 1.6rem
}

.maincontent h4,.maincontent h4 .accordion__heading {
    font-size: 1.4rem
}

.maincontent h5,.maincontent h5 .accordion__heading,.maincontent h6,.maincontent h6 .accordion__heading {
    font-size: 1.2rem
}

.cookie-consent-prompt {
    background-color: #f2f2f2
}

.block--cookie-consent-prompt {
    margin: 0 auto;
    max-width: 1024px;
    border: 0
}

.block--cookie-consent-prompt .btn.btn--complete,.block--cookie-consent-prompt .btn.btn--cancel,.block--cookie-consent-prompt .cta-link--cookie-consent-contrast,button.btn--cookie-consent {
    padding: 10px 20px
}

.block--cookie-consent-prompt .btn--complete::after,.block--cookie-consent-prompt .btn.btn--cancel::after {
    display: none
}

.block--cookie-consent-prompt .btn.btn--complete:hover,.block--cookie-consent-prompt .btn.btn--cancel:hover,.block--cookie-consent-prompt .cta-link--cookie-consent-contrast:hover,.btn--cookie-consent:hover {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid
}

.cookie-consent-prompt .btn--contrast.btn--complete:focus:hover,.cookie-consent-prompt .btn--contrast.btn--cancel:focus:hover,.block--cookie-consent-prompt .cta-link--cookie-consent-contrast:focus:hover {
    border-color: #fd0;
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118
}

.block--cookie-consent-prompt .btn.btn--cancel {
    display: none
}

.block--cookiecategory ul {
    padding: 0 0 20px 40px;
    list-style: disc;
    overflow: hidden
}

.block--cookiecategory ol {
    padding: 0 0 20px 40px;
    list-style: decimal;
    overflow: hidden
}

.block--cookiecategory ul ul,.block--cookiecategory ol ol {
    padding-bottom: 0
}

.block--cookiecategory li {
    padding: 5px 0
}

.block--cookiecategory table {
    background-color: #fff;
    margin-bottom: 20px
}

.template--cookiepolicy .block {
    border: 0;
    background-color: transparent;
    padding: 0
}

.template--cookiepolicy .a-table--responsive {
    overflow-x: auto
}

.template--cookiepolicy .block--cookiecategory fieldset {
    min-width: 0
}

.homedatefeedback {
    background-color: #fff;
    padding: 40px 0 0 0
}

.homedatefeedback .gi-feedback__link {
    background-color: var(--link-color);
    border: var(--link-color) 2px solid;
    box-shadow: 0 2px 0 #002d18;
    color: #fff;
    padding: 10px;
    text-decoration: none;
    position: relative;
    display: inline-block;
    line-height: 1;
    font-weight: bold
}

.gi-feedback__heading {
    font-size: 1.8rem;
    margin-top: -4px
}

.maincontent h2.gi-feedback__heading {
    margin: 0
}

.gi-feedback__link:hover {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid;
    outline: 0
}

.gi-feedback__link:focus {
    color: var(--body-color);
    border-color: #fd0;
    color: var(--body-color);
    background-color: #fd0;
    box-sizing: border-box;
    box-shadow: 0 2px 0 #0b0c0c
}

.gi-feedback__link:focus:hover {
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118;
    border-color: #fd0
}

.homedatefeedback .gi-feedback__link--problem {
    padding: 10px 20px
}

@media(max-width: 1023px) {
    .gi-feedback__actions {
        border-bottom:0
    }
}

.header,.header--thin {
    background-color: var(--primary-color)
}

.header__utilities {
    background-color: #CHECKCOLOUR;
    color: #CHECKBODY
}

.utilitymenu--top .utilitymenu__link,.utilitymenu--top .utilitymenu__text {
    color: #CHECKLINK
}

.utilitymenu--top .utilitymenu__link:hover,.utilitymenu--top .utilitymenu__link:focus {
    color: #CHECKBODY
}

@media(min-width: 1024px) {
    .toputils {
        background-color:var(--secondary-color)
    }

    .toputils-nav__list {
        display: flex
    }

    .myaccount-nav__item+.myaccount-nav__item,.toputils-nav__item+.toputils-nav__item {
        border: 0
    }

    .toputils-nav__link,.myaccount-nav__link {
        font-size: 1rem
    }

    .toputils-nav__link:focus {
        color: var(--body-color);
        text-decoration: none;
        box-shadow: 0 0 #fd0,0 4px var(--body-color);
        border-bottom: 0
    }

    .toputils__right {
        float: none
    }

    .toputils-nav {
        padding: 0;
        float: none
    }

    .toputils-nav__item:first-child a {
        padding: 0 1em 0 0
    }

    .toputils-nav__item:last-child a {
        padding: 0 0 0 1em
    }

    .toputils-nav ul li:nth-child(5) {
        margin-left: auto
    }
}

.header__actions {
    background-color: #CHECKCOLOUR
}

.gi-sitelogo--header {
    height: 90px
}

.header--thick .gi-sitelogo--header {
    padding: 0
}

.header--thick .gi-sitelogo--header:focus .gi-sitelogo__image {
    filter: invert(1)
}

.gi-sitelogo--header .gi-sitelogo__link:focus {
    box-shadow: 0 0 #fd0,0 4px var(--body-color);
    border-bottom: 0;
    display: block;
    width: 275px;
    height: 90px
}

.gi-sitelogo--header .gi-sitelogo__image {
    display: none
}

.header--thick .gi-sitelogo--header .gi-sitelogo__link::after,.header--thin .gi-sitelogo--header .gi-sitelogo__link::after {
    position: absolute;
    content: url(https://www.wiltshire.gov.uk/themes/command/images/wiltshire-council-logo-full-white.svg);
    left: 20px;
    top: 22px;
    width: 275px;
    max-width: 100%
}

.header--thick .gi-sitelogo--header .gi-sitelogo__link:focus::after,.header--thin .gi-sitelogo--header .gi-sitelogo__link:focus::after {
    filter: invert(1)
}

.header--thick .gi-sitelogo--header .gi-sitelogo__link:hover::after,.header--thin .gi-sitelogo--header .gi-sitelogo__link:hover::after {
    opacity: .75
}

@media(min-width: 640px) {
    .header--thick .gi-sitelogo--header .gi-sitelogo__image {
        display:none
    }
}

.gi-sitesearch--header .searchform__inputtxt {
    border-radius: #CHECKCORNERS 0 0 #CHECKCORNERS
}

.gi-sitesearch--header .btn--search {
    border-radius: 0 #CHECKCORNERS #CHECKCORNERS 0;
    background-color: #CHECKCOLOUR;
    color: #CHECKCOLOUR
}

.gi-sitesearch .btn--search::after {
    color: #fff
}

.gi-sitesearch--header .gi-sitesearch__container {
    margin-top: 20px
}

.gi-sitenav--extended {
    background-color: #CHECKPRIMARY
}

.gi-sitenav__item--lvl1 {
    background-color: #CHECKPRIMARY
}

.gi-sitenav__link {
    background: var(--secondary-color)
}

.gi-sitenav__link:hover {
    background-color: transparent;
    text-decoration: underline;
    color: #fff
}

.gi-sitenav__link:focus {
    background-color: #fd0;
    text-decoration: none;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    color: var(--body-color)
}

.gi-sitenav__link--lvl1[aria-expanded="true"] {
    background-color: var(--secondary-color)
}

.gi-sitenav__link--lvl1[aria-expanded="true"]:focus {
    background-color: var(--secondary-color);
    color: #fff;
    box-shadow: none;
    border-bottom: 0
}

.gi-sitenav--lvl2 {
    background-color: var(--secondary-color)
}

.gi-sitenav__link--lvl2 {
    background-color: #CHECKBODY;
    color: #fff
}

.gi-sitenav__item--lvl2 {
    border-left: 0
}

.gi-sitenav__item--lvl2.gi-sitenav__item--viewall .gi-sitenav__link {
    display: inline-block;
    background-color: #fff;
    color: var(--primary-color);
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold
}

.gi-sitenav__item--viewall .gi-sitenav__link:focus {
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    background-color: #fd0;
    color: var(--body-color)
}

.gi-sitenav__list {
    background-color: transparent
}

.gi-sitenav__link {
    background-color: transparent
}

.gi-sitenav__list--lvl3 {
    background-color: #CHECKCOLOUR
}

.gi-sitenav__link--lvl2[aria-expanded="true"] {
    background-color: #CHECKCOLOUR
}

.gi-sitenav__link--lvl3 {
    display: none
}

.gi-sitenav--lvl3,.gi-sitenav__list--lvl3 {
    margin: 0
}

.gi-sitenav__link--lvl3:hover,.gi-sitenav__link--lvl3:focus {
    background-color: #CHECKCOLOUR;
    color: #CHECKCOLOUR
}

.mainnav,.gi-sitenav--toplevel {
    margin: 10px 60px 0 0
}

.main-nav__link:hover:focus {
    color: var(--body-color)
}

.homehighlight {
    background-position: center -60px;
    padding: 20px 0 0 0;
    background-size: cover
}

@media(max-width: 784px) {
    .homehighlight {
        background-position:top
    }
}

@media(min-width: 785px) {
    .homehighlight {
        background-position:center calc(calc(-18vh + 26%) / 2)
    }
}

.accordion {
    clear: both
}

.gi-accordion__toggle,.gi-accordion__fallback {
    background-color: #fff
}

.gi-accordion__toggle[aria-expanded]:hover,.gi-accordion__toggle[aria-expanded]:focus,.gi-accordion__fallback--close:hover,.gi-accordion__fallback--close:focus {
    box-shadow: none
}

.gi-accordion__toggle.gi-accordion__toggle--pt:not(.gi-accordion__toggle--hometabs):focus {
    text-decoration: none;
    outline: 0;
    box-shadow: inset 0 0 0 0
}

.gi-accordion__toggle.gi-accordion__toggle--pt:not(.gi-accordion__toggle--hometabs):focus .select-item__title {
    outline: 3px solid transparent;
    text-decoration: none;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color)
}

.gi-accordion__toggle .select-item__title {
    color: var(--secondary-color);
    font-weight: bold
}

.gi-tabs__tab--hometabs[aria-selected="true"] {
    background: var(--primary-color)
}

.gi-tabs__panel--hometabs {
    background: var(--primary-color)
}

.gi-tabs__tab--hometabs,.gi-tabs__fallback--hometabs {
    background-color: var(--secondary-color);
    color: #fff
}

.gi-tabs__panel--hometabs .grid {
    width: calc(100% + 20px);
    margin-left: -10px
}

.hometabs__panellink {
    background-color: #fff;
    display: flex;
    align-items: center;
    border-radius: 5px;
    padding: 10px;
    color: var(--primary-color);
    font-weight: 600;
    font-size: .9rem;
    margin: 0 10px;
    text-decoration: none
}

.grid__cell--hometabs a:hover {
    box-shadow: inset 20em 20em rgba(0,0,0,0.2);
    color: var(--link-color)
}

.grid__cell--hometabs a:focus {
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    color: var(--body-color)
}

.grid__cell--hometabs.grid__cell--viewall a:focus {
    color: var(--body-color);
    text-decoration: none
}

.hometabs__panellink.hometabs__panellink--viewall {
    background-color: #fff;
    color: var(--primary-color);
    text-transform: lowercase;
    display: block
}

.gi-sitenav__item--viewall .gi-sitenav__link {
    text-transform: lowercase
}

.gi-tabs__panel--hometabs:nth-child(2) .hometabs__panellink--viewall,.gi-sitenav__item--lvl1:first-of-type .gi-sitenav__item--viewall {
    display: none
}

.hometabs__panellink.hometabs__panellink--viewall::first-letter ,.gi-sitenav__item--viewall .gi-sitenav__link::first-letter {
    text-transform: capitalize
}

.hometabs__panellink.hometabs__panellink--viewall:focus {
    background-color: #fd0;
    color: var(--body-color)
}

.gi-tabs__tab--hometabs:hover {
    background-color: var(--primary-color)
}

.gi-tabs__tab[aria-selected="true"]:hover {
    background: var(--primary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.gi-tabs__tab:focus,.gi-tabs__tab:focus:hover {
    outline: 3px solid transparent;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0
}

@media(min-width: 1025px) and (max-width:1040px) {
    .gi-tabs__tab--hometabs-3col,.gi-tabs__fallback--hometabs-3col {
        width:321px;
        margin: 0 0 0 3px
    }

    .gi-tabs--hometabs {
        width: auto
    }

    .gi-tabs__panel--hometabs {
        width: calc(100% - 1px)
    }

    .gi-tabs__tab--hometabs-3col,.gi-tabs__fallback--hometabs-3col {
        width: 33.1%;
        margin: 0 0 0 3px
    }
}

@media(min-width: 1025px) {
    .gi-tabs__tablist--hometabs button {
        position:relative
    }

    .gi-tabs__tablist--hometabs button::after {
        position: absolute;
        content: "\f107";
        font-size: 1.85rem;
        transform: translate(12px,0px)
    }

    .gi-tabs__tablist--hometabs button[aria-selected="true"]::after {
        content: "\f106"
    }

    .gi-tabs__panel--hometabs:focus {
        position: relative
    }
}

.gi-tabs__tab--hometoptasks,.gi-tabs__fallback--hometoptasks {
    margin: 200px 30px 0 0;
    padding: 20px 60px 20px 60px;
    background-color: var(--primary-color);
    color: #fff;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%)
}

.gi-tabs__tab--hometoptasks:hover {
    background-color: #032118;
    color: #fff;
    text-decoration: underline
}

.gi-tabs__tablist--hometoptasks {
    max-width: 100%
}

.hometoptasks {
    text-align: center;
    width: 280px;
    margin: 0 auto
}

.hometoptasks__lvl1-item {
    vertical-align: top
}

.hometoptasks__lvl1-link {
    min-height: 100%;
    padding: .6rem;
    background-color: var(--primary-color);
    color: #fff;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%)
}

.hometoptasks__lvl1-link:hover {
    background-color: #032118;
    color: #fff;
    text-decoration: underline
}

.hometoptasks__lvl1-link:focus {
    text-decoration: none;
    color: var(--body-color);
    box-shadow: 0 4px var(--body-color);
    border-bottom: 0
}

.hometoptasks__lvl1-link:hover:focus {
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 4px var(--body-color);
    text-decoration: none;
    border-bottom: 0
}

.hometoptasks__lvl1-linktext--tabicon {
    font-size: 1rem;
    line-height: inherit;
    max-width: 100%;
    margin: 0 auto;
    font-weight: normal
}

.hometoptasks__lvl1-item .hometoptasks__lvl1-link:focus .hometoptasks__lvl1-linkicon.hometoptasks__lvl1-linkicon--primary {
    filter: invert(1)
}

.hometoptasks__lvl1-linkicon {
    max-height: 75px
}

.hometoptasks__lvl1-linktext {
    padding: 10px 0 0 0
}

@media(max-width: 640px) {
}

.mobilebar {
    background-color: var(--secondary-color)
}

.gi-mobilenavtoggle__mt1,.gi-mobilenavtoggle__mt2,.gi-mobilenavtoggle__mt3 {
    background-color: #CHECKPRIMARY
}

.gi-mobilenavtoggle__mt2--search {
    background-color: var(--secondary-color)
}

.gi-mobilenavtoggle__btn,.gi-mobilenavtoggle__btn[aria-expanded="true"] {
    background-color: var(--secondary-color)
}

.gi-mobilenav {
    background-color: var(--secondary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt1,.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt2,.gi-mobilenavtoggle__btn[aria-expanded="true"] .gi-mobilenavtoggle__mt3 {
    background-color: #CHECKPRIMARY
}

.gi-sitesearch--mobile {
    background-color: var(--secondary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.gi-sitesearch--mobile .searchform__inputtxt {
    border-radius: #CHECKCORNERS 0 0 #CHECKCORNERS
}

.gi-sitesearch--mobile .btn--search {
    border-radius: 0 #CHECKCORNERS #CHECKCORNERS 0;
    background-color: var(--secondary-color);
    color: #CHECKCOLOUR
}

.gi-tabs--mobilenav .gi-tabs__tab[aria-selected="true"] {
    background-color: #CHECKPRIMARY;
    border: 1px solid #CHECKPRIMARY;
    color: #CHECKPRIMARYTEXT
}

.gi-tabs--mobilenav .gi-tabs__tab[aria-selected="true"]:hover,.gi-tabs--mobilenav .gi-tabs__tab[aria-selected="true"]:focus {
    background-color: #CHECKBODY
}

.gi-tabs__panel--mobilenav {
    background-color: #CHECKPRIMARY
}

.utilitymenu--mobile .utilitymenu__link,.utilitymenu--mobile .utilitymenu__text {
    background-color: #CHECKPRIMARY;
    color: #CHECKPRIMARYTEXT
}

.utilitymenu--mobile .utilitymenu__link:hover,.utilitymenu--mobile .utilitymenu__link:focus {
    background-color: #CHECKBODY
}

.gi-accordion__toggle.gi-accordion__toggle--hometabs[aria-expanded] {
    background-color: var(--secondary-color);
    color: var(--primary-text);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
    border-top-left-radius: 5px;
    border-top-right-radius: 5px
}

.gi-accordion__toggle.gi-accordion__toggle--hometabs[aria-expanded]:focus {
    background-color: var(--secondary-color);
    color: #fff
}

.gi-accordion__toggle.gi-accordion__toggle--hometabs[aria-expanded]:hover {
    background-color: var(--secondary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.hometabs__lvl2 {
    background-color: var(--primary-color)
}

.hometabs__lvl2-link.hometabs__lvl2-link--viewall {
    background-color: var(--secondary-color);
    color: #fff;
    text-align: center
}

.hometabs__lvl2-link.hometabs__lvl2-link--viewall:focus {
    background-color: #fd0;
    color: var(--body-color)
}

.hometabs__lvl2-link {
    text-decoration: none;
    display: block;
    background-color: #fff;
    padding: 10px;
    font-weight: 600;
    border-radius: 5px;
    width: calc(100% - 20px);
    position: relative;
    color: var(--primary-color)
}

.hometabs__lvl2-link--viewall {
    text-transform: lowercase
}

.hometabs__lvl2-link--viewall::first-letter {
    text-transform: capitalize
}

#hometabsaccordion_panel0 .hometabs__lvl2-link.hometabs__lvl2-link--viewall {
    display: none
}

.gi-accordion__toggle.gi-accordion__toggle--hometabs,.gi-accordion__fallback.gi-accordion__toggle--hometabs {
    background-color: var(--secondary-color);
    color: #fff
}

.gi-accordion__toggle--hometabs:hover,.gi-accordion__fallback--hometabs:focus {
    background-color: var(--secondary-color);
    color: #fff
}

.gi-accordion__toggle.gi-accordion__toggle--pt {
    border-bottom: solid 1px #ccc;
    padding: 15px 40px 15px 0
}

.gi-accordion__toggle.gi-accordion__toggle--pt:hover {
    text-decoration: underline
}

.hometoptasks__lvl1 {
    display: flex
}

@media(min-width: 640px) {
    .hometoptasks {
        width:auto;
        max-width: none
    }

    .hometoptasks__lvl1-link {
        min-height: 150px;
        width: 100%
    }
}

@media(max-width: 784px) {
    .hometoptasks {
        max-width:none;
        width: 100%;
        overflow: hidden
    }

    .hometoptasks__lvl1 {
        width: 100%;
        flex-wrap: wrap;
        gap: 30px 40px;
        justify-content: space-evenly;
        margin: 0 0 4px 0
    }

    .hometoptasks__lvl1-item {
        padding: 0;
        margin: 0;
        width: calc(50% - 20px)
    }

    .hometoptasks__lvl1-item:nth-child(n+3) {
        margin-top: 0
    }
}

@media(min-width: 785px) {
    .hometoptasks__lvl1-item {
        flex:1;
        margin-right: 26px
    }

    .hometoptasks__lvl1-item:last-child {
        margin-right: 0
    }

    .hometoptasks__lvl1-link {
        min-width: 100%;
        min-height: 100%
    }

    .hometoptasks__lvl1-link {
        padding: 20px 1rem 10px 1rem
    }
}

@media(min-width: 1024px) {
    .hometoptasks {
        width:100%
    }
}

.sitemenu--mobile {
    background-color: #CHECKPRIMARY
}

.gi-disclosure__fallback--mobile,.gi-disclosure__toggle--mobile {
    background-color: #CHECKPRIMARY
}

.sitealert {
    background-color: #f2f2f2;
    border-bottom: 1px solid #bfc1c3;
    -webkit-box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5);
    box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5)
}

.sitealert__title {
    color: var(--secondary-color);
    text-decoration: none;
    pointer-events: none
}

.sitealert__title:hover {
    color: #fff
}

.sitealert .container {
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.sitealert__heading,.sitealert__content,.sitealert__link {
    line-height: 1.25;
    display: -ms-flexbox;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.sitealert__heading {
    -webkit-box-flex: 0;
    flex: none
}

.sitealert__heading {
    margin: 0 20px 0 0;
    text-transform: none;
    font-weight: 700;
    line-height: 1.25;
    display: inline-block;
    padding: 4px 8px;
    letter-spacing: 1px;
    text-decoration: none;
    text-align: center;
    -ms-flex: auto;
    max-width: 180px
}

.sitealert__content p {
    margin: 0
}

@media(max-width: 1024px) {
    .sitealert .container {
        flex-direction:column;
        align-items: flex-start
    }

    .sitealert__heading {
        padding: 4px 0
    }
}

.homeallservices__button {
    background-color: var(--secondary-color);
    display: none
}

.homeallservices__button:focus {
    color: var(--body-color)
}

.homebanner {
    background-color: #CHECKCOLOUR
}

.homebanner .container {
    max-width: #CHECKWIDTH
}

.menu__blocks .gi-carousel {
    border-radius: #CHECKCORNERS
}

.a-panel__content {
    background: #CHECKPRIMARY90
}

.a-panel__title {
    background-color: #CHECKCOLOUR;
    color: #CHECKCOLOUR;
    border-radius: 0 #CHECKCORNERS #CHECKCORNERS 0
}

.gi-carousel__links--focus {
    outline: 0
}

.gi-carousel__itemlinkbtn:hover {
    background-color: var(--secondary-color);
    color: #fff
}

.gi-carousel__itemlinkbtn:focus {
    background-color: var(--secondary-color);
    color: #fff;
    outline: #fd0
}

.gi-carousel__itemlinkbtn--selected {
    background: var(--primary-color);
    border: 2px solid #000
}

.gi-carousel__itemlinkbtn--selected:hover {
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.gi-carousel__itemlinkbtn:focus::before {
    box-shadow: 0 0 0 2px #fd0
}

.gi-carousel__play,.gi-carousel__previous,.gi-carousel__next {
    color: var(--primary-text);
    background-color: var(--primary-color)
}

.gi-carousel__play:hover,.gi-carousel__previous:hover,.gi-carousel__next:hover,.gi-carousel__play:focus,.gi-carousel__previous:focus,.gi-carousel__next:focus {
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
    background-color: var(--secondary-color)
}

.gi-carousel__play--paused::after {
    transform: translateY(-1px)
}

.menu__block {
    background: #CHECKPRIMARY;
    border-radius: #CHECKCORNERS
}

.menu__block:hover {
    background: #CHECKPRIMARY;
    box-shadow: inset 20em 20em rgb(0 0 0 / 20%)
}

.menu__block .block__title {
    color: #CHECKPRIMARYTEXT
}

.menu__block[class*="METADATA"] {
    background-color: #CHECKCOLOUR
}

.menu__block[class*="METADATA"]:hover {
    background: #CHECKCOLOUR;
    box-shadow: inset 20em 20em rgb(0 0 0 / 20%)
}

.hometabs__panellink {
    font-size: 1rem
}

.related-articles {
    background-color: #CHECKCOLOUR;
    border-top: #CHECKBORDERS
}

.related-articles .container {
    max-width: #CHECKWIDTH
}

.related-articles .item {
    background: #CHECKCOLOUR;
    border-bottom: #CHECKBORDERS;
    border-radius: #CHECKCORNERS
}

.related-articles .item__title {
    border-bottom: #CHECKBORDERS
}

.related-articles .item__title .item__link {
    color: #CHECKLINK
}

.panel--relarticles .panel__item,.panel--relmedia .panel__item,.panel--rellinks .panel__item,.panel--relforms .panel__item {
    border-bottom: 0;
    padding: 5px 0
}

.panel--relarticles .panel__link,.panel--relmedia .panel__link,.panel--rellinks .panel__link,.panel--relforms .panel__link {
    padding: 0 0 5px 0
}

.homenewsandevents {
    background: #fff
}

.maincontent--home::after {
    background: #fff;
    display: none
}

.newsandevents__panel {
    background-color: #ccc;
    border-radius: 5px;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%);
    margin: 0 20px;
    display: flex;
    flex-direction: column
}

.newsandevents__title {
    border-bottom: solid 3px var(--primary-color);
    order: 2;
    border: 0
}

.newsandevents__titlelink {
    font-size: 1.2rem;
    font-weight: 600
}

.newsandevents__imagecontainer {
    padding-top: 20px;
    order: 1;
    padding: 0
}

.newsandevents__imagecontainer img {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px
}

.grid--homenewsandevents.grid--3col {
    max-width: 1024px;
    margin: 0 auto
}

.newsandevents__text {
    display: none
}

@media(max-width: 1024px) {
    .newsandevents__panel {
        margin:0 10px 30px 10px
    }
}

@media(min-width: 641px) and (max-width:1024px) {
    .homenewsandevents .grid--2col>.grid__cell:nth-of-type(1) {
        width:100%
    }

    .homenewsandevents .grid--2col>.grid__cell:nth-child(2n+1) {
        clear: none
    }

    .homenewsandevents .grid--2col>.grid__cell:nth-of-type(3) {
        width: 50%;
        float: right
    }

    .homenewsandevents .grid--3col>.grid__cell:nth-of-type(3) {
        width: 33.3%
    }
}

.featuregroup {
    background-color: #CHECKCOLOUR;
    border-top: #CHECKBORDERS
}

.featuregroup .container {
    max-width: #CHECKWIDTH
}

.featuregroup .grid__cellwrap {
    border-bottom: #CHECKBORDERS;
    background: #CHECKCOLOUR;
    border-radius: #CHECKBORDERS
}

.featuregroup__link {
    color: #CHECKLINK
}

.a-panel--featuredtask {
    padding: 40px 20px 40px 20px;
    background-color: #fff
}

.a-panel--featuredtask .a-panel__content--hasbackground {
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%);
    border-radius: 5px
}

.a-panel--featuredtask .a-panel__title {
    padding: 0
}

.a-panel--featuredtask .a-panel__title:focus {
    color: var(--body-color);
    text-decoration: none;
    border-bottom: 0
}

.a-panel--featuredtask .a-panel__background {
    border-radius: 5px;
    background-position: 50% 50%
}

.footer {
    background: var(--primary-color)
}

.footer--site {
    color: #fff;
    padding: 200px 14px 20px 14px;
    margin-top: 40px
}

.template-home .footer-site {
    margin-top: 0
}

.footer__navlink {
    color: #fff;
    font-weight: 400
}

.footer__navlink:hover {
    color: #fff;
    text-decoration: underline
}

.footer__navlink:focus,.bygoss__link:focus {
    color: var(--body-color);
    text-decoration: none
}

.footer .imagelink__link:hover,.footer .imagelink__link:focus {
    opacity: 1
}

.footer .imagelink__link:focus .imagelink__image {
    filter: invert(1)
}

.footer__left::after {
    content: url(https://www.wiltshire.gov.uk/themes/command/images/wiltshire-council-logo-w-white.svg);
    position: absolute;
    top: -150px;
    width: 125px;
    max-width: 100%;
    right: 50%;
    transform: translateX(50%)
}

.footer__logo {
    display: none
}

@media(min-width: 640px) {
    .bygoss {
        margin-bottom:20px
    }

    .bygoss__link {
        display: inline-block
    }

    .footer__right {
        padding-left: 0;
        float: left
    }

    .footer__left {
        width: 100%;
        position: relative
    }

    .footer__left::after {
        right: 0;
        top: 0;
        left: auto;
        transform: none
    }

    .footer__navlink {
        display: inline-block
    }

    .footer__navlink:focus {
        border-bottom: 0
    }

    .imagelink.imagelink--socialmedia:last-child {
        margin-right: 0
    }

    .footer--site {
        padding: 50px 14px 20px 14px
    }
}

@media(min-width: 1024px) {
    .footer__right {
        width:75%
    }

    .footer__navitem {
        padding-bottom: 1rem
    }

    .footer__navlink {
        border-right: 1px solid #fff
    }
}

.utilitymenu--footer .utilitymenu__link {
    color: #fff
}

.footer__copy {
    color: #CHECKPRIMARYTEXT
}

.bygoss__link {
    color: #fff
}

.bygoss__link:hover {
    color: #fff
}

.bygoss__link:hover:focus {
    color: var(--body-color)
}

.gi-breadcrumb {
    background-color: #CHECKCOLOUR
}

.gi-breadcrumb__link {
    color: var(--link-color)
}

.gi-breadcrumb__item:after {
    content: "\f105";
    margin-top: -4px
}

.a-body p:first-child {
    margin-top: 0
}

@media(min-width: 1024px) {
    .template--default .maincontent__left {
        max-width:calc(100% - 245px)
    }

    .template--default .maincontent__left:only-child {
        float: none;
        max-width: 100%
    }

    .template--default .maincontent__right {
        max-width: 225px
    }
}

@media(min-width: 40.0625em) {
    h1 {
        line-height:1.04167;
        margin-bottom: 50px
    }
}

.a-body blockquote {
    background: #eee;
    border-left: 10px solid var(--primary-color);
    margin: 1rem 0;
    padding: 2rem 1rem .5rem .1rem
}

.a-body blockquote::before {
    display: none
}

.a-body blockquote p {
    display: block;
    padding-left: 2.5rem
}

blockquote p:before {
    float: left;
    clear: both;
    margin-left: -15px
}

.a-body blockquote p::before {
    color: #004331;
    content: open-quote;
    float: left;
    font-size: 6rem;
    line-height: 1rem;
    margin-right: .5rem;
    margin-left: -0.2rem;
    transform: translateY(1.6rem);
    vertical-align: text-bottom
}

.a-body blockquote p:last-child::after {
    color: #004331;
    content: close-quote;
    font-size: 6rem;
    line-height: 1rem;
    transform: translateY(0.27em);
    margin-left: .1em;
    display: inline-block
}

.a-intro {
    margin-bottom: 20px;
    font-size: 1rem
}

.cta-link::after,.a-body__link--cta::after {
    display: none
}

.cta-link,.a-body__link--cta,.a-body .a-body__link--cta-arrow {
    background-color: var(--link-color);
    border: var(--link-color) 2px solid;
    box-shadow: 0 2px 0 #002d18;
    color: #fff;
    padding: 10px;
    text-decoration: none;
    position: relative;
    display: inline-block;
    line-height: 1;
    font-weight: bold
}

.a-body .a-body__link--cta-arrow::after {
    right: 10px;
    position: absolute;
    content: "\e827";
    top: calc(50% - 9px)
}

.a-body .a-body__link--cta-arrow {
    padding-right: 36px;
    font-weight: bold
}

.cta-link:hover,.a-body__link--cta:hover,.a-body .a-body__link--cta-arrow:hover {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid
}

.cta-link:focus,.a-body__link--cta:focus,.a-body .a-body__link--cta-arrow:focus {
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0;
    box-sizing: border-box;
    box-shadow: 0 2px 0 #0b0c0c
}

.cta-link:focus:hover,.a-body__link--cta:focus:hover,.a-body .a-body__link--cta-arrow:focus:hover {
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118;
    border-color: #fd0
}

@media(max-width: 40.0625em) {
    .a-body .a-body__link--cta {
        display:block;
        text-align: center
    }
}

.a-heading {
    border-bottom: #CHECKBORDERS
}

.a-heading__title {
    font-weight: 700
}

.a-heading__title--icon::before {
    background-color: #CHECKPRIMARY;
    background-size: cover;
    height: 50px;
    width: 50px;
    text-align: center;
    padding: 10px;
    border-radius: 50%;
    margin: 0 20px 0 0
}

.a-heading[class*="METADATA"] .a-heading__title--icon::before {
    background-color: #CHECKPRIMARY
}

.a-relimage {
    display: none
}

.gi-articletreeview__link {
    color: #CHECKLINK
}

.gi-articletreeview__link:hover,.gi-articletreeview__link:focus {
    color: #CHECKBODY
}

.gi-articletreeview__item[aria-selected="true"]>.gi-articletreeview__link {
    outline: 0;
    color: #CHECKLINK
}

.gi-articletreeview__item[aria-selected="true"]>.gi-articletreeview__link:hover {
    cursor: default;
    text-decoration: none;
    color: #CHECKBODY
}

.a-share {
    border-top: 0
}

.a-share__link[href*="facebook"] .a-share__image {
    content: url(https://www.wiltshire.gov.uk/image/12161/facebook-share-icon/original.png)
}

.a-share__link:nth-child(3) .a-share__image {
    content: url(https://www.wiltshire.gov.uk/image/12165/x-share-icon/original.png)
}

.a-share__link[href*="mail"] .a-share__image {
    content: url(https://www.wiltshire.gov.uk/image/12159/email-share-icon/original.png)
}

.a-share__link[href*="print"] .a-share__image {
    content: url(https://www.wiltshire.gov.uk/image/12163/print-share-icon/original.png)
}

.a-share__link:focus {
    box-shadow: 0 -20px #fd0,0 4px var(--body-color);
    padding: 0 0 0 5px
}

#share-print-link:focus {
    box-shadow: 0 -20px #fd0,0 4px var(--body-color);
    padding: 0 5px 0 5px
}

.a-share__label:first-of-type {
    padding: 0 10px 0 25px
}

@media(max-width: 780px) {
    .a-share__label:first-of-type {
        padding:0
    }

    .a-share__label {
        display: inline-block;
        top: -10px;
        left: -10px
    }

    #share-print-label::before {
        content: "";
        display: block
    }
}

.panel__heading {
    background: #CHECKCOLOUR;
    border-top: 0
}

.a-body p.gi-info--primary a,.a-body p.gi-info--secondary a {
    font-weight: 700
}

.a-body p.gi-info--primary a:hover,.a-body p.gi-info--secondary a:hover {
    color: #fff
}

.a-body p.gi-info--primary a:focus,.a-body p.gi-info--secondary a:focus {
    color: var(--body-color)
}

p.gi-info {
    max-width: 100%;
    position: relative;
    clear: both
}

p.gi-info::before {
    content: "\e83a";
    font-size: 2.5rem;
    position: absolute;
    top: .4rem;
    left: 1.5rem
}

p.gi-info--alert {
    color: var(--body-color);
    background-color: #efefef
}

p.gi-info--alert:before {
    content: "\e83c"
}

p.gi-info--alert a {
    color: #004331
}

p.gi-info--alert a:hover {
    color: #007253
}

p.gi-info--alert a:focus {
    color: var(--body-color)
}

p.gi-info--primary:before,p.gi-info--secondary:before {
    content: unset
}

p.gi-info--primary,body p.gi-info--secondary {
    background-color: var(--primary-color);
    color: #fff;
    padding: 2rem;
    text-align: center
}

p.gi-info.gi-info--primary,p.gi-info.gi-info--secondary {
    padding: 1rem 2rem
}

p.gi-info,.accordion__content p.gi-info {
    padding: 1rem 2rem 1.4rem 5rem
}

table,th,td {
    border: 0;
    border-bottom: 1px solid #cdcdcd;
    padding: 10px 20px 10px 0
}

th {
    background: #fff
}

.a-table--responsive {
    overflow-x: auto
}

table:not(.xn-qr-code) th {
    border-bottom: 1px solid #cdcdcd;
    padding: 8px 8px 8px 0
}

.a-body caption {
    padding: 0 5px 10px 0
}

.tableprimary th,.primarygeneral th {
    background-color: #CHECKPRIMARY;
    color: #CHECKPRIMARYTEXT;
    padding: 15px 10px
}

.tableprimary tr:nth-child(even),.primarygeneral tr:nth-child(even) {
    background-color: #CHECKPRIMARY30
}

.tableprimary tr:nth-child(odd),.primarygeneral tr:nth-child(odd) {
    background-color: #CHECKPRIMARY10
}

.tablesecondary th,.secondarygeneral th {
    background-color: #CHECKSECONDARY;
    color: #CHECKSECONDARYTEXT;
    padding: 15px 10px
}

.tablesecondary tr:nth-child(even),.secondarygeneral tr:nth-child(even) {
    background-color: #CHECKSECONDARY30
}

.tablesecondary tr:nth-child(odd),.secondarygeneral tr:nth-child(odd) {
    background-color: #CHECKSECONDARY10
}

.template--default .a-table {
    margin-bottom: 50px
}

.alert {
    border: 8px solid;
    background-color: transparent;
    min-height: 4.4rem;
    padding: .4rem 2rem .5rem 4.5rem
}

.highlightbox__bodytext {
    font-weight: 400;
    color: var(--body-color);
    font-size: 1rem
}

.alert .alert__title {
    color: var(--body-color);
    font-size: 1.8rem
}

.maincontent .alert h2.alert__title {
    padding-top: .2rem;
    margin-top: 0
}

.alert .alert__message {
    padding-top: .15rem;
    color: var(--body-color)
}

.alert::before {
    font-size: 2.5rem;
    top: .2rem
}

.alert--none {
    border-color: #aaa
}

.alert .btn--cancel {
    border: 0;
    box-shadow: none;
    color: #000
}

.alert .btn--cancel:focus,.alert--contrast a:focus {
    color: #000
}

.alert .btn--cancel:hover:focus {
    outline: 3px solid transparent;
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0
}

.alert .btn--cancel:hover {
    background-color: transparent
}

.alert.alert--contrast {
    background-color: var(--body-color);
    border-color: var(--body-color)
}

.alert.alert--contrast .alert__title,.alert.alert--contrast .highlightbox__bodytext,.alert.alert--contrast .alert__message {
    color: #fff
}

.alert--none::before,.alert--info::before,.alert--warn::before,.alert--error::before,.alert--contrast,.alert--success::before {
    color: var(--body-color)
}

.alert:has(.alert__title)::before {
    top: .2rem;
    left: .7rem
}

.alert.alert--contrast.alert--warn .btn--cancel:hover::after {
    color: #e5e5e5
}

.alert.alert--contrast .alert__title,.alert.alert--contrast .alert__message {
    color: #fff
}

.alert:not(:has(.alert__title)) {
    padding-top: .7rem
}

.alert--contrast::before,.alert--contrast .btn--cancel {
    color: #fff
}

.alert--error p {
    color: var(--body-color)
}

.videoplayer__video--standard {
    background-color: transparent
}

.videoplayer__video--standard:focus {
    outline: 3px solid #fd0
}

.accordion__heading {
    border: 0;
    border-bottom: solid 1px #ccc;
    padding: 15px 40px 15px 0;
    color: var(--secondary-color)
}

.accordion__heading:hover {
    text-decoration: underline
}

.accordion__content {
    border: 0;
    border-bottom: solid 1px #ccc;
    padding: 0
}

.accordion__content p {
    margin-top: 20px;
    margin-bottom: 20px
}

.accordion--open .accordion__heading {
    border-bottom: 0
}

.a-body .accordion__heading:focus .accordion__text {
    outline: 3px solid transparent;
    text-decoration: none;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color)
}

.a-body .accordion__heading:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: inset 0 0 0 0
}

.accordion__text {
    pointer-events: none
}

h1 .accordion__heading {
    font-size: 2.5rem
}

h2 .accordion__heading {
    font-size: 1.5rem
}

h3 .accordion__heading {
    font-size: 1.25rem
}

h4 .accordion__heading,h5 .accordion__heading,h6 .accordion__heading {
    font-size: 1rem
}

.accordion+.accordion,h1.accordion__title,h2.accordion__title,h2.accordion__title:first-child,h3.accordion__title,h4.accordion__title,h5.accordion__title,h6.accordion__title {
    margin: 0
}

.accordion__heading::after {
    color: var(--body-color)
}

.accordion__content {
    overflow: hidden
}

.accordion__content p+p {
    padding: 0
}

.gi-disclosure--body .gi-disclosure__toggle::after {
    top: 30px
}

.a-body .h-three--advice {
    background: #004331;
    color: #fff;
    display: inline-block;
    padding: 8px 24px;
    position: relative;
    margin: 0
}

.h-three--advice+p {
    background-color: #e3e3e3;
    display: block;
    padding: 40px 20px 20px 20px;
    margin-top: -20px
}

.a-body ul.advicebox {
    background: #e3e3e3;
    color: #212b32;
    padding: 30px 10px 10px 40px;
    margin-top: -20px;
    margin-bottom: 20px;
    display: block
}

.a-body ul.advicebox--tick,.a-body ul.advicebox--cross {
    list-style: none;
    padding: 30px 10px 10px 25px
}

.a-body ul.advicebox--tick li:before,.a-body ul.advicebox--cross li:before {
    font-size: 32px;
    margin-right: .5em;
    display: inline-block;
    vertical-align: middle
}

.a-body ul.advicebox--tick li:before {
    content: "\e80a";
    color: #2e7d32
}

.a-body ul.advicebox--cross li:before {
    content: "\e809";
    color: #d50000
}

.a-body--default ul,.a-body--default ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.a-body__image {
    position: relative;
    z-index: 1
}

.media-link {
    padding-bottom: 5px
}

.item__title {
    border-bottom: #CHECKBORDER
}

.item__link {
    color: var(--link-color)
}

.item__link:hover {
    color: var(--link-color-hover)
}

.template--list .item__title .item__link {
    text-decoration: underline
}

.template--list .item__title .item__link:hover {
    color: var(--link-color-hover)
}

.template--list .item__title .item__link:focus {
    color: var(--body-color);
    text-decoration: none
}

.item__sublink--list {
    color: var(--link-color);
    text-decoration: underline;
    font-size: 1rem
}

.template--list .maincontent ul,.template--list .maincontent ol:not(.item__sublinks) {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.template--list .item__image {
    width: 100%;
    padding-bottom: 20px
}

@media(min-width: 1024px) {
    .grid--list.grid--2col .item__imagecontainer {
        display:block;
        width: 100%
    }

    .grid--list.grid--2col .item__imagecontainer+.item__content {
        text-align: left;
        float: none;
        width: 100%;
        display: block
    }
}

.paging__link:hover,.paging__link:focus {
    background: #CHECKPRIMARY;
    color: #CHECKPRIMARYTEXT
}

.a-panel__link--pt {
    background-color: var(--link-color);
    color: #fff;
    border: var(--link-color) 2px solid;
    box-shadow: 0 2px 0 #002d18
}

.a-panel__linkwrap:hover .a-panel__link--pt {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid
}

.a-panel__linkwrap:focus .a-panel__link--pt {
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0;
    box-sizing: border-box;
    box-shadow: 0 2px 0 #0b0c0c;
    outline: 3px solid transparent;
    border-bottom: 2px solid #fd0
}

.a-panel__linkwrap:focus:hover .a-panel__link--pt {
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118;
    border-color: #fd0;
    text-decoration: none
}

.a-panel--muted-grey .a-panel__link--pt {
    border: #4a4a4a 2px solid;
    box-shadow: 0 2px 0 #000
}

.a-panel__content .gi-tabs__tablist .gi-tabs__tab[aria-selected="true"] {
    background-color: var(--primary-color)
}

.gi-tabs__tablist--pt {
    border-bottom: solid 4px var(--primary-color)
}

.a-panel__content .gi-tabs__tablist .gi-tabs__tab[aria-selected="true"] .select-item__title {
    color: #fff
}

.gi-tabs__tab--pt[aria-selected="true"] {
    margin: 0 0 0 3px
}

.gi-tabs__panel--pt {
    background: var(--primary-color);
    color: #fff
}

.gi-tabs__tab--pt:first-child {
    margin: 0
}

.gi-tabs__tab--pt {
    background: var(--secondary-color);
    margin: 0 0 0 3px
}

.gi-tabs__tab--pt:hover {
    background-color: var(--primary-color)
}

.gi-tabs__tab--pt .select-item__title {
    color: #fff;
    font-weight: bold
}

.select-item-panel .a-panel__link--pt {
    background: var(--link-color)
}

.gi-tabs__tablist .gi-tabs__tab[aria-selected="true"]:focus {
    outline: 3px solid transparent;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0
}

.gi-tabs__tablist .gi-tabs__tab[aria-selected="true"]:focus .select-item__title {
    color: var(--body-color)
}

.gi-tabs__tab:focus .select-item__title {
    color: var(--body-color)
}

.gi-accordion__panelcontent {
    color: var(--body-color)
}

.a-panel--pt.a-panel--select .a-panel__title,.a-panel--pt.a-panel--select .a-panel__summary {
    padding: 0;
    text-align: left
}

.gi-responsiveimage--tabspanel {
    border: solid 1px #fff
}

@media(min-width: 1025px) {
    .gi-tabs__tablist .gi-tabs__tab {
        padding-right:40px
    }

    .gi-tabs__tablist .select-item__title {
        position: relative;
        text-align: left;
        font-size: 1.4rem;
        padding-top: 0
    }

    .gi-tabs__tablist .select-item__title::after {
        position: absolute;
        content: "\f107";
        font-size: 1.85rem;
        transform: translate(10px,-1px)
    }

    .gi-tabs__tablist button[aria-selected="true"] .select-item__title::after {
        content: "\f106"
    }
}

.template--panel .item__title .item__link {
    text-decoration: underline
}

.template--panel .item__title .item__link:focus {
    text-decoration: none
}

.loginform__guidetext {
    padding: 20px 0 10px
}

.loginform__label,.loginform__text,.loginform__password {
    font-size: 1rem
}

.loginform__submit--icmsiteuser {
    background: #CHECKPRIMARY;
    color: #CHECKPRIMARYTEXT
}

.icmform input[type="submit"],.icmform input[type="reset"] {
    border-radius: #CHECKBORDER
}

.icmform input[type="button"] {
    background-color: #4a4a4a;
    color: #fff;
    border: #4a4a4a 2px solid;
    box-shadow: 0 2px 0 #000
}

.icmform input[type="button"]:hover {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid
}

.icmform input[type="button"]:focus {
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0;
    box-sizing: border-box;
    box-shadow: 0 2px 0 #0b0c0c;
    outline: 3px solid transparent;
    border-bottom: 2px solid #fd0
}

.icmform input[type="button"]:focus:hover {
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118;
    border-color: #fd0;
    text-decoration: none
}

.icmform .btn,.cta-link {
    border-radius: #CHECKBORDER
}

.cta-link,.homedatefeedback .gi-feedback__link {
    line-height: 1.5
}

.icmform .btn--contrast,.icmform input[type="button"].icminput--contrast,.icmform input[type="submit"].icminput--contrast,.icmform input[type="reset"].icminput--contrast {
    background-color: #CHECKPRIMARY;
    border: #CHECKBORDER;
    color: #CHECKPRIMARYTEXT
}

.icmform input[type="button"].icminput--contrast:hover,.icmform input[type="submit"].icminput--contrast:hover,.icmform input[type="reset"].icminput--contrast:hover,.icmform .btn--contrast:hover,.icmform input[type="button"].icminput--contrast:focus,.icmform input[type="submit"].icminput--contrast:focus,.icmform input[type="reset"].icminput--contrast:focus,.icmform .btn--contrast:focus {
    background-color: #CHECKBODY;
    border: #CHECKBORDER;
    color: #CHECKPRIMARYTEXT
}

.icmform .btn--back,.icmform .btn--save {
    background-color: #4a4a4a;
    color: #fff;
    border: #4a4a4a 2px solid;
    box-shadow: 0 2px 0 #000
}

.icmform .btn--back:hover,.icmform .btn--save:hover {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid
}

.icmform .btn--back:focus,.icmform .btn--save:focus {
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0;
    box-sizing: border-box;
    box-shadow: 0 2px 0 #0b0c0c;
    outline: 3px solid transparent;
    border-bottom: 2px solid #fd0
}

.icmform .btn--back:focus:hover,.icmform .btn--save:focus:hover {
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118;
    border-color: #fd0;
    text-decoration: none
}

.icmform input[type="button"][value~="Edit"],.icmform .btn--form[data-label~="Edit"] {
    background-color: #4a4a4a;
    color: #fff;
    border: #4a4a4a 2px solid;
    box-shadow: 0 2px 0 #000
}

.icmform input[type="button"][value~="Edit"]:hover,.icmform .btn--form[data-label~="Edit"]:hover {
    color: #fff;
    background-color: #032118;
    border-color: #032118;
    box-shadow: 0 2px 0 #032118;
    border: #032118 2px solid
}

.icmform input[type="button"][value~="Edit"]:focus,.icmform .btn--form[data-label~="Edit"]:focus {
    color: var(--body-color);
    border-color: #fd0;
    background-color: #fd0;
    box-sizing: border-box;
    box-shadow: 0 2px 0 #0b0c0c;
    outline: 3px solid transparent;
    border-bottom: 2px solid #fd0
}

.icmform input[type="button"][value~="Edit"]:focus:hover,.icmform .btn--form[data-label~="Edit"]:focus:hover {
    box-shadow: inset 0 0 0 1px #fd0;
    color: #fff;
    background-color: #032118;
    border-color: #fd0;
    text-decoration: none
}

.icmform input,.icmform textarea,.icmform select,.icmform .icmsinglecheckbox label::before,.icmform .icmcheckcontainer label::before,.icmform .icmradiocontainer label::before {
    border: solid 2px #767676
}

.icmform input:focus,.icmform textarea:focus,.icmform select:focus {
    border: 2px solid var(--body-color)
}

.icmform .chosen-container.icmlselect .chosen-single {
    border-radius: 3px;
    border-width: 2px
}

.icmform .chosen-container-active .chosen-single,.icmform .chosen-container-active .chosen-choices {
    color: var(--body-color);
    border: 2px solid var(--body-color);
    outline: 3px solid #fd0;
    outline-offset: 0;
    box-shadow: inset 0 0 0 2px
}

.icmform .chosen-container-single .chosen-single div::before {
    content: "\f107";
    transform: scale(1);
    font-size: 16px;
    font-weight: 900
}

.icmform .chosen-container .chosen-drop {
    top: calc(100% - 17px)
}

.icmform .chosen-container-active .chosen-single:hover,.icmform .chosen-container-active .chosen-choices:hover {
    color: var(--body-color)
}

.icmform .chosen-container-active .chosen-single div::before {
    top: -1px;
    right: 6px
}

.icmform .icmwysiwygMain {
    border: solid 2px #e5e5e5
}

.icmform .icmsinglecheckbox input[type="checkbox"]:focus+label::before,.icmform .icmcheckcontainer input[type="checkbox"]:focus+label::before,.icmform .icmradiocontainer input[type="radio"]:focus+label::before {
    outline: 3px solid #fd0;
    outline-offset: 0;
    box-shadow: inset 0 0 0 2px;
    border: 2px solid var(--body-color)
}

.icmform .icmcheckcontainer label,.icmform .icmradiocontainer label {
    padding: 5px 20px 10px 50px
}

.icmform table {
    margin: 0 0 20px 0
}

.icmguidancehint {
    position: relative;
    background-color: #efefef;
    padding: 1rem 2rem 1.4rem 5rem;
    display: block;
    width: 100%;
    color: var(--body-color);
    margin: 0 0 25px 0
}

.icmform .icmguidancehint::before {
    position: absolute;
    font-size: 2.5rem;
    position: absolute;
    top: .5rem;
    left: 1.2rem;
    color: var(--body-color)
}

.icmguidancehint p {
    margin: 0;
    padding: 0 0 15px 0
}

.icmguidancehint p:last-child {
    padding: 0
}

.icmform .htmltemplate ol,.icmform .htmltemplate ul {
    margin-left: 20px;
    margin-bottom: 20px;
    line-height: 1.6
}

.icmform .htmltemplate ul {
    list-style: disc
}

.icmform .htmltemplate ol {
    list-style: decimal
}

.field_number.error,.field_checkbox.error,.field_number.error,.field_checkgroup.error,.field_dateinput.error,.field_text.error,.field_textarea.error,.field_date.error,.field_daterange.error,.field_upload.error,.field_upload.error,.field_multiselect.error,.field_radiogroup.error,.field_wysiwyg.error,.field_select.error {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    padding-left: 15px;
    border-left: 5px solid #d4351c
}

.icmform li {
    margin: 0 0 10px 0
}

.icmform .valid label:after,.icmform .valid .icmbuttongroup legend:after,.icmform .error label:after,.icmform .error .icmbuttongroup legend:after {
    content: ""
}

.template--formsservice .icmwysiwygMain:focus {
    outline: 3px solid #fd0;
    outline-offset: 3px;
    box-shadow: 0 0 0 2px
}

pre {
    font-family: inherit;
    word-break: break-word;
    text-wrap: unset
}

.icmform option {
    padding: 5px 0 5px 20px
}

.template--formsservice .a-body ul,.template--formsservice .a-body ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.template--formsservice .a-relimage {
    display: block
}

@media(min-width: 1024px) {
    .template--formsservice .maincontent__left:only-child .a-relimage {
        float:none;
        margin: 20px 0
    }
}

.alert--form.alert--info.alert--contrast {
    background-color: #31708f;
    border-color: #31708f
}

.alert--form.alert--success.alert--contrast {
    background-color: #3c763d;
    border-color: #3c763d
}

.alert--form.alert--warn.alert--contrast {
    background-color: #8a6d3b;
    border-color: #8a6d3b
}

.alert--form.alert--contrast.alert--warn {
    color: #fff
}

.alert--form.alert--error.alert--contrast {
    background-color: #a94442;
    border-color: #a94442
}

.alert--form.alert--contrast .alert__title,.alert--form.alert--contrast .alert__message {
    color: #fff
}

.alert--form .btn--cancel::after {
    color: var(--body-color)
}

.alert--form.alert--contrast .btn--cancel::after {
    color: #fff
}

.alert--form.alert--contrast .btn--cancel:focus::after {
    color: #000
}

.alert--form.alert--contrast:before {
    color: #fff
}

.alert--form:has(.alert__title)::before {
    top: .2rem
}

.alert.alert--form::before {
    left: .7rem
}

.alert--form:not(:has(.alert__title)) {
    padding-top: .8rem
}

.icmverticalaccordion--container {
    border: 0;
    border-bottom: 1px solid #ccc
}

.icmform legend.icmverticalaccordion__heading {
    color: var(--secondary-color);
    font-size: 1.5rem;
    padding: 15px 40px 15px 0
}

.icmverticalaccordion--container {
    border: 0;
    border-bottom: 1px solid #ccc
}

.icmverticalaccordion__heading::after {
    color: var(--body-color)
}

.icmverticalaccordion__content {
    border-top: 0
}

.icmform legend.icmverticalaccordion__heading:focus {
    outline: 0;
    box-shadow: none;
    background-color: transparent
}

.icmform legend.icmverticalaccordion__heading:hover {
    background-color: transparent;
    text-decoration: underline
}

.icmform legend.icmverticalaccordion__heading:hover:focus {
    text-decoration: none
}

.icmform legend.icmverticalaccordion__heading:focus span {
    outline: 3px solid transparent;
    text-decoration: none;
    color: #0b0c0c;
    background-color: #fd0;
    -webkit-box-shadow: 0 -3px #fd0,0 4px #0b0c0c;
    box-shadow: 0 -3px #fd0,0 4px #0b0c0c;
    padding-bottom: 2px
}

.textarea-hint {
    margin: 0 0 1em 0
}

.gi-sitesearch--header .searchform__inputtxt {
    border-radius: #CHECKCORNERS 0 0 #CHECKCORNERS
}

.gi-sitesearch--header .btn--search {
    border-radius: 0 #CHECKCORNERS #CHECKCORNERS 0;
    background-color: #CHECKCOLOUR;
    color: #CHECKCOLOUR
}

.searchresults__itemlink,.searchresults__itemtitle {
    color: #CHECKLINK
}

.searchresults__itemsummary {
    font-size: 1rem;
    margin: 0
}

.gi-sitesearch__button--search,.gi-sitesearch--home .gi-sitesearch__button--search {
    background: var(--secondary-color);
    bottom: unset;
    box-shadow: none
}

.gi-sitesearch__button--search:focus,.gi-sitesearch--home .gi-sitesearch__button--search:focus {
    outline: 3px solid #fd0
}

.gi-sitesearch__button--search:hover,.gi-sitesearch--home .gi-sitesearch__button--search:hover {
    background: var(--secondary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
    border: 0
}

.gi-accordion--focus {
    outline: 0
}

.btn.btn--search.btn--icon-only.gi-sitesearch__button.gi-sitesearch__button--search:focus {
    background: var(--secondary-color);
    border-color: var(--secondary-color);
    outline: 3px solid #fd0;
    box-shadow: none
}

.gi-sitesearch__label {
    display: none
}

.gi-sitesearch--desktop .searchform__inputtxt {
    width: 100%
}

.gi-sitesearch--home {
    background-color: transparent;
    border-radius: 8px;
    padding: 15px;
    margin: 20px 0 30px 0;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%)
}

.gi-sitesearch--header[data-collapsible="true"][data-collapsed="true"] .gi-sitesearch__button--search {
    border: 0
}

.facet__list {
    padding: 10px 10px 0 10px
}

.template--search .searchresults__itemtitle {
    text-decoration: underline;
    margin-bottom: 0
}

.template--search .searchresults__itemlink,.template--search .searchresults__itemtitle {
    color: #004331;
    border-bottom: 3px solid transparent
}

.template--search .searchresults__itemtitle:hover {
    color: var(--link-color-hover)
}

.template--search .searchresults__itemlink:hover {
    color: #004331;
    text-decoration: none
}

.template--search .searchresults__itemlink:focus,.template--search .searchresults__itemlink:focus .searchresults__itemtitle {
    color: var(--body-color);
    text-decoration: none
}

.template--search .searchresults__itemsummary {
    font-size: 16px;
    line-height: 1.5;
    margin: 5px 0
}

.template--search .searchresults__itemurl {
    display: none
}

.template--search .searchresults__itemtitle+.searchresults__itemurl {
    display: block
}

@media(max-width: 40.0625em) {
    .template--search .searchresults__itemlink,.template--search .searchresults__itemtitle,.template--search .searchresults__itemsummary {
        font-size:16px;
        line-height: 1.25
    }

    .template--search .searchresults__itemsummary {
        font-size: 14px
    }
}

.template--search .searchresults__item {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #b1b4b6
}

.template--search .searchsummary {
    border-bottom: solid 1px var(--body-color)
}

.template--search .icmhighlight {
    background-color: transparent;
    font-weight: bold
}

.template--search .searchoptions {
    border: 0
}

.template--search .searchoptions--desktop .searchoptions__title {
    display: block;
    visibility: visible;
    border: 0;
    clip: rect(0 0 0 0);
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    background-color: transparent
}

.template--search .facet {
    border-bottom: 1px solid #ccc;
    border-top: 0
}

.template--search .facet__heading {
    font-weight: normal;
    color: #004331;
    padding: 10px 10px 10px 40px
}

.template--search .facet__heading--close:after {
    content: "\e828";
    position: absolute;
    left: 10px;
    right: auto;
    top: 13px;
    color: var(--body-color)
}

.template--search .facet__heading--open:after {
    content: "\e829";
    position: absolute;
    left: 10px;
    right: auto;
    top: 13px;
    color: var(--body-color)
}

.template--search .searchoptions__selected {
    background-color: #f3f2f1
}

.template--search .searchoptions__selected .cta-link--facet:not(.cta-link--contrast) {
    background-color: #f3f2f1;
    font-weight: normal;
    font-size: 16px;
    padding: 8px 8px 8px 34px;
    border: 1px solid #000;
    border-radius: 5px;
    text-decoration: none
}

.template--search .searchoptions__selected .cta-link--facet:not(.cta-link--contrast)::after {
    position: absolute;
    top: 10px;
    left: 10px;
    right: auto;
    font-size: 1.1rem
}

.template--search .searchoptions__label--selected {
    font-weight: bold;
    font-size: 16px
}

.template--search .searchoptions__selected .cta-link--facet:not(.cta-link--contrast):focus {
    box-shadow: inset 0 0 0 2px;
    border: solid 1px var(--body-color);
    outline: 3px solid #fd0
}

.template--search .searchoptions__selected .cta-link--facet .cta-link__label,.template--search .searchoptions .facet__count {
    display: none
}

.template--search .facet__link--add,.template--search .facet__link--selected {
    padding: 5px 0 5px 45px;
    position: relative;
    margin: 0 0 10px -10px;
    width: calc(100% + -25px);
    font-size: 1.125rem;
    line-height: 23px;
    text-decoration: none;
    color: var(--body-color)
}

.facet__link--add::before,.facet__link--selected::before {
    content: "";
    border: 1px solid #999;
    background: #fff;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 5px;
    left: 5px
}

.facet__link--selected::after {
    content: "";
    border: solid;
    border-width: 0 0 5px 5px;
    background: transparent;
    border-top-color: transparent;
    position: absolute;
    width: 10px;
    height: 6px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    color: #333;
    top: 10px;
    bottom: 13px;
    left: 7px;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.template--search .facet__link--add:focus,.template--search .facet__link--selected:focus {
    background-color: transparent;
    border: 0;
    box-shadow: none
}

.template--search .facet__link--add:focus:before,.template--search .facet__link--selected:focus:before {
    border: 4px solid #000;
    width: auto;
    box-shadow: 0 0 0 3px #fd0;
    width: 20px;
    height: 20px
}

.facet__link:focus,.facet__link:hover {
    text-decoration: underline
}

.template--search .maincontent .searchform__inputtxt {
    border: 2px solid var(--body-color)
}

.template--search .searchsort .btn.btn--sort {
    display: none
}

.template--search .searchoptions__selected .cta-link--facet {
    line-height: 1
}

.template--search .searchoptions__selected .cta-link--facet:not(.cta-link--contrast) {
    color: var(--body-color)
}

.template--search .searchoptions__selected .cta-link--facet:not(.cta-link--contrast)::before {
    position: absolute;
    top: 5px;
    left: 10px;
    right: auto;
    font-size: 1.1rem
}

.cta-link--facet::before {
    position: absolute;
    top: 8px;
    left: 190px;
    font-size: 1.1rem
}

.cta-link--cancel::before {
    content: "\e840"
}

.searchsort__select {
    font-size: 1rem;
    height: 42px;
    margin-right: 5px;
    border: 2px solid var(--body-color);
    padding: 5px;
    width: 100%;
    border-radius: 3px
}

.gi-accordion--facets .gi-accordion__toggle,.gi-accordion--facets .gi-accordion__fallback {
    background-color: var(--secondary-color)
}

.template--search .paging__item--current .paging__text {
    color: var(--link-color)
}

.paging__item--current .paging__text,.paging__item--disabled .paging__text {
    border: 0
}

.paging__link {
    border: 0;
    text-decoration: underline
}

@media(min-width: 640px) {
    .gi-sitesearch--home {
        max-width:100%
    }
}

@media(min-width: 1024px) {
    .gi-sitesearch--home {
        display:block;
        max-width: 100%
    }

    #homesearchdesktop {
        display: none
    }
}

.template--venue .date {
    padding-top: 15px;
    font-size: 16px;
    line-height: 1.45em;
    padding-bottom: 50px
}

.template--venue .venue-details__venue-name {
    display: none
}

.template--venue .venue-details .room-contact-details {
    display: block;
    background-color: #004331;
    overflow: auto;
    padding: 20px 30px;
    margin: 0 0 40px 0;
    color: #fff
}

.template--venue .venue-details .room-contact-details .venue-details__venue-url a {
    color: #fff;
    font-weight: 700
}

.template--venue .venue-details .room-contact-details .venue-details__venue-url a:focus {
    color: #000
}

.template--venue .venue-room__room-name-heading,.template--venue .venue-room__room-capacity-heading {
    vertical-align: top;
    padding: 10px 10px 10px 0;
    border-bottom: solid 1px #b1b4b6;
    font-weight: 700
}

.template--venue .venue-room__room-name,.template--venue .venue-room__room-capacity {
    vertical-align: top;
    padding: 10px 10px 10px 0;
    border-bottom: solid 1px #b1b4b6
}

.template--venue .a-body--venue {
    margin-top: 50px
}

.template--venue .a-relimage {
    display: block;
    width: 40%;
    margin: 20px 0
}

.template--venue .venue-details,.template--venue .a-body--venue {
    width: 75%
}

.template--venue .a-body ul,.template--venue .a-body ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

@media(max-width: 640px) {
    .template--venue .a-intro.a-intro--venue,.template--venue .venue-details,.template--venue .a-body--venue,.template--venue .a-relimage {
        width:100%
    }

    .template--venue .a-body--venue {
        padding: 0
    }

    .template--venue .a-heading--venue .a-heading__title,.template--venue .a-intro--venue {
        padding-bottom: 15px
    }
}

@media(min-width: 1024px) {
    .template--venue .maincontent__left:only-child .a-relimage {
        float:none;
        margin: 20px 0
    }
}

.venue-details__venue-name {
    font-size: 1.2rem;
    line-height: 1.3;
    font-weight: 700;
    text-decoration: none;
    display: inline-block
}

.room-contact-details {
    font-size: 1rem;
    line-height: inherit;
    margin: 5px 0
}

.template--list .room-contact-details .venue-details__venue-region,.template--list .room-contact-details .venue-details__venue-max-capacity,.template--list .room-contact-details .venue-details__venue-contact,.template--list .room-contact-details .venue-details__venue-phone-number,.template--list .room-contact-details .venue-details__venue-url {
    display: inline-block;
    padding-right: 20px
}

.venue-item {
    width: 100%;
    padding: 20px;
    border-radius: 8px;
    -webkit-box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5);
    box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.venue-item a:focus {
    outline: 0;
    background-color: transparent;
    box-shadow: none;
    text-decoration: none;
    border-bottom: 0
}

.venue-details__venue-name:first-child {
    margin-top: 10px
}

.venue-details__venue-name {
    margin: 1em 0 .5em 0;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.11111;
    text-decoration: underline
}

.venue-item a:focus .venue-details__venue-name {
    outline: 3px solid transparent;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    text-decoration: none;
    border-bottom: 2px solid #fd0
}

.venue-item .accordion__heading:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: inset 0 0 0 0
}

.venue-item .accordion__heading:focus .accordion__text {
    outline: 3px solid transparent;
    text-decoration: none;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color)
}

.venue-details__venue-url a:focus {
    outline: 3px solid transparent;
    text-decoration: none;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color)
}

.template--search .maincontent .btn--search:after {
    font-size: 25px;
    color: #fff
}

.searchoptions__title {
    display: none
}

.searchoptions {
    border: 0
}

.template--team .a-intro {
    font-size: 1.2rem
}

.template--team .a-body ul,.template--team .a-body ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.card__link--heading {
    color: var(--link-color)
}

.template--team .gi-responsiveimage--contactcard .gi-responsiveimage__imagewrapper {
    max-height: none
}

.template--team .gi-responsiveimage--contactcard .gi-responsiveimage__image {
    width: 100%;
    max-height: none
}

@media(max-width: 580px) {
    .template--team .card__imagecontainer .gi-responsiveimage__imagewrapper {
        text-align:left
    }

    .template--team .card--contact .card__imagecontainer {
        background-color: transparent
    }
}

@media(min-width: 600px) {
    .template--team .card--contact .card__imagecontainer {
        width:50%
    }
}

@media(min-width: 1024px) {
    .template--team.card--contact .card__imagecontainer {
        width:33%
    }
}

.document-pagination__link:focus {
    background-color: #fd0
}

.document-pagination__link:focus .document-pagination__pagetitle {
    text-decoration: none
}

.template--documentsection .contents {
    border-bottom: 0
}

.template--documentsection .maincontent__left,.template--documentsection .maincontent__right {
    max-width: 100%
}

.template--documentsection .a-body ul,.template--documentsection .a-body ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.template--search .news-item__published-date {
    color: #4b5252;
    padding-bottom: 5px
}

.template--search .news-item__heading {
    font-weight: 600;
    font-size: 1.125rem
}

.template--search .news-item {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #b1b4b6;
    box-shadow: none;
    border-radius: 0
}

.template--search .grid__cell--searchitem {
    padding: 0 0 0 10px
}

.template--search .news-item__intro-summary {
    padding-top: 10px
}

.template--search .news-item a:focus .news-item__heading {
    outline: 3px solid transparent;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    text-decoration: none;
    border-bottom: 2px solid #fd0;
    display: inline-block
}

.template--newsitem .a-relimage {
    display: block;
    margin-bottom: 15px
}

.template--newsitem .published-date {
    margin-bottom: 30px
}

.template--newsitem .a-body ul,.template--newsitem .a-body ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.news-item {
    width: 100%;
    padding: 20px;
    border-radius: 8px;
    -webkit-box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5);
    box-shadow: 0 2px 8px 0 rgba(170,170,170,0.5);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.news-item__imagecontainer {
    display: block;
    width: 100%;
    text-align: center
}

.news-item__image {
    width: 100%
}

.news-item__heading:first-child {
    margin-top: 10px
}

.news-item__heading {
    margin: 1em 0 .5em 0;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.11111
}

.news-item a:focus .news-item__heading {
    outline: 3px solid transparent;
    color: var(--body-color);
    background-color: #fd0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    text-decoration: none;
    border-bottom: 2px solid #fd0
}

.gi-accordion--facets .gi-accordion__toggle--facets {
    background-color: var(--secondary-color);
    color: #fff
}

.gi-accordion--facets .gi-accordion__toggle--facets[aria-expanded] {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px
}

.gi-accordion--facets .gi-accordion__toggle--facets:hover {
    background-color: var(--secondary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
    color: #fff
}

.gi-accordion--facets .gi-accordion__toggle--facets:focus {
    background-color: var(--secondary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.template--contact .gi-responsiveimage__image {
    margin-bottom: 20px
}

.template--contact .a-body ul,.template--contact .a-body ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.template--myaccount .a-body ul,.template--myaccount .a-body ol {
    padding: 0 0 0 40px;
    margin: 0 0 20px 0
}

.template--myaccount .grid--savedforms .btn--delete {
    margin: 0
}

@media(max-width: 640px) {
    .template--myaccount .grid--2col.grid--savedforms>.grid__cell {
        width:100%
    }

    .template--myaccount .grid__cell--savedforms .btn--delete {
        margin: 20px 0 10px 0;
        float: right
    }
}

@media(min-width: 641px) {
    .template--myaccount .grid--savedforms {
        position:relative
    }

    .template--myaccount .grid__cell--savedforms .grid__cellwrap .btn--delete {
        position: absolute;
        right: 0;
        bottom: 0
    }
}

.contents__title {
    font-size: 1.5rem;
    font-weight: 700
}

.body--landing-page .gi-accordion__toggle[aria-expanded] {
    background-color: var(--secondary-color);
    color: var(--primary-text);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
    border-top-left-radius: 5px;
    border-top-right-radius: 5px
}

.body--landing-page .gi-accordion__toggle:hover,.body--landing-page .gi-accordion__fallback:hover {
    background-color: var(--secondary-color)
}

.body--landing-page .gi-accordion__panelcontent {
    background-color: var(--primary-color);
    color: #fff
}

.body--landing-page .gi-accordion__toggle:focus,.body--landing-page .gi-accordion__fallback:focus {
    background-color: var(--secondary-color);
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
}

.body--landing-page .gi-accordion__toggle:hover,.body--landing-page .gi-accordion__fallback:hover {
    background-color: var(--secondary-color)
}

.body--landing-page .select-item__title {
    color: #fff;
    font-weight: bold
}

.body--landing-page .gi-accordion__toggle.gi-accordion__toggle--pt {
    border-bottom: 0;
    text-decoration: none;
    padding: .5rem 1.8rem .5rem 1rem
}

.body--landing-page .gi-accordion__toggle,.body--landing-page .gi-accordion__fallback {
    color: var(--primary-text);
    background-color: var(--secondary-color)
}

.body--landing-page .gi-accordion__toggle.gi-accordion__toggle--pt:not(.gi-accordion__toggle--hometabs):focus {
    outline: 3px solid #fd0
}

.body--landing-page .gi-accordion__toggle.gi-accordion__toggle--pt:not(.gi-accordion__toggle--hometabs):focus .select-item__title {
    outline: 0;
    color: #fff;
    background-color: transparent;
    box-shadow: none
}

.homehighlight {
    background-size: cover
}

@media(min-width: 785px) {
    .homehighlight {
        background-position:center calc(calc(-18vh + 26%)/2)
    }
}

@media(max-width: 784px) {
    .homehighlight {
        background-position:top
    }
}

.hometoptasks span {
    padding: 8px 18px;
    font-weight: 600
}

@media(min-width: 1024px) {
    .toputils-nav__link,.myaccount-nav__link {
        font-size:1rem
    }
}

.gi-sitenav--lvl3 {
    display: none
}

.template--home .gi-mobilenav .main-nav {
    display: none
}

.template--home .gi-mobilenav .toputils-nav__list {
    border-bottom: 0;
    padding-bottom: 0
}

.template--home .homenewsandevents {
    padding-top: 2.5rem
}

.alert {
    padding-bottom: 1rem
}

body:is([data-id='815'],[data-id='824'],[data-id='833'],[data-id='835'],[data-id='849'],[data-id='850'],[data-id='851'],[data-id='852'],[data-id='853'],[data-id='854'],[data-id='855'],[data-id='867'],[data-id='878'],[data-id='885'],[data-id='893'],[data-id='903'],[data-id='917'],[data-id='927'],[data-id='935'],[data-id='944'],[data-id='954'],[data-id='964'],[data-id='970'],[data-id='985'],[data-id='1010'],[data-id='1031'],[data-id='1049'],[data-id='1057'],[data-id='1098'],[data-id='1112'],[data-id='1114'],[data-id='1143'],[data-id='1254'],[data-id='1270'],[data-id='1271'],[data-id='1282'],[data-id='1290'],[data-id='1304'],[data-id='1313'],[data-id='1321'],[data-id='1326'],[data-id='1338'],[data-id='1432'],[data-id='1443'],[data-id='1490'],[data-id='1532'],[data-id='1545'],[data-id='1546'],[data-id='1547'],[data-id='1548'],[data-id='1554'],[data-id='1583'],[data-id='1624'],[data-id='1648'],[data-id='1662'],[data-id='1668'],[data-id='1675'],[data-id='1715'],[data-id='1736'],[data-id='1739'],[data-id='1753'],[data-id='1756'],[data-id='1795'],[data-id='1829'],[data-id='1836'],[data-id='2249'],[data-id='2321'],[data-id='2365'],[data-id='2693'],[data-id='3584'],[data-id='3868'],[data-id='3874'],[data-id='3897'],[data-id='6195'],[data-id='7941'],[data-id='7951'],[data-id='7953']).template--list .maincontent .item__sublinks,body:is([data-id='815'],[data-id='824'],[data-id='833'],[data-id='835'],[data-id='849'],[data-id='850'],[data-id='851'],[data-id='852'],[data-id='853'],[data-id='854'],[data-id='855'],[data-id='867'],[data-id='878'],[data-id='885'],[data-id='893'],[data-id='903'],[data-id='917'],[data-id='927'],[data-id='935'],[data-id='944'],[data-id='954'],[data-id='964'],[data-id='970'],[data-id='985'],[data-id='1010'],[data-id='1031'],[data-id='1049'],[data-id='1057'],[data-id='1098'],[data-id='1112'],[data-id='1114'],[data-id='1143'],[data-id='1254'],[data-id='1270'],[data-id='1271'],[data-id='1282'],[data-id='1290'],[data-id='1304'],[data-id='1313'],[data-id='1321'],[data-id='1326'],[data-id='1338'],[data-id='1432'],[data-id='1443'],[data-id='1490'],[data-id='1532'],[data-id='1545'],[data-id='1546'],[data-id='1547'],[data-id='1548'],[data-id='1554'],[data-id='1583'],[data-id='1624'],[data-id='1648'],[data-id='1662'],[data-id='1668'],[data-id='1675'],[data-id='1715'],[data-id='1736'],[data-id='1739'],[data-id='1753'],[data-id='1756'],[data-id='1795'],[data-id='1829'],[data-id='1836'],[data-id='2249'],[data-id='2321'],[data-id='2365'],[data-id='2693'],[data-id='3584'],[data-id='3868'],[data-id='3874'],[data-id='3897'],[data-id='6195'],[data-id='7941'],[data-id='7951'],[data-id='7953']).template--list .maincontent .item__body,body:is([data-id='815'],[data-id='824'],[data-id='833'],[data-id='835'],[data-id='849'],[data-id='850'],[data-id='851'],[data-id='852'],[data-id='853'],[data-id='854'],[data-id='855'],[data-id='867'],[data-id='878'],[data-id='885'],[data-id='893'],[data-id='903'],[data-id='917'],[data-id='927'],[data-id='935'],[data-id='944'],[data-id='954'],[data-id='964'],[data-id='970'],[data-id='985'],[data-id='1010'],[data-id='1031'],[data-id='1049'],[data-id='1057'],[data-id='1098'],[data-id='1112'],[data-id='1114'],[data-id='1143'],[data-id='1254'],[data-id='1270'],[data-id='1271'],[data-id='1282'],[data-id='1290'],[data-id='1304'],[data-id='1313'],[data-id='1321'],[data-id='1326'],[data-id='1338'],[data-id='1432'],[data-id='1443'],[data-id='1490'],[data-id='1532'],[data-id='1545'],[data-id='1546'],[data-id='1547'],[data-id='1548'],[data-id='1554'],[data-id='1583'],[data-id='1624'],[data-id='1648'],[data-id='1662'],[data-id='1668'],[data-id='1675'],[data-id='1715'],[data-id='1736'],[data-id='1739'],[data-id='1753'],[data-id='1756'],[data-id='1795'],[data-id='1829'],[data-id='1836'],[data-id='2249'],[data-id='2321'],[data-id='2365'],[data-id='2693'],[data-id='3584'],[data-id='3868'],[data-id='3874'],[data-id='3897'],[data-id='6195'],[data-id='7941'],[data-id='7951'],[data-id='7953']).template--list .maincontent .a-body,body:is([data-id='815'],[data-id='824'],[data-id='833'],[data-id='835'],[data-id='849'],[data-id='850'],[data-id='851'],[data-id='852'],[data-id='853'],[data-id='854'],[data-id='855'],[data-id='867'],[data-id='878'],[data-id='885'],[data-id='893'],[data-id='903'],[data-id='917'],[data-id='927'],[data-id='935'],[data-id='944'],[data-id='954'],[data-id='964'],[data-id='970'],[data-id='985'],[data-id='1010'],[data-id='1031'],[data-id='1049'],[data-id='1057'],[data-id='1098'],[data-id='1112'],[data-id='1114'],[data-id='1143'],[data-id='1254'],[data-id='1270'],[data-id='1271'],[data-id='1282'],[data-id='1290'],[data-id='1304'],[data-id='1313'],[data-id='1321'],[data-id='1326'],[data-id='1338'],[data-id='1432'],[data-id='1443'],[data-id='1490'],[data-id='1532'],[data-id='1545'],[data-id='1546'],[data-id='1547'],[data-id='1548'],[data-id='1554'],[data-id='1583'],[data-id='1624'],[data-id='1648'],[data-id='1662'],[data-id='1668'],[data-id='1675'],[data-id='1715'],[data-id='1736'],[data-id='1739'],[data-id='1753'],[data-id='1756'],[data-id='1795'],[data-id='1829'],[data-id='1836'],[data-id='2249'],[data-id='2321'],[data-id='2365'],[data-id='2693'],[data-id='3584'],[data-id='3868'],[data-id='3874'],[data-id='3897'],[data-id='6195'],[data-id='7941'],[data-id='7951'],[data-id='7953']).template--list .maincontent .a-intro {
    display: none
}

@media(max-width: 999px) {
    .xn-component xn-timetable-selector ul.timetable-selector {
        border-radius:0
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable-status {
        padding: 20px;
        position: relative;
        top: 10px;
        margin-top: -43px;
        z-index: 22;
        background: #f5f5f5
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker {
        margin-bottom: -32px!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker {
        margin-top: -3px!important
    }

    .xn-component li {
        padding: 0!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable {
        border-bottom: 3px solid white!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event.visible {
        background: #f5f5f5!important;
        padding: 20px 20px!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li {
        border-top: 0!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector .selector .header {
        color: black!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector .selector .header:hover {
        cursor: pointer!important;
        background-color: #dee0e2!important;
        box-shadow: inset 0 0 20em rgba(0,0,0,0.2)!important;
        color: black!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded:after {
        content: "+"!important;
        font-weight: bold!important;
        font-family: sans-serif!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile .timetables:hover .timetable,#timeTableTest .xn-component xn-timetable-selector ul.timetable-selector.mobile .timetables:active .timetable {
        cursor: pointer!important;
        box-shadow: inset 0 0 20em rgba(0,0,0,0.2)!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expand:after,xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded:active {
        font-family: sans-serif!important;
        font-weight: bold!important;
        content: "⨯"!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .prev-day:after {
        font-family: sans-serif!important;
        font-weight: bold!important;
        content: "<"!important;
        height: 100%!important;
        width: 100%!important;
        position: relative!important;
        background: #bbbdc0!important;
        top: -23px!important;
        color: black!important;
        right: 32px!important;
        padding: 22px 25px!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .prev-day:hover:after {
        background: #919395!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .next-day:after {
        font-family: sans-serif!important;
        font-weight: bold!important;
        content: ">"!important;
        height: 100%!important;
        width: 100%!important;
        position: relative!important;
        background: #bbbdc0!important;
        top: -23px!important;
        color: black!important;
        left: 32px!important;
        padding: 22px 25px!important;
        float: right!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .next-day:hover:after {
        background: #919395!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker {
        background: #d0d3d6!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations {
        background: #f0f0f0!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .name {
        color: black!important;
        text-align: left!important;
        margin: 0!important;
        width: 60%!important;
        float: left!important;
        display: inline-block!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .title {
        font-weight: 300!important;
        color: black!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations:hover {
        background: #dcdcdc!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location:hover {
        background: #dcdcdc!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location {
        display: block!important;
        padding: 25px 20px!important;
        width: auto!important;
        background: #e1e1e1!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .expand:after {
        content: "+"!important;
        font-size: 18px!important;
        font-weight: bold!important;
        font-family: sans-serif!important;
        color: black!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .expand {
        height: 30px!important;
        width: 30px!important;
        padding: 5px 9px!important;
        right: 10p!important;
        color: black!important;
        margin-top: -9px!important;
        margin-left: 2px!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .collapse:after {
        font-family: sans-serif!important;
        font-weight: bold!important;
        content: "⨯"!important;
        font-size: 18px!important;
        font-weight: bold!important;
        font-family: sans-serif!important;
        right: 10px!important;
        position: absolute!important;
        left: 275px!important;
        float: right!important;
        color: black!important;
        margin-top: -7px!important;
        margin-left: 84px!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now {
        display: flex!important;
        float: right!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .select:after {
        display: none!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile {
        color: #0b0c0c!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable {
        background: #006851!important;
        color: white!important
    }

    .xn-timetable-component .date-picker {
        margin-top: -2px!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now:before {
        content: "Book now"!important;
        color: white!important;
        background: #004331!important;
        padding: 5px 5px!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now:hover:before {
        cursor: pointer!important;
        box-shadow: inset 0 0 20em rgba(0,0,0,0.2)!important
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now:hover:before {
        background: #0b0c0c!important
    }
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location {
    margin-bottom: 0!important
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li.collapsed .location .name {
    position: relative!important;
    bottom: 10px!important
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .name {
    position: relative;
    bottom: 10px
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header {
    color: black!important
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header:hover {
    background-color: #dee0e2!important;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)!important;
    color: black!important
}

.xn-timetable-component li:hover {
    background-color: #dee0e2!important;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)!important;
    color: black!important
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .name {
    color: white
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .name:hover {
    color: black
}

.xn-component .xn-alert {
    padding: 8px;
    margin: 8px 0;
    border-radius: 3px;
    border: 1px solid #fff;
    width: 100%
}

.xn-component .xn-alert:before {
    font-family: fontAwesome;
    margin-right: 4px
}

.xn-component .xn-alert:empty {
    display: none
}

.xn-component .xn-alert-info {
    background-color: #fff;
    border-color: #cdcdcd;
    color: #324164
}

.xn-component .xn-alert-info:before {
    color: #2196f3;
    content: "ïš"
}

.xn-component .xn-alert-warning {
    background-color: #fff;
    border-color: #cdcdcd;
    color: #324164
}

.xn-component .xn-alert-warning:before {
    color: #2196f3;
    content: "ïš"
}

.xn-component .xn-alert-info,.xn-component .xn-alert-warning {
    padding: 13px 20px 13px 60px;
    border: 0;
    border-radius: 0!important;
    font-size: .875rem!important;
    position: relative
}

.xn-component .xn-alert-info a,.xn-component .xn-alert-warning a {
    border: 0
}

.xn-component .xn-alert-info ul,.xn-component .xn-alert-warning ul {
    margin-top: 10px
}

.xn-component .xn-alert-info:before,.xn-component .xn-alert-warning:before {
    position: absolute;
    top: calc(50% - 15px);
    left: 20px;
    font-size: 1.7rem
}

.xn-component .xn-alert-success {
    background-color: #fff;
    padding: 13px 20px 13px 60px;
    border: 0;
    border-radius: 0!important;
    font-size: .875rem!important;
    position: relative
}

.xn-component .xn-alert-success a {
    border: 0
}

.xn-component .xn-alert-success ul {
    margin-top: 10px
}

.xn-component .xn-alert-success:before {
    content: "ï˜";
    position: absolute;
    top: calc(50% - 15px);
    left: 20px;
    font-size: 1.7rem
}

.xn-component .xn-alert-danger {
    background-color: #f44336;
    color: #fff;
    width: 100%;
    padding: 13px 20px 13px 60px;
    border: 0;
    border-radius: 0!important;
    font-size: .875rem!important;
    position: relative;
    margin-bottom: 10px
}

.xn-component .xn-alert-danger a {
    font-weight: 800
}

.xn-component .xn-alert-danger ul {
    margin-top: 10px
}

.xn-component .xn-alert-danger:before {
    position: absolute;
    top: calc(50% - 14px);
    left: 20px;
    font-size: 1rem;
    border-radius: 50%;
    padding: 4px;
    content: "ï±"
}

@-webkit-keyframes xn-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes xn-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

.xn-component .xn-delete:before {
    font-family: fontAwesome;
    content: "ï‡¸";
    color: #46484a
}

.xn-component .xn-basket:before {
    font-family: fontAwesome;
    content: "ïŠ‘"
}

.xn-component .xn-info:before {
    font-family: fontAwesome;
    content: "ïš"
}

.xn-component .xn-view:before {
    font-family: fontAwesome;
    content: "ï€‚"
}

.xn-component .xn-cancel:before {
    font-family: fontAwesome;
    content: "ï€";
    color: #ea0001
}

.xn-component .xn-pdf:after {
    content: "ï‡"
}

.xn-component .xn-pdf:after,.xn-component .xn-word:after {
    font-family: fontAwesome;
    margin-left: 8px
}

.xn-component .xn-word:after {
    content: "ï‡‚"
}

.xn-component .xn-text:after {
    content: "ïƒ¶"
}

.xn-component .xn-text:after,.xn-component .xn-zip:after {
    font-family: fontAwesome;
    margin-left: 8px
}

.xn-component .xn-zip:after {
    content: "ï‡†"
}

.xn-component .xn-file:after {
    content: "ï€–"
}

.xn-component .xn-file:after,.xn-component .xn-html-asset:after {
    font-family: fontAwesome;
    margin-left: 8px
}

.xn-component .xn-html-asset:after {
    content: "ï„¡"
}

.xn-component .xn-external-link:after {
    font-family: fontAwesome;
    content: "ï‚Ž";
    margin-left: 8px
}

.xn-component .xn-help:after {
    font-family: fontAwesome;
    content: "ï™";
    margin-left: 4px;
    color: #2196f3;
    cursor: help
}

.xn-component .xn-loading-icon {
    display: inline-block;
    -webkit-animation: xn-spin 2s linear infinite;
    animation: xn-spin 2s linear infinite
}

.xn-component .xn-loading-icon:before {
    font-family: fontAwesome;
    content: "ï‡Ž"
}

.xn-component .xn-plain-text {
    padding: 0 16px;
    font-weight: 400;
    font-size: .875rem
}

.xn-component .xn-button {
    display: block;
    background-color: #949494;
    color: #fff;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-radius: 35px;
    text-align: center;
    cursor: pointer;
    width: auto
}

.xn-component .xn-button:hover {
    background-color: #7b7b7b
}

.xn-component .xn-button:hover.xn-mute {
    background-color: #aeaeae;
    color: #fff;
    border: 1px solid #aeaeae
}

.xn-component .xn-button.xn-mute {
    background-color: #fff;
    color: #949494;
    border: 1px solid #949494
}

.xn-component .xn-button.xn-cta {
    display: block;
    color: #fff;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-radius: 35px;
    text-align: center;
    cursor: pointer;
    width: auto
}

.xn-component .xn-button.xn-cta:hover {
    background-color: #b9420b
}

.xn-component .xn-button.xn-cta:hover.xn-mute {
    background-color: #f37237;
    color: #fff;
    border: 1px solid #f37237
}

.xn-component .xn-button.xn-cta.xn-mute {
    background-color: #fff;
    color: #e9530e;
    border: 1px solid #e9530e
}

.xn-component .xn-button.xn-primary {
    display: block;
    background-color: #2196f3;
    color: #fff;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-radius: 35px;
    text-align: center;
    cursor: pointer;
    width: auto
}

.xn-component .xn-button.xn-primary:hover {
    background-color: #0c7cd5
}

.xn-component .xn-button.xn-primary:hover.xn-mute {
    background-color: #51adf6;
    color: #fff;
    border: 1px solid #51adf6
}

.xn-component .xn-button.xn-primary.xn-mute {
    background-color: #fff;
    color: #2196f3;
    border: 1px solid #2196f3
}

.xn-component .xn-button.xn-secondary {
    display: block;
    background-color: #009688;
    color: #fff;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-radius: 35px;
    text-align: center;
    cursor: pointer;
    width: auto
}

.xn-component .xn-button.xn-secondary:hover {
    background-color: #00635a
}

.xn-component .xn-button.xn-secondary:hover.xn-mute {
    background-color: #00c9b6;
    color: #fff;
    border: 1px solid #00c9b6
}

.xn-component .xn-button.xn-secondary.xn-mute {
    background-color: #fff;
    color: #009688;
    border: 1px solid #009688
}

.xn-component .xn-button.xn-danger {
    display: block;
    background-color: #f44336;
    color: #fff;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-radius: 35px;
    text-align: center;
    cursor: pointer;
    width: auto
}

.xn-component .xn-button.xn-danger:hover {
    background-color: #ea1c0d
}

.xn-component .xn-button.xn-danger:hover.xn-mute {
    background-color: #f77066;
    color: #fff;
    border: 1px solid #f77066
}

.xn-component .xn-button.xn-danger.xn-mute {
    background-color: #fff;
    color: #f44336;
    border: 1px solid #f44336
}

.xn-component .xn-button.xn-success {
    display: block;
    background-color: #008e33;
    color: #fff;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-radius: 35px;
    text-align: center;
    cursor: pointer;
    width: auto
}

.xn-component .xn-button.xn-success:hover {
    background-color: #005b21
}

.xn-component .xn-button.xn-success:hover.xn-mute {
    background-color: #00c145;
    color: #fff;
    border: 1px solid #00c145
}

.xn-component .xn-button.xn-success.xn-mute {
    background-color: #fff;
    color: #008e33;
    border: 1px solid #008e33
}

.xn-component .xn-button.xn-select {
    display: block;
    background-color: #2196f3;
    color: #fff;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-radius: 35px;
    text-align: center;
    cursor: pointer;
    width: auto
}

.xn-component .xn-button.xn-select:hover {
    background-color: #0c7cd5
}

.xn-component .xn-button.xn-select:hover.xn-mute {
    background-color: #51adf6;
    color: #fff;
    border: 1px solid #51adf6
}

.xn-component .xn-button.xn-select.xn-mute {
    background-color: #fff;
    color: #2196f3;
    border: 1px solid #2196f3
}

.xn-component .xn-button.xn-select.xn-selected {
    background-color: #008e33;
    border-color: #008e33
}

.xn-component .xn-button.xn-select.xn-selected:after {
    font-family: fontAwesome;
    content: "ï€Œ";
    margin-left: 4px
}

.xn-component .xn-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    padding: 8px 0 0;
    justify-content: flex-end
}

.xn-component .xn-buttons .xn-button {
    margin-left: 8px
}

.xn-component .xn-buttons .xn-button:first-child {
    margin-left: 0
}

.xn-component .xn-buttons .xn-button:last-child {
    margin-right: 0
}

.xn-component td .xn-button {
    margin: 0!important
}

.xn-component .xn-button:disabled {
    background-color: grey
}

.xn-component .xn-button:disabled:hover {
    background-color: grey;
    cursor: not-allowed
}

.xn-component a.xn-button:hover {
    text-decoration: none
}

@media(max-width: 767px) {
    .xn-component .xn-buttons,.xn-buttons .xn-button {
        width:100%
    }
}

.xn-component xn-card-component {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto
}

.xn-component xn-card-component,xn-card-component .xn-card {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

.xn-component xn-card-component .xn-card {
    background-color: #2d393b;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    color: #fff;
    border-radius: 3px;
    margin: 8px;
    position: relative
}

.xn-component xn-card-component .xn-card .xn-heading {
    font-weight: 400;
    font-size: 1.1rem;
    padding: 16px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #fff;
    margin-bottom: 0;
    display: block;
    width: 100%;
    background-color: #222b2d;
    text-align: center;
    -webkit-flex-shrink: 0;
    flex-shrink: 0
}

.xn-component xn-card-component .xn-card .xn-image {
    overflow: hidden;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100px;
    flex: 0 0 100px;
    box-shadow: inset 0 -10px 16px -4px rgba(0,0,0,.75);
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    order: -1;
    border-radius: 3px 3px 0 0;
    background-color: #e9530e;
    background-image: url(kettle-bells.b8f41b95.jpeg);
    background-size: cover;
    background-position: 50%
}

.xn-component xn-card-component .xn-card .xn-image.xn-pool-closed {
    background-image: url(swimming.81a7f168.jpeg)
}

.xn-component xn-card-component .xn-card .xn-image.xn-img-football {
    background-image: url(football.352eec83.jpeg)
}

.xn-component xn-card-component .xn-card .xn-image.xn-img-swimming {
    background-image: url(swimming.81a7f168.jpeg)
}

.xn-component xn-card-component .xn-card .xn-image.xn-img-tennis {
    background-image: url(tennis.0b9a90d2.jpeg)
}

.xn-component xn-card-component .xn-card .xn-image.xn-img-badminton {
    background-image: url(badminton.e75c48b7.jpeg)
}

.xn-component xn-card-component .xn-card .xn-image.xn-img-gym {
    background-image: url(gym.7e5ef855.jpeg)
}

.xn-component xn-card-component .xn-card .xn-content {
    -webkit-flex-shrink: 0;
    flex-shrink: 0
}

.xn-component xn-card-component .xn-card .xn-content p {
    margin: 0
}

.xn-component xn-card-component .xn-card .xn-content p+p {
    margin-top: 1rem
}

.xn-component xn-card-component .xn-card .xn-buttons {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component xn-card-component .xn-card .xn-buttons .xn-button {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%;
    margin: 0 0 16px
}

.xn-component xn-card-component .xn-card .xn-buttons .xn-button:last-child {
    margin-bottom: 0
}

.xn-component xn-card-component .xn-card>:not(.xn-heading) {
    padding: 16px 16px 0
}

.xn-component xn-card-component .xn-card>:not(.xn-heading):last-child {
    margin-top: auto;
    padding-bottom: 16px
}

.xn-component xn-card-component .xn-card .xn-alerts {
    padding-top: 0
}

.xn-component xn-card-component .xn-card .xn-alert {
    margin: auto 0 0;
    width: auto
}

.xn-component xn-card-component .xn-card.xn-selected .xn-image {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
}

.xn-component xn-card-component .xn-card.xn-selected>* {
    background-color: #e9530e
}

.xn-component .xn-help {
    position: relative
}

@media(max-width: 1024px) {
    .xn-component .xn-help:active:before,.xn-component .xn-help:hover:before {
        position:fixed;
        content: attr(title);
        top: 30%;
        left: 15%;
        width: 70%;
        background: #fff;
        z-index: 1000;
        padding: 8px;
        font-weight: 300;
        text-transform: none;
        background-color: #d1ecf1;
        border: 1px solid #bee5eb;
        color: #0c5460;
        box-shadow: 10px 10px 20px -6px rgba(0,0,0,.75)
    }
}

.xn-component .xn-help:hover {
    cursor: help
}

.xn-component ul.xn-grid {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    list-style-type: none;
    padding: 0
}

.xn-component ul.xn-grid li.xn-header {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%;
    font-size: 14px;
    text-transform: uppercase;
    padding: 8px 0 0;
    font-weight: 600
}

.xn-component ul.xn-grid>li {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    display: -webkit-flex;
    dispaly: flex;
    overflow: hidden
}

.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-1>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-2>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-3>li {
    width: 100%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-4>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-5>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-6>li {
    width: 50%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

@media(max-width: 1024px) {
    .xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-1>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-2>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-3>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-4>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-5>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-6>li {
        width:100%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

@media(max-width: 767px) {
    .xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-1>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-2>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-3>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-4>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-5>li,.xn-component .xn-tile.xn-small ul.xn-grid.xn-grid-6>li {
        width:100%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-1>li {
    width: 100%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-2>li {
    width: 50%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-3>li {
    width: 33.33333%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-4>li {
    width: 25%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-5>li {
    width: 20%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-6>li {
    width: 16.66667%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

@media(max-width: 1024px) {
    .xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-1>li {
        width:100%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }

    .xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-2>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-3>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-4>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-5>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-6>li {
        width: 50%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

@media(max-width: 767px) {
    .xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-1>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-2>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-3>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-4>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-5>li,.xn-component .xn-tile.xn-medium ul.xn-grid.xn-grid-6>li {
        width:100%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-1>li {
    width: 100%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-2>li {
    width: 50%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-3>li {
    width: 33.33333%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-4>li {
    width: 25%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-5>li {
    width: 20%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-6>li {
    width: 16.66667%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}

@media(max-width: 1024px) {
    .xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-1>li {
        width:100%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }

    .xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-2>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-3>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-4>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-5>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-6>li {
        width: 50%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

@media(max-width: 767px) {
    .xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-1>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-2>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-3>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-4>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-5>li,.xn-component .xn-tile.xn-large ul.xn-grid.xn-grid-6>li {
        width:100%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

.xn-component ul.xn-links {
    list-style: none;
    padding: 0;
    margin: 0 16px
}

.xn-component ul.xn-links li {
    padding: 4px 0
}

.xn-component .xn-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0,0,0,.5);
    z-index: 20
}

.xn-component .xn-modal.xn-visible {
    display: block
}

.xn-component .xn-modal h2 {
    color: #e9530e
}

.xn-component .xn-modal.xn-modal-large>.xn-content {
    width: 700px
}

@media(max-width: 767px) {
    .xn-component .xn-modal.xn-modal-large>.xn-content,.xn-component .xn-modal.xn-modal-small>.xn-content {
        width:100%
    }
}

.xn-component .xn-modal>.xn-content {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 500px;
    background-color: #fff;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    padding: 16px;
    margin-top: 22px;
    max-height: -webkit-calc(100% - 86px);
    max-height: calc(100% - 86px);
    box-shadow: none;
    border-radius: 0!important
}

.xn-component .xn-modal>.xn-content .xn-header {
    padding: 0;
    color: #e9530e;
    font-size: 1.4rem
}

.xn-component .xn-modal>.xn-content .xn-header,.xn-component .xn-modal>.xn-content h2 {
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0;
    padding: 0 0 16px;
    width: 100%
}

.xn-component .xn-modal>.xn-content .xn-detail {
    overflow-y: auto;
    max-height: -webkit-calc(100vh - 190px);
    max-height: calc(100vh - 190px);
    padding-top: 16px;
    margin: 0 0 16px;
    font-size: .875rem
}

.xn-component .xn-modal>.xn-content .xn-detail p,.xn-component .xn-modal>.xn-content .xn-detail ul li {
    margin-bottom: 10px
}

.xn-component .xn-modal>.xn-content .xn-detail .xn-buttons {
    margin: 0;
    justify-content: center
}

.xn-component .xn-modal>.xn-content .xn-detail .xn-buttons .xn-button {
    display: inline-block;
    margin: 30px 0 0 15px;
    padding: 11px 40px;
    border: none!important;
    font-weight: 400;
    font-size: .95625rem;
    min-width: 150px;
    text-align: center
}

.xn-component .xn-modal>.xn-content .xn-detail .xn-buttons .xn-button.xn-mute {
    padding: 10px 39px
}

@media(max-width: 767px) {
    .xn-component .xn-modal>.xn-content .xn-detail {
        overflow-y:visible
    }
}

.xn-component .xn-modal>.xn-content .xn-close,.xn-component .xn-modal>.xn-content+.xn-close {
    height: 14px;
    width: 14px;
    text-align: center
}

.xn-component .xn-modal>.xn-content .xn-close:before,.xn-component .xn-modal>.xn-content+.xn-close:before {
    display: inline-block;
    font-size: .7rem;
    vertical-align: 3px
}

.xn-component .xn-modal>.xn-content .xn-header+p+.xn-detail {
    max-height: -webkit-calc(100vh - 240px);
    max-height: calc(100vh - 240px)
}

@media(max-width: 767px) {
    .xn-component .xn-modal>.xn-content {
        width:100%;
        height: 100%;
        max-height: 100%;
        border-radius: 0;
        overflow-y: auto;
        margin: 0
    }
}

.xn-component .xn-modal .xn-close {
    position: absolute;
    top: 12px;
    right: 16px;
    border: 0
}

.xn-component .xn-modal .xn-close:before {
    font-family: fontAwesome;
    content: "ï€";
    font-size: 1.2rem
}

.xn-component .xn-modal .xn-close:hover {
    cursor: pointer
}

.xn-component table:not(.xn-qr-code) {
    table-layout: fixed;
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 8px
}

.xn-component table:not(.xn-qr-code) td,table:not(.xn-qr-code) th {
    text-align: left;
    padding: 8px
}

.xn-component table:not(.xn-qr-code) td.xn-align-right,table:not(.xn-qr-code) th.xn-align-right {
    text-align: right
}

.xn-component table:not(.xn-qr-code) td.xn-align-center,table:not(.xn-qr-code) th.xn-align-center {
    text-align: center
}

.xn-component table:not(.xn-qr-code) td .xn-button,table:not(.xn-qr-code) th .xn-button {
    display: block;
    padding: 2px 8px;
    margin-top: 4px
}

.xn-component table:not(.xn-qr-code) td .xn-date,table:not(.xn-qr-code) th .xn-date {
    white-space: nowrap
}

.xn-component table:not(.xn-qr-code) td .xn-time:before,table:not(.xn-qr-code) th .xn-time:before {
    content: " - "
}

.xn-component table:not(.xn-qr-code) th {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700
}

.xn-component table:not(.xn-qr-code) tbody tr,table:not(.xn-qr-code) th {
    border-bottom: 1px solid #cdcdcd
}

.xn-component table:not(.xn-qr-code) tbody tr:last-child {
    border-bottom: 0
}

.xn-component table:not(.xn-qr-code) tbody tr td.xn-actions a {
    line-height: 1.15
}

.xn-component table:not(.xn-qr-code) tbody tr.xn-overdue td:first-child:before {
    font-family: fontAwesome;
    content: "ï„ª";
    margin-right: 4px
}

.xn-component table:not(.xn-qr-code) tbody tr:nth-child(2n) {
    background-color: #eee;
    color: #555
}

.xn-component table:not(.xn-qr-code) tfoot tr td {
    border-top: 1px solid #cdcdcd
}

.xn-component table:not(.xn-qr-code) tfoot tr td .xn-total {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    margin-right: 8px
}

.xn-component table:not(.xn-qr-code) td .xn-button {
    display: inline-block;
    white-space: nowrap
}

.xn-component table:not(.xn-qr-code) .xn-sortable-header {
    cursor: pointer
}

.xn-component table:not(.xn-qr-code) .xn-sortable-header:after {
    font-family: fontAwesome;
    content: "ïƒœ";
    margin-left: 8px
}

.xn-component table:not(.xn-qr-code) .xn-sortable-header.xn-sort-desc:after {
    content: "ïƒ"
}

.xn-component table:not(.xn-qr-code) .xn-sortable-header.xn-sort-asc:after {
    content: "ïƒž"
}

.xn-component .xn-read-only {
    font-size: 18px
}

.xn-component .xn-input-group,.xn-component .xn-option-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-bottom: 12px
}

.xn-component .xn-input-group label,.xn-component .xn-option-group label {
    display: block;
    font-weight: 400;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    font-size: 1rem;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 0;
    text-transform: none
}

.xn-component .xn-input-group.xn-required label,.xn-component .xn-option-group.xn-required label {
    -webkit-flex-basis: auto;
    flex-basis: auto
}

.xn-component .xn-input-group.xn-required .xn-required-text,.xn-component .xn-option-group.xn-required .xn-required-text {
    color: transparent!important;
    font-size: 1px!important;
    padding-top: 10px
}

.xn-component .xn-input-group.xn-required .xn-required-text:before,.xn-component .xn-option-group.xn-required .xn-required-text:before {
    content: "*";
    font-size: 1.25rem
}

.xn-component .xn-input-group.xn-required span.xn-required-text,.xn-component .xn-option-group.xn-required span.xn-required-text {
    text-transform: uppercase;
    white-space: nowrap;
    margin-left: 4px
}

.xn-component .xn-input-group.xn-required .xn-options,.xn-component .xn-option-group.xn-required .xn-options {
    -webkit-flex-basis: 100%;
    flex-basis: 100%
}

.xn-component .xn-input-group .xn-inputs,.xn-component .xn-option-group .xn-inputs {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    -webkit-align-self: flex-end;
    align-self: flex-end;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

@media(max-width: 767px) {
    .xn-input-group .xn-inputs,.xn-component .xn-option-group .xn-inputs {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap
    }
}

.xn-component .xn-option-group label {
    margin-bottom: 8px
}

.xn-component .xn-option-group.xn-required label {
    -webkit-flex-basis: auto;
    flex-basis: auto
}

.xn-component .xn-option-group.xn-required span.xn-required-text {
    text-align: left;
    margin-left: 8px;
    -webkit-flex-basis: auto;
    flex-basis: auto
}

.xn-component .xn-validation-error,.xn-component .xn-validation-message {
    width: 100%;
    padding: 13px 20px 13px 60px;
    background-color: #ff5152;
    color: #fff;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    border: 0;
    border-radius: 0!important;
    font-size: .875rem!important;
    position: relative;
    margin: 8px 0 10px
}

.xn-component .xn-validation-error a,.xn-component .xn-validation-message a {
    font-weight: 800
}

.xn-component .xn-validation-error:before,.xn-component .xn-validation-message:before {
    font-family: fontAwesome;
    content: "ï±";
    margin-right: 4px;
    position: absolute;
    top: calc(50% - 13px);
    left: 20px;
    font-size: 1rem;
    border-radius: 50%;
    padding: 6px
}

.xn-component .xn-guidance {
    padding: 13px 20px 13px 60px;
    border: 0;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    margin: 8px 0;
    border-radius: 0!important;
    font-size: .875rem!important;
    position: relative
}

.xn-component .xn-guidance a {
    border: 0
}

.xn-component .xn-guidance:before {
    position: absolute;
    top: calc(50% - 13px);
    left: 20px;
    font-size: 1.7rem
}

.xn-component .xn-guidance+input[type=checkbox]+input+label,.xn-component .xn-guidance+input[type=checkbox]+label {
    margin-top: 10px
}

.xn-component .xn-instructions {
    margin: 0 16px
}

.xn-component .xn-form-links-list {
    margin: 0
}

.xn-component .xn-form-links-list ul {
    list-style-type: none;
    margin: 20px 0 0;
    padding: 0
}

.xn-component .xn-form-links-list ul li {
    margin: 8px 0
}

.xn-component .xn-form-links-list ul li a {
    font-size: 14px
}

.xn-component .xn-option-group {
    margin-top: 4px
}

.xn-component .xn-option-group label {
    float: none
}

.xn-component .xn-options.xn-inline {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component .xn-options.xn-inline label {
    max-width: 25%;
    word-wrap: break-word;
    padding-right: 8px
}

@media(max-width: 1024px) {
    .xn-options.xn-inline label {
        max-width:33%
    }
}

@media(max-width: 767px) {
    .xn-options.xn-inline label {
        max-width:100%
    }
}

.xn-component .xn-border {
    border: 1px solid #cdcdcd;
    padding: 8px
}

.xn-component .xn-tile.xn-small form .xn-options.xn-inline label {
    max-width: 100%
}

.xn-component .xn-tile.xn-small .xn-input-group .xn-inputs {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    max-width: 100%
}

.xn-component input:not([type=checkbox]):not([type=radio]),select,textarea {
    font-size: 18px;
    width: 100%;
    padding: 8px;
    border: 1px solid #bbb;
    border-radius: 3px
}

.xn-component select {
    padding: 6px 8px
}

.xn-component .xn-brand-header {
    display: block;
    box-shadow: none;
    position: sticky;
    top: -26px;
    z-index: 8;
    border: 0
}

.xn-component .xn-brand-header .xn-brand-header-content {
    display: flex;
    width: 1184px;
    margin: 0 auto;
    border-bottom: 0;
    height: 80px;
    padding: 0;
    align-items: center
}

.xn-component .xn-brand-header .xn-brand-header-content:hover {
    border-bottom: 0
}

.xn-component .xn-brand-header .xn-brand-header-content .xn-icon-logo {
    width: 100px;
    margin-left: 20px;
    flex: 0 0 auto
}

@media(max-width: 767px) {
    .xn-brand-header .xn-brand-header-content .xn-icon-logo {
        margin:0 8px;
        height: 36px
    }
}

@media screen and (max-width: 767px) {
    .xn-brand-header .xn-brand-header-content .xn-icon-logo {
        margin-top:12px;
        margin-right: 24px
    }
}

.xn-component .xn-brand-header .xn-brand-header-content .xn-brand-header-title {
    flex: 1 1 auto;
    text-align: center;
    font-size: 1.3rem;
    padding-top: 10px;
    margin-right: 120px;
    display: block;
    font-weight: 700
}

@media(max-width: 767px) {
    .xn-brand-header .xn-brand-header-content {
        padding:10px 0
    }
}

@media(max-width: 1200px) {
    .xn-brand-header .xn-brand-header-content {
        width:100%
    }
}

@media screen and (max-width: 767px) {
    .xn-brand-header {
        display:none
    }
}

@media(max-width: 767px) {
    .xn-brand-header {
        margin-top:0;
        height: 54px
    }
}

.xn-component .xn-header {
    width: 1184px;
    margin: 0 auto;
    padding: 40px 16px 16px;
    position: relative
}

.xn-component .xn-header .xn-title {
    font-size: 1.6875rem;
    font-weight: 700;
    padding: 0 3px
}

.xn-component .xn-header .xn-heading-text {
    padding: 15px 0 0 3px;
    font-size: 1rem;
    color: #46484a;
    font-weight: 400
}

.xn-component .xn-header .xn-underline {
    display: none
}

@media(max-width: 1200px) {
    .xn-header {
        width:100%;
        margin: 0
    }

    .xn-header .xn-title {
        padding: 0
    }
}

.xn-component .xn-header .xn-required-message {
    text-align: right;
    margin-bottom: 8px;
    position: absolute;
    top: 50px;
    right: 16px;
    font-size: .875rem;
    font-weight: 400
}

@media screen and (max-width: 767px) {
    .xn-header .xn-required-message {
        position:relative;
        top: auto;
        right: auto;
        padding-top: 20px
    }
}

.xn-component .xn-header .xn-required-message:before {
    font-size: .875rem;
    font-weight: 400;
    display: inline-block;
    content: "*";
    margin-right: 4px;
    vertical-align: top
}

@media(max-width: 1024px) {
    .xn-header {
        display:block
    }
}

.xn-component .xn-auth-header {
    height: 120px;
    background-color: #e9530e;
    margin-top: 60px;
    display: block
}

.xn-component .xn-auth-header .xn-header-logo {
    display: block;
    width: 1184px;
    margin: 20px auto;
    padding-top: 26px
}

.xn-component .xn-auth-header .xn-header-logo .xn-icon-logo {
    width: 120px;
    height: 63px;
    fill: #fff
}

@media(max-width: 1200px) {
    .xn-auth-header .xn-header-logo {
        width:100%;
        padding: 0;
        margin: 20px 0
    }
}

.xn-component .xn-container {
    width: 1184px;
    margin: 0 auto;
    padding: 4px;
    -webkit-box-orient: horizontal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component .xn-container,.xn-component .xn-container .xn-tile {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    background-color: #fff;
    -webkit-box-direction: normal
}

.xn-component .xn-container .xn-tile {
    -webkit-box-orient: vertical;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-box-flex: 100%;
    -webkit-flex: 100%;
    flex: 100%;
    width: 100%;
    max-width: 100%
}

@media(max-width: 1200px) {
    .xn-container {
        width:100%;
        padding: 0;
        margin: 0
    }
}

.xn-component .xn-container .xn-tile.xn-small {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto
}

@media(max-width: 1024px) {
    .xn-container .xn-tile.xn-small {
        width:40%;
        max-width: 40%
    }
}

@media(max-width: 767px) {
    .xn-container .xn-tile.xn-small {
        width:100%;
        max-width: 100%
    }
}

.xn-component .xn-container .xn-tile.xn-medium {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto
}

@media(max-width: 1024px) {
    .xn-container .xn-tile.xn-medium {
        width:60%;
        max-width: 60%
    }
}

@media(max-width: 767px) {
    .xn-container .xn-tile.xn-medium {
        width:100%;
        max-width: 100%
    }
}

.xn-component .xn-container .xn-tile .xn-payment-error {
    margin-left: 16px
}

.xn-component .xn-navbar {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    background-color: #2d393b;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 9;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    min-height: 54px;
    padding: 0 8px
}

.xn-component .xn-navbar a.xn-navbar-brand {
    display: block;
    line-height: 2.3
}

.xn-component .xn-navbar .xn-navbar-brand {
    color: #fff;
    padding: 0 16px;
    border-radius: 3px;
    border: 0;
    height: 100%;
    cursor: pointer
}

@media(max-width: 370px) {
    .xn-navbar .xn-navbar-brand {
        font-size:0
    }
}

.xn-component .xn-navbar .xn-navbar-brand:before {
    font-family: FontAwesome;
    content: "ï€•";
    margin-right: 4px
}

@media(max-width: 370px) {
    .xn-navbar .xn-navbar-brand:before {
        margin-right:0;
        font-size: 1rem
    }
}

.xn-component .xn-navbar .xn-navbar-brand:hover {
    text-decoration: none
}

.xn-component .xn-navbar .xn-component:nth-child(2) {
    margin-left: auto
}

.xn-component .xn-navbar form {
    background: 0;
    height: 100%
}

.xn-component .xn-navbar form .xn-button {
    margin: 0;
    height: 38px
}

.xn-component .xn-navbar xn-homebutton-component {
    height: 100%;
    vertical-align: middle
}

.xn-component .xn-navbar xn-homebutton-component form {
    margin-bottom: 0
}

.xn-component .xn-navbar xn-homebutton-component .xn-navbar-brand {
    font-size: 1px;
    color: transparent;
    background: 0 0!important;
    padding: 0;
    margin: 0 0 0 12px;
    vertical-align: middle
}

.xn-component .xn-navbar xn-homebutton-component .xn-navbar-brand:before {
    vertical-align: 2px;
    font-size: 1.4rem;
    color: #fff;
    margin-right: 0
}

.xn-component .xn-navbar xn-logincontrol-component button {
    font-size: 1.125rem;
    color: #fff;
    background: 0 0!important;
    padding: 0;
    margin: 3px 0 0;
    vertical-align: middle
}

.xn-component .xn-navbar xn-logincontrol-component button:before {
    font-family: FontAwesome;
    content: "ï€‡";
    margin-right: 8px;
    vertical-align: 0;
    color: #fff
}

.xn-component .xn-navbar #xn-basket-summary .xn-component {
    height: 100%
}

.xn-component nav.xn-navbar {
    padding: 8px
}

.xn-component nav.xn-navbar xn-homebutton-component .xn-navbar-brand:before {
    line-height: 20px;
    padding-top: 8px;
    display: block
}

.xn-component .xn-no-print {
    display: none
}

.xn-component xn-advantagereceipt-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-advantagereceipt-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-advantagereceipt-component .xn-heading,xn-advantagereceipt-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-advantagereceipt-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-advantagereceipt-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-advantagereceipt-component receipt {
    display: block;
    margin: auto;
    padding: 16px
}

.xn-component xn-advantagereceipt-component receipt div {
    margin-bottom: 8px;
    width: 100%
}

.xn-component xn-advantagereceipt-component br+.xn-left {
    margin-left: 0
}

.xn-component xn-advantagereceipt-component .xn-centre {
    display: block;
    text-align: center
}

.xn-component xn-advantagereceipt-component .xn-underline {
    text-decoration: underline
}

.xn-component xn-advantagereceipt-component .xn-bold {
    font-weight: 700
}

.xn-component xn-advantagereceipt-component .xn-left {
    vertical-align: top;
    white-space: nowrap;
    margin: 0 4px
}

.xn-component xn-advantagereceipt-component .xn-right {
    display: block;
    float: right
}

.xn-component xn-advantagereceipt-component .xn-box {
    display: inline-block;
    margin-right: 8px
}

.xn-component xn-advantagereceipt-component .xn-font-20 {
    font-size: 20px
}

.xn-component xn-advantagereceipt-component .xn-font-15 {
    font-size: 15px
}

.xn-component xn-advantagereceipt-component .xn-font-10 {
    font-size: 12px;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

.xn-component xn-advantagereceipt-component .xn-font-10 .xn-right {
    margin-left: auto
}

.xn-component xn-advantagereceipt-component .xn-font-10>.xn-left {
    margin-left: 0
}

.xn-component xn-basketdetails-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-basketdetails-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-basketdetails-component .xn-heading,xn-basketdetails-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-basketdetails-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-basketdetails-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-basketdetails-component .xn-heading {
    display: none
}

.xn-component xn-basketdetails-component .xn-for-person {
    font-weight: 400
}

.xn-component xn-basketdetails-component #xn-promotionCode-group a {
    display: inline-block
}

.xn-component xn-basketdetails-component #xn-promotionCode-group input {
    width: auto
}

.xn-component xn-basketdetails-component #xn-promotionCode-group input[type=text] {
    display: inline-block;
    vertical-align: 0;
    border-radius: 0!important;
    height: 36px;
    padding: 0 20px;
    font-size: 1.06rem
}

.xn-component xn-basketdetails-component #xn-promotionCode-group label {
    font-size: 1.25rem;
    font-weight: 700;
    padding-bottom: 20px
}

.xn-component xn-basketdetails-component #xn-promotionCode-group .xn-button {
    vertical-align: 3px;
    display: inline-block;
    padding: 5px 20px;
    border: none!important;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    width: 182px
}

.xn-component xn-basketdetails-component .xn-items {
    margin-bottom: 0;
    margin-top: 25px
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) {
    border-top: 1px solid #cdcdcd
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer):first-of-type {
    border-top: 0
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description {
    font-weight: 700;
    font-size: 1.25rem;
    padding: 15px 0;
    max-width: 90%;
    margin-top: 10px
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description:after {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    margin-top: 15px
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost {
    font-weight: 700;
    font-size: 1.25rem;
    padding: 15px 0
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost:after {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    margin-top: 15px
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-actions {
    font-size: 1rem;
    padding: 15px 0
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-actions:after {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    margin-top: 15px
}

.xn-component xn-basketdetails-component .xn-items tbody tr.xn-membership-breakdown td {
    font-weight: 400!important;
    font-size: 1rem!important;
    padding: 5px 0!important;
    font-style: normal!important
}

.xn-component xn-basketdetails-component .xn-items tbody tr.xn-membership-breakdown td:first-child {
    padding: 5px 0!important
}

.xn-component xn-basketdetails-component .xn-items tbody tr.xn-membership-breakdown.xn-caveat td {
    font-size: .875rem!important;
    padding: 15px 0!important
}

.xn-component xn-basketdetails-component .xn-items tbody tr.xn-spacer {
    border-top: 0
}

.xn-component xn-basketdetails-component .xn-items tbody tr.xn-spacer td {
    padding: 4px
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tbody tr {
    border-bottom: 0
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tbody tr td {
    background-color: #fff
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tbody tr td.xn-cost {
    text-align: right;
    vertical-align: bottom;
    font-weight: 700
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tbody tr td.xn-additional {
    width: 32px;
    text-align: right;
    vertical-align: bottom
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tbody tr td.xn-additional .xn-pay-today-link:before {
    font-family: fontAwesome;
    content: "ïš";
    cursor: pointer;
    color: #2196f3
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tbody tr td.xn-actions {
    width: 32px;
    text-align: right;
    vertical-align: bottom
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tbody tr.xn-membership-breakdown {
    border-bottom: 0;
    font-size: 12px
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr {
    border-top: 0
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr td:last-of-type {
    border-top: 0;
    padding: 0 0 15px!important;
    vertical-align: top
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr td:last-of-type:before {
    display: block;
    content: "";
    height: 5px;
    width: 100%;
    margin-bottom: 15px
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr td {
    font-weight: 700;
    font-size: 18px;
    border-top: 2px solid #000
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr td.xn-total-text {
    font-weight: 700;
    font-size: 1.275rem;
    border-top: 0;
    padding: 0 0 15px
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr td.xn-total-text:before {
    display: block;
    content: "";
    height: 5px;
    width: 100%;
    margin-bottom: 15px
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr td.xn-total {
    text-align: right;
    font-weight: 700;
    font-size: 1.275rem;
    border-top: 0;
    padding: 0 0 15px
}

.xn-component xn-basketdetails-component table:not(.xn-qr-code) tfoot tr td.xn-total:before {
    display: block;
    content: "";
    height: 5px;
    width: 100%;
    margin-bottom: 15px
}

.xn-component xn-basketcheckout-component {
    display: block;
    background-color: #fff;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-basketcheckout-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-basketcheckout-component .xn-heading,xn-basketcheckout-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-basketcheckout-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-basketcheckout-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-basketsummary-component,xn-basketsummarytest-component {
    display: block;
    background-color: #fff;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 0;
    color: #000;
    display: inline-block;
    width: 114px;
    margin: 0 0 0 8px;
    height: 54px;
    top: 0;
    right: 0;
    background: 0;
    box-shadow: none;
    position: fixed;
    z-index: 1000
}

.xn-component xn-basketsummary-component .image,xn-basketsummarytest-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-basketsummary-component .xn-heading,xn-basketsummary-component legend,xn-basketsummarytest-component .xn-heading,xn-basketsummarytest-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-basketsummary-component>xn-card-component .xn-card,xn-basketsummarytest-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-basketsummary-component>xn-card-component .xn-card .xn-heading,xn-basketsummarytest-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-basketsummary-component .xn-detail,xn-basketsummarytest-component .xn-detail {
    max-height: -webkit-calc(100vh - 72px);
    max-height: calc(100vh - 72px);
    overflow-y: auto;
    margin-bottom: 8px
}

.xn-component xn-basketsummary-component .xn-detail table,xn-basketsummarytest-component .xn-detail table {
    table-layout: auto
}

.xn-component xn-basketsummary-component .xn-summary,xn-basketsummarytest-component .xn-summary {
    cursor: pointer;
    width: 110px;
    height: 54px;
    line-height: 49px;
    padding: 0;
    margin: 0 0 0 auto;
    text-align: center
}

.xn-component xn-basketsummary-component .xn-summary .xn-no-items .xn-count,xn-basketsummarytest-component .xn-summary .xn-no-items .xn-count {
    background-color: #e9530e;
    color: #fff;
    padding: 0 7px 0 6px;
    border-radius: 16px
}

.xn-component xn-basketsummary-component .xn-summary .xn-icon,xn-basketsummarytest-component .xn-summary .xn-icon {
    display: inline-block;
    color: #fff;
    margin: 0 5px 0 0
}

.xn-component xn-basketsummary-component .xn-summary .xn-icon:before,xn-basketsummarytest-component .xn-summary .xn-icon:before {
    font-family: fontAwesome;
    content: "ïŠ‘";
    display: inline-block
}

.xn-component xn-basketsummary-component .xn-summary .xn-no-items,xn-basketsummarytest-component .xn-summary .xn-no-items {
    margin-right: 2px;
    display: inline-block;
    float: none;
    font-weight: 400
}

.xn-component xn-basketsummary-component .xn-summary .xn-no-items .xn-count,xn-basketsummarytest-component .xn-summary .xn-no-items .xn-count {
    display: inline-block;
    background: 0;
    padding: 0
}

.xn-component xn-basketsummary-component .xn-summary .xn-no-items .xn-count:before,xn-basketsummarytest-component .xn-summary .xn-no-items .xn-count:before {
    display: inline-block;
    content: "("
}

.xn-component xn-basketsummary-component .xn-summary .xn-no-items .xn-count:after,xn-basketsummarytest-component .xn-summary .xn-no-items .xn-count:after {
    display: inline-block;
    content: ")"
}

.xn-component xn-basketsummary-component .xn-summary .xn-no-items>span,xn-basketsummarytest-component .xn-summary .xn-no-items>span {
    display: none
}

.xn-component xn-basketsummary-component .xn-detail,xn-basketsummarytest-component .xn-detail {
    display: none;
    margin-top: 0;
    padding: 15px
}

.xn-component xn-basketsummary-component .xn-detail table,xn-basketsummarytest-component .xn-detail table {
    font-size: 14px
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr,xn-basketsummarytest-component .xn-detail table tbody tr {
    background-color: inherit!important;
    border-bottom: 0
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr td.xn-cost,xn-basketsummarytest-component .xn-detail table tbody tr td.xn-cost {
    text-align: right;
    vertical-align: bottom;
    font-weight: 700
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr td.xn-description,xn-basketsummarytest-component .xn-detail table tbody tr td.xn-description {
    min-width: 120px;
    max-width: 250px;
    font-weight: 700
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr.xn-membership-breakdown,xn-basketsummarytest-component .xn-detail table tbody tr.xn-membership-breakdown {
    border-top: 0;
    font-size: 12px
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr.xn-membership-breakdown td,xn-basketsummarytest-component .xn-detail table tbody tr.xn-membership-breakdown td {
    padding: 0 8px;
    font-style: italic
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr.xn-membership-breakdown td:first-of-type,xn-basketsummarytest-component .xn-detail table tbody tr.xn-membership-breakdown td:first-of-type {
    padding-left: 24px
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr.xn-membership-breakdown td.xn-cost,xn-basketsummarytest-component .xn-detail table tbody tr.xn-membership-breakdown td.xn-cost {
    font-weight: 400;
    font-style: normal
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr.xn-membership-breakdown+.xn-spacer,xn-basketsummarytest-component .xn-detail table tbody tr.xn-membership-breakdown+.xn-spacer {
    border: 0
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr.xn-membership-breakdown+.xn-spacer td,xn-basketsummarytest-component .xn-detail table tbody tr.xn-membership-breakdown+.xn-spacer td {
    padding: 4px
}

.xn-component xn-basketsummary-component .xn-detail table tbody tr:first-child,xn-basketsummary-component .xn-detail table tbody tr:not(.xn-membership-breakdown),xn-basketsummarytest-component .xn-detail table tbody tr:first-child,xn-basketsummarytest-component .xn-detail table tbody tr:not(.xn-membership-breakdown) {
    border-top: 1px solid #cdcdcd
}

.xn-component xn-basketsummary-component .xn-detail table tfoot tr,xn-basketsummarytest-component .xn-detail table tfoot tr {
    font-weight: 700;
    border-top: 2px solid #000;
    font-size: 18px
}

.xn-component xn-basketsummary-component .xn-detail table tfoot tr td.xn-total,xn-basketsummarytest-component .xn-detail table tfoot tr td.xn-total {
    text-align: right
}

.xn-component xn-basketsummary-component .xn-detail .xn-empty-basket,xn-basketsummarytest-component .xn-detail .xn-empty-basket {
    padding: 0 16px 8px;
    max-width: 200px
}

.xn-component xn-basketsummary-component .xn-detail .xn-buttons .xn-button,xn-basketsummarytest-component .xn-detail .xn-buttons .xn-button {
    width: 100%
}

.xn-component xn-basketsummary-component .xn-detail .xn-items,xn-basketsummarytest-component .xn-detail .xn-items {
    background: #fff;
    padding: 20px;
    margin-bottom: 0
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description,xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description {
    font-weight: 700;
    font-size: 1rem;
    padding: 15px 0 15px 20px
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description:after,xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description:after {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    margin-top: 15px
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost,xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost {
    font-weight: 700;
    font-size: 1rem;
    padding: 15px 20px 15px 0
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost:after,xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost:after {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    margin-top: 15px
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr.xn-membership-breakdown td,xn-basketsummarytest-component .xn-detail .xn-items tbody tr.xn-membership-breakdown td {
    font-weight: 400;
    font-size: .875rem;
    padding: 5px 20px 5px 0;
    font-style: normal
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr.xn-membership-breakdown td:first-child,xn-basketsummarytest-component .xn-detail .xn-items tbody tr.xn-membership-breakdown td:first-child {
    padding: 5px 0 5px 20px
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr.xn-spacer td,xn-basketsummarytest-component .xn-detail .xn-items tbody tr.xn-spacer td {
    padding-top: 10px
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tfoot tr,xn-basketsummarytest-component .xn-detail .xn-items tfoot tr {
    border-top: 0
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total-text,xn-basketsummarytest-component .xn-detail .xn-items .xn-total-text {
    font-weight: 700;
    font-size: 1.275rem;
    border-top: 0;
    padding: 0 0 15px 20px
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total-text:before,xn-basketsummarytest-component .xn-detail .xn-items .xn-total-text:before {
    display: block;
    content: "";
    height: 5px;
    width: 100%;
    margin-bottom: 15px
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total,xn-basketsummarytest-component .xn-detail .xn-items .xn-total {
    font-weight: 700;
    font-size: 1.275rem;
    border-top: 0;
    padding: 0 20px 15px 0
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total:before,xn-basketsummarytest-component .xn-detail .xn-items .xn-total:before {
    display: block;
    content: "";
    height: 5px;
    width: 100%;
    margin-bottom: 15px
}

.xn-component xn-basketsummary-component .xn-detail .xn-buttons,xn-basketsummarytest-component .xn-detail .xn-buttons {
    background: #fff;
    padding: 0 20px 20px;
    color: red;
    display: block
}

.xn-component xn-basketsummary-component .xn-detail .xn-buttons:before,xn-basketsummarytest-component .xn-detail .xn-buttons:before {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    background: #dbdedf;
    margin-bottom: 15px
}

.xn-component xn-basketsummary-component .xn-detail .xn-buttons .xn-button,xn-basketsummarytest-component .xn-detail .xn-buttons .xn-button {
    display: inline-block;
    padding: 11px 40px;
    border-radius: 26px;
    border: 0;
    font-weight: 400;
    font-size: .95625rem;
    text-align: center
}

.xn-component xn-basketsummary-component:hover,xn-basketsummarytest-component:hover {
    width: auto
}

.xn-component xn-basketsummary-component:hover .xn-detail,xn-basketsummarytest-component:hover .xn-detail {
    display: block
}

.xn-component xn-basketsummary-component.xn-expand,xn-basketsummarytest-component.xn-expand {
    width: auto
}

.xn-component #xn-basket-summary .xn-component {
    width: 124px
}

.xn-component xn-challenges-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-challenges-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-challenges-component .xn-heading,xn-challenges-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-challenges-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-challenges-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-challenges-component table {
    table-layout: auto!important
}

.xn-component xn-challenges-component td.xn-completed:after {
    font-family: fontAwesome;
    content: "ï€Œ";
    color: #4caf50;
    display: block;
    text-align: center
}

@media(max-width: 767px) {
    .xn-component xn-challenges-component td.xn-completed:after {
        display:inline
    }
}

.xn-component xn-challenges-component td.xn-completed,xn-challenges-component td.xn-end-date,xn-challenges-component th.xn-completed,xn-challenges-component th.xn-end-date {
    text-align: center
}

.xn-component xn-challenges-component td.xn-participants,xn-challenges-component th.xn-participants {
    text-align: right
}

@media(max-width: 767px) {
    .xn-component xn-challenges-component table thead {
        display:none
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:first-child {
        margin-top: 8px;
        font-size: 18px;
        border-bottom: 1px solid #cdcdcd
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:first-child,.xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: " ";
        text-align: left;
        display: inline-block;
        width: 0;
        font-weight: 700
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "End Date";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Participants";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component xn-challenges-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-challenges-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(5) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-challenges-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
        content: "Completed";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component xn-challenges-component table tfoot td {
        display: block
    }
}

.xn-tile.xn-small lh-challenges-component table thead {
    display: none
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:first-child {
    margin-top: 8px;
    font-size: 18px;
    border-bottom: 1px solid #cdcdcd
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:first-child,.xn-component .xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: " ";
    text-align: left;
    display: inline-block;
    width: 0;
    font-weight: 700
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "End Date";
    text-align: left;
    display: inline-block;
    width: 120px;
    font-weight: 700
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Participants";
    text-align: left;
    display: inline-block;
    width: 120px;
    font-weight: 700
}

.xn-tile.xn-small lh-challenges-component table tbody tr.xn-footer td {
    display: inline-block
}

.xn-tile.xn-small lh-challenges-component table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(5) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-tile.xn-small lh-challenges-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
    content: "Completed";
    text-align: left;
    display: inline-block;
    width: 120px;
    font-weight: 700
}

.xn-tile.xn-small lh-challenges-component table tfoot td {
    display: block
}

.xn-component xn-changepassword-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-changepassword-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-changepassword-component .xn-heading,xn-changepassword-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-changepassword-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-changepassword-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-changepassword-component .xn-card .xn-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component xn-changepassword-component .xn-alert.xn-alert-success {
    margin-bottom: 0;
    margin-top: auto
}

.xn-component xn-changepassword-component .xn-validation-message {
    margin-bottom: 0
}

.xn-component xn-changepassword-component .xn-guidance {
    background-color: #fff;
    border-color: #cdcdcd;
    color: #324164;
    margin-bottom: 0
}

.xn-component xn-changepassword-component .xn-guidance:before {
    font-family: fontAwesome;
    color: #2196f3;
    margin-right: 4px;
    content: "ïš"
}

.xn-component xn-changepassword-component .xn-form .xn-required-message {
    text-align: center;
    font-size: .875rem;
    font-weight: 400
}

.xn-component xn-changepassword-component .xn-form .xn-required-message:before {
    content: "*";
    font-size: .875rem;
    font-weight: 400
}

.xn-component xn-changepassword-component .xn-form .xn-heading-text {
    padding-top: 70px;
    text-align: center;
    font-weight: 300;
    font-size: 1.25rem
}

.xn-component xn-changepassword-component .xn-form legend+.xn-heading-text {
    padding-top: 0;
    padding-bottom: 30px;
    max-width: 500px;
    margin: 0 auto;
    font-weight: 400
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-instruction {
    text-align: center;
    font-size: 1.25rem;
    font-weight: 400;
    padding-bottom: 30px
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-instruction a {
    display: inline-block;
    margin: 60px auto 0;
    padding: 11px 40px;
    border-radius: 26px;
    border: 0;
    font-weight: 400;
    font-size: 1.2rem;
    min-width: 260px;
    text-align: center
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-guidance {
    margin: 0 0 7px
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group label {
    font-weight: 400;
    font-size: 1.25rem;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 0;
    text-transform: none
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-required-text {
    color: transparent!important;
    font-size: 1px!important;
    padding-top: 10px
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-required-text:before {
    content: "*";
    font-size: 1.25rem
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-inputs input[type=email],xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-inputs input[type=password],xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-inputs input[type=text] {
    width: 100%;
    height: 64px;
    padding: 0 30px;
    font-size: 1.06rem
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+input+label,xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+label {
    font-size: .875rem;
    font-weight: 600;
    padding: 0;
    width: 100%
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+input+label a,xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+label a {
    border: 0
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+input+label .xn-tick,xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+label .xn-tick {
    margin-right: 10px;
    border-radius: 0;
    height: 16px;
    width: 16px;
    vertical-align: 2px;
    padding: 0
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+input+label .xn-tick:before,xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+label .xn-tick:before {
    width: 10px;
    margin: -3px 0 0 2px
}

.xn-component xn-changepassword-component .xn-form .xn-required-message+.xn-fields {
    padding-top: 55px
}

.xn-component xn-changepassword-component .xn-form .xn-required-message+.xn-guidance {
    margin-top: 30px
}

.xn-component xn-changepassword-component .xn-form .xn-required-message+.xn-guidance+.xn-fields {
    padding-top: 40px
}

.xn-component xn-changepassword-component .xn-form .xn-buttons .xn-button {
    display: inline-block;
    margin: 60px auto 30px;
    padding: 11px 40px;
    border-radius: 26px;
    border: 0;
    font-weight: 400;
    font-size: 1.2rem;
    min-width: 260px;
    text-align: center;
    text-transform: none
}

.xn-component xn-changepassword-component .xn-form .xn-buttons+.xn-instruction {
    font-size: .87rem;
    text-align: center;
    font-weight: 400;
    padding-bottom: 10px
}

.xn-component xn-changepassword-component .xn-form .xn-form-links-list ul {
    list-style: none;
    padding-left: 0;
    margin-top: 0
}

.xn-component xn-changepassword-component .xn-form .xn-form-links-list ul li {
    text-align: center
}

.xn-component xn-changepassword-component .xn-form .xn-form-links-list ul li a {
    display: inline-block;
    margin: 10px auto 30px;
    padding: 7px 40px;
    border-radius: 26px;
    border: 0;
    font-weight: 400;
    font-size: .95625rem;
    min-width: 150px;
    text-align: center;
    text-transform: none
}

.xn-component xn-cookiebanner-component .xn-cookie-banner-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    background: #fff;
    bottom: 0;
    left: 50%;
    z-index: 20;
    border-radius: 5px 5px 0 0;
    -webkit-box-shadow: 0 0 15px 4px rgba(0,0,0,.75);
    box-shadow: 0 0 15px 4px rgba(0,0,0,.75);
    width: 100%;
    min-width: 256px;
    -webkit-transform: translate(-50%);
    -ms-transform: translate(-50%);
    transform: translate(-50%);
    border: 3px solid #fff;
    border-bottom: 0;
    white-space: nowrap;
    padding: 8px;
    font-weight: 700;
    z-index: 11;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-end;
    margin: 8px 0;
    padding: 0
}

.xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-buttons .xn-button {
    width: auto;
    margin: 0 8px 0 0;
    padding: 8px 16px;
    text-transform: uppercase;
    font-size: 14px;
    -webkit-box-flex: 0;
    -webkit-flex: none;
    flex: none;
    border-radius: 3px;
    border: 0;
    color: #fff;
    background-color: #e9530e
}

.xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-buttons .xn-button:hover {
    cursor: pointer;
    background-color: #b9420b
}

@media screen and (max-width: 767px) {
    .xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-buttons {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-buttons .xn-button {
        width: 100%;
        margin: 0 0 8px
    }
}

.xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-cookie-banner-name {
    font-weight: 400;
    margin: 4px;
    white-space: -moz-pre-wrap!important;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    white-space: pre-wrap;
    word-wrap: break-word;
    white-space: -webkit-pre-wrap;
    word-break: break-all;
    white-space: normal
}

@media screen and (max-width: 767px) {
    .xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-cookie-banner-name {
        margin-bottom:8px
    }
}

.xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-cookie-banner-title {
    font-weight: 700!important;
    margin: 4px 4px 4px 0;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis
}

@media screen and (max-width: 767px) {
    .xn-component xn-cookiebanner-component .xn-cookie-banner-header .xn-cookie-banner-title {
        margin-bottom:8px
    }
}

@media screen and (max-width: 1024px) {
    .xn-component xn-cookiebanner-component .xn-cookie-banner-header {
        width:75%
    }
}

@media screen and (max-width: 767px) {
    .xn-component xn-cookiebanner-component .xn-cookie-banner-header {
        width:calc(100% - 16px);
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap
    }
}

.xn-component xn-currentperson-component .xn-current-person-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    background: #fff;
    bottom: 0;
    left: 50%;
    z-index: 20;
    border-radius: 5px 5px 0 0;
    -webkit-box-shadow: 0 0 15px 4px rgba(0,0,0,.75);
    box-shadow: 0 0 15px 4px rgba(0,0,0,.45);
    width: 50%;
    min-width: 300px;
    -webkit-transform: translate(-50%);
    -ms-transform: translate(-50%);
    transform: translate(-50%);
    border: 3px solid #fff;
    border-bottom: 0;
    background-color: #2d393b;
    color: #fff;
    white-space: nowrap;
    padding: 8px;
    font-weight: 700;
    z-index: 11;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-buttons button.xn-add-person,xn-currentperson-component .xn-current-person-header .xn-buttons button.xn-change-current-person {
    padding: 4px 16px;
    font-size: .8rem;
    margin-left: 8px
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-buttons button.xn-add-person:first-child,xn-currentperson-component .xn-current-person-header .xn-buttons button.xn-change-current-person:first-child {
    margin-left: 0
}

@media(max-width: 1024px) {
    .xn-component xn-currentperson-component .xn-current-person-header .xn-buttons button.xn-add-person,.xn-component xn-currentperson-component .xn-current-person-header .xn-buttons button.xn-change-current-person {
        padding:4px
    }
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-current-person-name {
    font-weight: 400;
    margin: 4px;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    font-size: .8rem
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-current-person-name .xn-name {
    line-height: 28px
}

@media(max-width: 767px) {
    .xn-component xn-currentperson-component .xn-current-person-header .xn-current-person-name {
        margin-bottom:8px
    }
}

@media(max-width: 1024px) {
    .xn-component xn-currentperson-component .xn-current-person-header {
        width:75%
    }
}

@media(max-width: 767px) {
    .xn-component xn-currentperson-component .xn-current-person-header {
        width:calc(100% - 16px);
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap
    }
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-buttons .xn-button {
    display: inline-block;
    padding: 8px 12px;
    color: #fff;
    border: none!important;
    font-weight: 400;
    font-size: .7rem;
    text-align: center;
    width: auto;
    margin-left: 6px
}

.xn-component xn-currentperson-component .xn-modal .xn-detail {
    min-height: 50px
}

.xn-component xn-currentperson-component .xn-modal .xn-buttons {
    margin: 0;
    justify-content: center
}

.xn-component xn-currentperson-component .xn-modal .xn-buttons .xn-button {
    display: inline-block;
    margin: 0 0 0 15px;
    padding: 11px 40px;
    border: none!important;
    font-weight: 400;
    font-size: .95625rem;
    min-width: 150px;
    text-align: center
}

.xn-component xn-currentperson-component .xn-modal .xn-buttons .xn-button.xn-mute {
    padding: 10px 39px
}

.xn-component xn-listfilter-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: flex;
    justify-content: space-between;
    flex-flow: wrap
}

.xn-component xn-listfilter-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-listfilter-component .xn-heading,xn-listfilter-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-listfilter-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-listfilter-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-listfilter-component>div {
    width: calc(100% - 150px);
    padding-bottom: 25px
}

.xn-component xn-listfilter-component>div>.xn-heading {
    font-size: 1px;
    color: transparent
}

.xn-component xn-listfilter-component>div>.xn-heading:before {
    display: inline-block;
    content: "Filters";
    font-size: 1.25rem;
    font-weight: 800;
    padding-bottom: 10px
}

.xn-component xn-listfilter-component>div>p {
    font-size: .875rem;
    font-weight: 400
}

.xn-component xn-listfilter-component>div:first-child {
    display: none
}

.xn-component xn-listfilter-component .xn-filters>div>div>.xn-heading {
    background: #2d393b;
    color: #fff;
    padding: 16px;
    border-radius: 5px;
    cursor: pointer;
    margin-top: 8px
}

.xn-component xn-listfilter-component .xn-filters>div>div>.xn-heading:hover {
    background: #171d1e
}

.xn-component xn-listfilter-component .xn-filters>div>div>.xn-heading:after {
    font-family: fontAwesome;
    content: "ï¸";
    float: right
}

.xn-component xn-listfilter-component .xn-filters>div>div>.xn-heading.xn-filter-items-visibility {
    border-radius: 5px 5px 0 0
}

.xn-component xn-listfilter-component .xn-filters>div>div>.xn-heading.xn-filter-items-visibility:after {
    content: "ï·"
}

.xn-component xn-listfilter-component .xn-filters {
    width: 100%;
    flex-basis: 100%;
    padding-bottom: 0
}

@media(max-width: 767px) {
    .xn-component xn-listfilter-component .xn-filters {
        display:none
    }
}

.xn-component xn-listfilter-component .xn-filters.xn-filters-visible {
    display: block
}

.xn-component xn-listfilter-component .xn-search-filter ul.xn-grid {
    background-color: #fff
}

.xn-component xn-listfilter-component ul.xn-grid {
    display: none;
    padding: 8px;
    border: 1px solid #c6d2d4;
    border-top: 0 solid #c6d2d4;
    border-radius: 0 0 5px 5px;
    grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
    grid-gap: 8px;
    background-color: #c6d2d4
}

.xn-component xn-listfilter-component ul.xn-grid.xn-filter-items-visibility {
    display: grid
}

.xn-component xn-listfilter-component ul.xn-grid>li {
    width: 100%!important
}

.xn-component xn-listfilter-component ul.xn-grid>li .xn-input-group {
    width: 100%;
    margin-bottom: 0
}

.xn-component xn-listfilter-component ul.xn-grid>li xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-listfilter-component li.xn-filter-text-search {
    -webkit-box-flex: 0!important;
    -webkit-flex: 0 0 100%!important;
    flex: 0 0 100%!important;
    padding: 0
}

.xn-component xn-listfilter-component li.xn-filter-text-search .xn-input-group {
    width: 100%
}

.xn-component xn-listfilter-component li.xn-filter-text-search .xn-input-group .xn-inputs #xn-contactTelephoneNumber,xn-listfilter-component li.xn-filter-text-search .xn-input-group .xn-inputs input[type=date],xn-listfilter-component li.xn-filter-text-search .xn-input-group .xn-inputs input[type=email],xn-listfilter-component li.xn-filter-text-search .xn-input-group .xn-inputs input[type=password],xn-listfilter-component li.xn-filter-text-search .xn-input-group .xn-inputs input[type=tel],xn-listfilter-component li.xn-filter-text-search .xn-input-group .xn-inputs input[type=text] {
    width: 100%;
    height: 32px;
    padding: 0 20px;
    font-size: 1rem;
    border-radius: 0!important
}

.xn-component xn-listfilter-component xn-card-component {
    display: block
}

.xn-component xn-listfilter-component xn-card-component .xn-card {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap
}

.xn-component xn-listfilter-component xn-card-component .xn-card .xn-heading {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    order: 1;
    font-size: 1rem;
    padding: 8px;
    background-color: inherit;
    border-radius: 3px;
    -webkit-flex-shrink: 1;
    flex-shrink: 1
}

@media(max-width: 1024px) {
    .xn-component xn-listfilter-component xn-card-component .xn-card .xn-heading {
        white-space:normal
    }
}

.xn-component xn-listfilter-component xn-card-component .xn-card .xn-image {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    height: 36px;
    width: 36px;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    order: 1;
    background-image: url(gym.7e5ef855.jpeg);
    margin-right: 0;
    box-shadow: inset 10px 0 16px -4px rgba(0,0,0,.75);
    border-radius: 0 3px 3px 0
}

.xn-component xn-listfilter-component xn-card-component .xn-card .xn-image.xn-img-football {
    background-image: url(football.352eec83.jpeg)
}

.xn-component xn-listfilter-component xn-card-component .xn-card .xn-image.xn-img-swimming {
    background-image: url(swimming.81a7f168.jpeg)
}

.xn-component xn-listfilter-component xn-card-component .xn-card .xn-image.xn-img-gym {
    background-image: url(gym.7e5ef855.jpeg)
}

.xn-component xn-listfilter-component xn-card-component .xn-card:hover {
    cursor: pointer;
    background-color: #171d1e
}

.xn-component xn-listfilter-component li.xn-selected xn-card-component .xn-card:hover {
    background-color: #b9420b
}

.xn-component xn-listfilter-component .xn-filters>div {
    display: flex;
    flex-direction: column
}

.xn-component xn-listfilter-component .xn-filters>div>div {
    order: 999
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-search-filter {
    order: 1
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-search-filter .xn-heading {
    display: none;
    font-weight: 400;
    font-size: 1rem;
    padding-bottom: 10px
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-search-filter ul.xn-grid {
    display: grid;
    padding: 0;
    border: 0
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-search-filter ul.xn-grid li {
    padding: 0
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-heading {
    padding: 10px 20px;
    font-size: 1rem;
    font-weight: 300;
    position: relative;
    margin: 0 0 4px
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-heading:before {
    position: absolute;
    right: 20px;
    top: calc(50% - 10px)
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-heading.xn-filter-items-visibility {
    margin: 0
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-grid {
    margin: 0 0 4px;
    padding: 4px 20px 8px
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-grid li {
    flex-basis: 24%!important;
    margin: 0 1% 6px 0
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-grid li .xn-card {
    margin: 0;
    border-radius: 0;
    height: 100%;
    display: flex;
    align-items: center
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-grid li .xn-card .xn-image {
    display: none
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-grid li .xn-card .xn-heading {
    text-align: left;
    font-size: 1rem;
    padding-left: 30px;
    position: relative
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-grid li .xn-card .xn-heading:before {
    display: block;
    content: "";
    height: 12px;
    width: 12px;
    border-radius: 50%;
    position: absolute;
    left: 10px;
    top: calc(50% - 6px)
}

.xn-component xn-listfilter-component .xn-filters>div>div:not(.xn-search-filter)>.xn-grid.xn-filter-items-visibility {
    display: flex
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-type-filter {
    order: 2
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-activity-filter {
    order: 4
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-time-filter {
    order: 5
}

.xn-component xn-listfilter-component .xn-filters>div>div.xn-location-filter {
    order: 6
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-heading,xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-heading {
    margin: 0
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-heading:before,xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-heading:before {
    content: "ï·"
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-heading.xn-filter-items-visibility,xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-heading.xn-filter-items-visibility {
    margin: 0 0 4px
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-heading.xn-filter-items-visibility:before,xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-heading.xn-filter-items-visibility:before {
    color: #2d393b;
    content: "ï¸"
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-grid,xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-grid {
    display: flex
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-grid.xn-filter-items-visibility,xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-grid.xn-filter-items-visibility {
    display: none
}

.xn-component #xn-hide-list-filters-button-group {
    display: none;
    padding: 0 8px;
    width: 150px;
    flex-grow: 0
}

@media(max-width: 767px) {
    .xn-component #xn-hide-list-filters-button-group {
        display:block
    }
}

.xn-component #xn-hide-list-filters-button-group .xn-buttons {
    width: 100%
}

.xn-component #xn-hide-list-filters-button-group .xn-button {
    display: inline-block;
    padding: 8px 20px;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    width: 150px;
    text-align: center;
    text-transform: none
}

.xn-component xn-bookinghistory-component .xn-bookings-order {
    display: none
}

.xn-component xn-bookinghistory-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: auto
}

.xn-component xn-bookinghistory-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-bookinghistory-component .xn-heading,xn-bookinghistory-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-bookinghistory-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-bookinghistory-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-bookinghistory-component table {
    table-layout: auto!important
}

.xn-component xn-bookinghistory-component table tbody tr td:nth-child(10),xn-bookinghistory-component table thead tr th:nth-child(10) {
    text-align: right
}

.xn-component xn-bookinghistory-component xn-listfilter-component {
    margin: 0 0 16px;
    padding: 0
}

@media(max-width: 1024px) {
    .xn-component xn-bookinghistory-component table thead {
        display:none
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:first-child {
        margin-top: 8px;
        font-size: 18px;
        border-bottom: 1px solid #cdcdcd
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:first-child,xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Activity Date/Time";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Booking Made";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Location";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(5) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
        content: "Sub-Location";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(6) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(6):before {
        content: "Site";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(7) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(7):before {
        content: "Duration";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(8) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(8):before {
        content: "Type";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-bookinghistory-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(9) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(9):before {
        content: "Cost";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-bookinghistory-component .xn-bookings-order,xn-bookinghistory-component table tfoot td {
        display: block
    }

    .xn-component xn-bookinghistory-component table>tbody>tr>td {
        line-height: 1.8em;
        padding-left: 5px!important
    }
}

.xn-component xn-bookinghistory-component .xn-card .xn-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component xn-bookinghistory-component .xn-card .xn-content .xn-booking-location {
    width: 100%
}

.xn-component xn-bookinghistory-component .xn-card .xn-content .xn-booking-starttime {
    width: 100%;
    margin: 8px 0
}

.xn-component xn-bookinghistory-component .xn-card .xn-content .xn-booking-duration {
    width: 100%
}

.xn-component xn-bookinghistory-component .xn-card .xn-content .xn-booking-spaces {
    width: 50%
}

.xn-component xn-bookinghistory-component .xn-card .xn-content .xn-booking-cost {
    width: 50%;
    text-align: right
}

.xn-component xn-bookinghistory-component .xn-buttons {
    margin: 0;
    padding: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component xn-bookinghistory-component .xn-buttons .xn-button {
    margin: 0;
    width: 100%
}

.xn-component xn-bookinghistory-component .xn-buttons .xn-button+.xn-button {
    margin-top: 8px!important
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:first-child {
    white-space: nowrap;
    margin-top: 8px;
    font-size: 18px;
    border-bottom: 1px solid #cdcdcd
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    white-space: nowrap
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Activity Date/Time";
    width: 150px
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(3) {
    white-space: nowrap
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "Booking Made";
    width: 150px
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(4) {
    white-space: nowrap
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Location";
    width: 150px
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(5) {
    white-space: nowrap
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
    content: "Sub-Location";
    width: 150px
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(6) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(6):before {
    content: "Site";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(7) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(7):before {
    content: "Duration";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(8) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(8):before {
    content: "Type";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(9) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(9):before {
    content: "Cost";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component xn-bookinglist-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-bookinglist-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-bookinglist-component .xn-heading,xn-bookinglist-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-bookinglist-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-bookinglist-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-bookinglist-component .xn-bookings-grid {
    margin: 0
}

.xn-component xn-bookinglist-component .xn-bookings-no-result {
    margin: 15px
}

.xn-component xn-bookinglist-component .xn-bookings-order {
    padding: 0 17px
}

.xn-component xn-bookinglist-component .xn-card .xn-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component xn-bookinglist-component .xn-card .xn-content .xn-booking-activity {
    width: 100%
}

.xn-component xn-bookinglist-component .xn-card .xn-content .xn-booking-location {
    width: 100%;
    margin: 8px 0
}

.xn-component xn-bookinglist-component .xn-card .xn-content .xn-booking-datetime,xn-bookinglist-component .xn-card .xn-content .xn-booking-starttime {
    width: 50%;
    text-align: left;
    margin: 8px 0
}

.xn-component xn-bookinglist-component .xn-card .xn-content .xn-booking-duration {
    width: 60%;
    text-align: right;
    order: 0
}

.xn-component xn-bookinglist-component .xn-card .xn-content .xn-booking-spaces {
    width: 40%;
    order: 0
}

.xn-component xn-bookinglist-component .xn-card .xn-content .xn-booking-cost {
    width: 50%;
    text-align: right;
    margin: 8px 0
}

.xn-component xn-bookinglist-component .xn-card .xn-content .xn-booking-activity-label,xn-bookinglist-component .xn-card .xn-content .xn-booking-cost-label,xn-bookinglist-component .xn-card .xn-content .xn-booking-datetime-label,xn-bookinglist-component .xn-card .xn-content .xn-booking-duration-label,xn-bookinglist-component .xn-card .xn-content .xn-booking-location-label,xn-bookinglist-component .xn-card .xn-content .xn-booking-spaces-label,xn-bookinglist-component .xn-card .xn-content .xn-booking-time-label {
    display: block
}

.xn-component xn-bookinglist-component .xn-card .xn-booking-description {
    font-size: .8rem;
    background-color: #fff;
    color: #46484a;
    position: absolute;
    left: 10%;
    width: 80%;
    top: 60px;
    max-height: 216px;
    padding: 0;
    box-shadow: 10px 10px 20px -6px rgba(0,0,0,.75);
    overflow: hidden;
    border-radius: 3px;
    display: block
}

.xn-component xn-bookinglist-component .xn-card .xn-booking-description .xn-booking-description-content {
    max-height: 216px;
    overflow: hidden;
    overflow-y: auto;
    padding: 4px
}

.xn-component xn-bookinglist-component .xn-card .xn-more-info {
    font-size: 0;
    float: right;
    padding: 0;
    position: absolute;
    right: 8px;
    top: 8px;
    width: 48px
}

.xn-component xn-bookinglist-component .xn-card .xn-more-info:after {
    font-family: fontAwesome;
    content: "ï„©";
    display: block;
    font-size: 2rem;
    background-color: rgba(45,57,59,.8);
    padding: 2px;
    text-align: center;
    border-radius: 32px;
    cursor: pointer;
    border: 4px solid #fff
}

.xn-component xn-bookinglist-component .xn-card .xn-more-info:hover:after {
    background-color: #2d393b;
    color: #fff;
    border-color: #fff
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-alerts div {
    margin: 16px 0 0
}

@media(max-width: 767px) {
    xn-bookinglist-component xn-card-component .xn-card .xn-more-info:after {
        font-size:1rem;
        width: 30px;
        float: right;
        margin-top: 2px
    }

    xn-bookinglist-component xn-card-component .xn-card .xn-alerts>* {
        margin-top: 16px
    }

    xn-bookinglist-component xn-card-component .xn-card>* {
        padding-top: 0
    }

    xn-bookinglist-component xn-card-component .xn-card .xn-image {
        position: relative;
        top: 0;
        left: 0;
        height: 52px;
        box-shadow: inset -10px 0 16px -4px rgba(0,0,0,.75)
    }

    xn-bookinglist-component xn-card-component .xn-card .xn-heading {
        padding-left: 64px;
        text-align: center
    }

    xn-bookinglist-component xn-card-component .xn-card .xn-heading:before {
        font-family: fontAwesome;
        content: "ï¨";
        float: left;
        color: #fff;
        cursor: pointer
    }

    xn-bookinglist-component xn-card-component .xn-card.xn-collapsed .xn-heading:before {
        content: "ï§"
    }

    xn-bookinglist-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-booking-starttime {
        text-align: left;
        margin: 0
    }

    xn-bookinglist-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-booking-duration,xn-bookinglist-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-booking-spaces {
        display: none
    }
}

.xn-component xn-bookinglist-component .xn-input-group.xn-bookings-order {
    padding: 0 8px!important
}

.xn-component xn-bookinglist-component .xn-input-group.xn-bookings-order label {
    font-weight: 400;
    font-size: 1rem;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 0;
    text-transform: none
}

.xn-component xn-bookinglist-component .xn-input-group.xn-bookings-order select {
    width: 100%;
    height: 32px;
    padding: 0 20px;
    font-size: 1rem;
    border-radius: 0!important;
    margin-bottom: 10px
}

.xn-component xn-bookinglist-component xn-card-component .xn-card {
    border-radius: 0
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-heading {
    text-align: left;
    font-weight: 300;
    font-size: 1.25rem;
    padding: 0 0 10px
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-booking-description {
    top: 0;
    box-shadow: none;
    left: 0;
    width: 100%;
    max-height: none;
    position: relative;
    font-size: .875rem;
    padding: 16px 16px 0
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-booking-description .xn-booking-description-content {
    max-height: none
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-content {
    font-size: .875rem;
    justify-content: space-between
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-content>div {
    flex-basis: 49%;
    text-align: left!important;
    margin: 0!important;
    font-weight: 300!important;
    padding: 6px 0 3px!important
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-content>div.xn-booking-cost-label,xn-bookinglist-component xn-card-component .xn-card .xn-content>div.xn-booking-duration-label,xn-bookinglist-component xn-card-component .xn-card .xn-content>div.xn-booking-location-label,xn-bookinglist-component xn-card-component .xn-card .xn-content>div.xn-booking-spaces-label,xn-bookinglist-component xn-card-component .xn-card .xn-content>div.xn-booking-time-label,xn-bookinglist-component xn-card-component .xn-card .xn-content>div[class*=-label] {
    font-weight: 800!important
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-buttons {
    justify-content: center;
    padding-bottom: 30px
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-buttons .xn-button {
    margin: 10px auto 0;
    padding: 8px 0;
    border: 0;
    font-weight: 400;
    font-size: 1.25rem;
    text-align: center;
    text-transform: none
}

.xn-component #xn-book-now-confirm .xn-content .xn-buttons,#xn-book-now-confirm .xn-content p {
    margin: 0 8px;
    padding: 0
}

.xn-component #xn-book-now-confirm .xn-content .xn-buttons .xn-button,#xn-book-now-confirm .xn-content p .xn-button {
    margin: 0 8px
}

.xn-component #xn-book-now-confirm .xn-content .xn-buttons .xn-button:first-child,#xn-book-now-confirm .xn-content p .xn-button:first-child {
    margin-left: 0
}

.xn-component #xn-book-now-confirm .xn-content .xn-buttons .xn-button:last-child,#xn-book-now-confirm .xn-content p .xn-button:last-child {
    margin-right: 0
}

.xn-component #xn-book-now-confirm .xn-content .xn-book-now-tandc {
    padding: 4px 8px 0
}

.xn-component #xn-select-sublocation .xn-detail {
    margin-bottom: 0
}

.xn-component #xn-select-sublocation .xn-detail .xn-sub-locations {
    margin-bottom: 8px
}

.xn-component #xn-select-sublocation .xn-detail .xn-header {
    color: #000;
    font-size: 18px;
    margin: 8px 0;
    width: auto
}

.xn-component #xn-select-sublocation .xn-detail .xn-header:nth-child(3) {
    margin: 28px 0 4px
}

.xn-component #xn-select-sublocation .xn-detail .xn-options .xn-unavailable:before {
    font-family: fontAwesome;
    content: "ï€";
    margin: 0 8px 0 4px;
    width: 20px;
    text-align: center;
    color: #f44336;
    font-size: 22px;
    position: relative;
    line-height: 20px;
    top: 3px
}

.xn-component #xn-select-sublocation .xn-detail .xn-please-wait {
    padding: 8px 0
}

.xn-component #xn-book-now-confirm .xn-buttons {
    padding: 0 8px!important;
    margin: 0!important;
    flex-wrap: wrap
}

.xn-component #xn-book-now-confirm .xn-buttons .xn-button {
    display: inline-block;
    margin: 20px 0 0 4px!important;
    padding: 11px 10px;
    border: none!important;
    font-weight: 400;
    font-size: .95625rem;
    min-width: 0;
    width: 100%;
    text-align: center
}

.xn-component #xn-book-now-confirm .xn-buttons .xn-button.xn-mute {
    margin: 20px 0 0!important
}

@media screen and (max-width: 370px) {
    .xn-component #xn-book-now-confirm .xn-buttons .xn-button.xn-mute {
        margin:20px 0 0!important
    }
}

.xn-component xn-datepicker-component {
    width: 100%
}

.xn-component xn-datepicker-component .xn-day {
    width: -webkit-calc(25% - 8px);
    width: calc(25% - 8px);
    max-width: -webkit-calc(25% - 8px);
    max-width: calc(25% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 370px) {
    .xn-component xn-datepicker-component .xn-day {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-datepicker-component .xn-month {
    width: -webkit-calc(50% - 8px);
    width: calc(50% - 8px);
    max-width: -webkit-calc(50% - 8px);
    max-width: calc(50% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 370px) {
    .xn-component xn-datepicker-component .xn-month {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-datepicker-component .xn-year {
    width: 25%;
    max-width: 25%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 370px) {
    .xn-component xn-datepicker-component .xn-year {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component .xn-component xn-directdebitdetails-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-directdebitdetails-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-directdebitdetails-component .xn-heading,xn-directdebitdetails-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-directdebitdetails-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-directdebitdetails-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-directdebitdetails-component .xn-detail {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    padding-top: 20px;
    padding-bottom: 20px
}

@media(max-width: 1024px) {
    .xn-component xn-directdebitdetails-component .xn-detail {
        display:block
    }
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountName-group {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountName-group label {
    -webkit-flex-basis: auto;
    flex-basis: auto
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountName-group .xn-inputs {
    -webkit-flex-basis: 100%;
    flex-basis: 100%
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountName-group .xn-inputs input {
    width: 250px
}

@media(max-width: 767px) {
    .xn-component xn-directdebitdetails-component .xn-detail #xn-accountName-group .xn-inputs input {
        width:100%
    }
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountNumber-group {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountNumber-group label {
    -webkit-flex-basis: auto;
    flex-basis: auto
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountNumber-group .xn-inputs {
    -webkit-flex-basis: 100%;
    flex-basis: 100%
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-accountNumber-group .xn-inputs input {
    width: 128px
}

@media(max-width: 767px) {
    .xn-component xn-directdebitdetails-component .xn-detail #xn-accountNumber-group .xn-inputs input {
        width:100%
    }
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-sortCode-group {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-sortCode-group label {
    -webkit-flex-basis: auto;
    flex-basis: auto
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-sortCode-group .xn-inputs {
    -webkit-flex-basis: 100%;
    flex-basis: 100%
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-sortCode-group .xn-inputs #xn-sortCode1,xn-directdebitdetails-component .xn-detail #xn-sortCode-group .xn-inputs #xn-sortCode2,xn-directdebitdetails-component .xn-detail #xn-sortCode-group .xn-inputs #xn-sortCode3 {
    -webkit-flex-basis: auto;
    flex-basis: auto;
    width: 48px;
    margin-right: 16px;
    text-align: center;
    padding: 0 5px
}

.xn-component xn-directdebitdetails-component .xn-detail #xn-sortCode-group .xn-inputs #xn-sortCode3 {
    margin-right: 0
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group label {
    font-weight: 400;
    font-size: 1rem;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 0;
    text-transform: none
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group .xn-required-text {
    color: transparent!important;
    font-size: 1px!important;
    padding-top: 10px
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group .xn-required-text:before {
    content: "*";
    font-size: 1.25rem
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group .xn-help:after {
    font-size: 1.2rem;
    margin-left: 10px
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group input[type=date],xn-directdebitdetails-component .xn-detail .xn-input-group input[type=email],xn-directdebitdetails-component .xn-detail .xn-input-group input[type=password],xn-directdebitdetails-component .xn-detail .xn-input-group input[type=tel],xn-directdebitdetails-component .xn-detail .xn-input-group input[type=text] {
    width: 100%;
    height: 32px;
    padding: 0 20px;
    font-size: 1rem;
    border-radius: 0!important
}

.xn-component xn-directdebitdetails-component .xn-buttons {
    justify-content: center;
    margin-top: 30px;
    padding-top: 30px;
    padding-bottom: 30px
}

.xn-component xn-directdebitdetails-component .xn-buttons .xn-button {
    margin: 0 auto;
    padding: 11px 60px;
    border: 0;
    font-weight: 400;
    font-size: 1.4375rem;
    text-align: center;
    text-transform: none
}

.xn-component xn-directdebitdetails-component .xn-dd-guarantee-link {
    margin-top: 8px;
    text-align: center
}

.xn-component xn-directdebitdetails-component .xn-dd-guarantee-link a {
    display: inline-block;
    margin: 10px 0 30px;
    padding: 7px 40px;
    background: #e58e33;
    color: #fff;
    border: 0;
    font-weight: 400!important;
    font-size: .95625rem;
    min-width: 150px;
    text-align: center;
    text-transform: none
}

.xn-component xn-ddguarantee-component .xn-detail:before {
    content: "";
    width: 96px;
    height: 31px;
    background: url(dd-logo.ccc9a036.png);
    float: right;
    margin: 0 16px
}

.xn-component xn-ddguarantee-component .xn-detail>ul {
    padding-top: 48px
}

.xn-component xn-ddpurchases-component {
    display: block;
    background-color: #fff;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: auto;
    padding: 8px 0;
    margin: 8px 0
}

.xn-component xn-ddpurchases-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-ddpurchases-component .xn-heading,xn-ddpurchases-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-ddpurchases-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-ddpurchases-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-ddpurchases-component h2 {
    margin-left: 0
}

.xn-component xn-ddpurchases-component table {
    table-layout: auto!important
}

@media(max-width: 1024px) {
    .xn-component xn-ddpurchases-component table thead {
        display:none
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:first-child:before {
        content: "Item";
        text-align: left;
        display: inline-block;
        width: 175px;
        margin-left: -175px;
        font-weight: 700
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Collection Frequency";
        text-align: left;
        display: inline-block;
        width: 175px;
        margin-left: -175px;
        font-weight: 700
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Collection Day";
        text-align: left;
        display: inline-block;
        width: 175px;
        margin-left: -175px;
        font-weight: 700
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Collection Amount*";
        text-align: left;
        display: inline-block;
        width: 175px;
        margin-left: -175px;
        font-weight: 700
    }

    .xn-component xn-ddpurchases-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-ddpurchases-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(5) {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-ddpurchases-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
        content: "Collected By**";
        text-align: left;
        display: inline-block;
        width: 175px;
        margin-left: -175px;
        font-weight: 700
    }

    .xn-component xn-ddpurchases-component table tfoot td {
        display: block
    }

    .xn-component xn-ddpurchases-component table>tbody>tr>td {
        line-height: 1.8em;
        padding-left: 180px!important
    }
}

.xn-component xn-ddpurchases-component .xn-card .xn-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table thead {
    display: none
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:first-child:before {
    content: "Item";
    text-align: left;
    display: inline-block;
    width: 175px;
    margin-left: -175px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Collection Frequency";
    text-align: left;
    display: inline-block;
    width: 175px;
    margin-left: -175px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "Collection Day";
    text-align: left;
    display: inline-block;
    width: 175px;
    margin-left: -175px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Collection Amount*";
    text-align: left;
    display: inline-block;
    width: 175px;
    margin-left: -175px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(5) {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
    content: "Collected By**";
    text-align: left;
    display: inline-block;
    width: 175px;
    margin-left: -175px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-bookinghistory-component table tfoot td {
    display: block
}

.xn-component xn-dddetailsummary-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-dddetailsummary-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-dddetailsummary-component .xn-heading,xn-dddetailsummary-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-dddetailsummary-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-dddetailsummary-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-dddetailsummary-component td {
    word-break: break-word
}

.xn-component xn-fillquestionnaire-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-fillquestionnaire-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-fillquestionnaire-component .xn-heading,xn-fillquestionnaire-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-fillquestionnaire-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-fillquestionnaire-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-membershipfilter-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-membershipfilter-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-membershipfilter-component .xn-heading,xn-membershipfilter-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-membershipfilter-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-membershipfilter-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-membershipfilter-component #xn-toggle-filters {
    display: none
}

@media(max-width: 767px) {
    .xn-component xn-membershipfilter-component #xn-toggle-filters {
        display:block
    }
}

@media(max-width: 767px) {
    .xn-component xn-membershipfilter-component .xn-content {
        display:none
    }
}

.xn-component xn-membershipfilter-component .xn-content.xn-filters-visible {
    display: block
}

.xn-component xn-membershipfilter-component xn-card-component .xn-card {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap
}

.xn-component xn-membershipfilter-component xn-card-component .xn-card .xn-heading {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    order: 1;
    font-size: 1rem;
    padding: 8px;
    background-color: inherit;
    border-radius: 3px
}

.xn-component xn-membershipfilter-component xn-card-component .xn-card .xn-image {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    height: 36px;
    width: 36px;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    order: 1;
    background-image: url(gym.7e5ef855.jpeg);
    margin-right: 0;
    box-shadow: inset 10px 0 16px -4px rgba(0,0,0,.75);
    border-radius: 0 3px 3px 0
}

.xn-component xn-membershipfilter-component xn-card-component .xn-card .xn-image.xn-img-football {
    background-image: url(football.352eec83.jpeg)
}

.xn-component xn-membershipfilter-component xn-card-component .xn-card .xn-image.xn-img-swimming {
    background-image: url(swimming.81a7f168.jpeg)
}

.xn-component xn-membershipfilter-component xn-card-component .xn-card .xn-image.xn-img-gym {
    background-image: url(gym.7e5ef855.jpeg)
}

.xn-component xn-membershipfilter-component xn-card-component .xn-card:hover {
    cursor: pointer;
    background-color: #171d1e
}

.xn-component xn-membershipfilter-component li.xn-selected xn-card-component .xn-card:hover {
    background-color: #b9420b
}

.xn-component lh-joinnow-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component lh-joinnow-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component lh-joinnow-component .xn-heading,lh-joinnow-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component lh-joinnow-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component lh-joinnow-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-listquestionnaires-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-listquestionnaires-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-listquestionnaires-component .xn-heading,xn-listquestionnaires-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-listquestionnaires-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-listquestionnaires-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

@media(max-width: 767px) {
    .xn-component xn-listquestionnaires-component table thead {
        display:none
    }

    .xn-component xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:first-child:before {
        content: "Questionnaire";
        text-align: left;
        display: block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-listquestionnaires-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-listquestionnaires-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-listquestionnaires-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Last Completed";
        text-align: left;
        display: block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-listquestionnaires-component table tfoot td {
        display: block
    }
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table thead {
    display: none
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:first-child:before {
    content: "Questionnaire";
    text-align: left;
    display: block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Last Completed";
    text-align: left;
    display: block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-listquestionnaires-component table tfoot td {
    display: block
}

.xn-component xn-linkedmembers-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-linkedmembers-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-linkedmembers-component .xn-heading,xn-linkedmembers-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-linkedmembers-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-linkedmembers-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-linkedmembers-component ul.xn-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(260px,1fr));
    grid-gap: 8px
}

.xn-component xn-linkedmembers-component ul.xn-grid li .xn-card {
    margin: 0
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card {
    border-radius: 0
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-heading {
    text-align: left;
    font-weight: 300;
    font-size: 1.25rem;
    padding: 0 0 10px
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-prime-linked {
    font-size: .875rem
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-buttons {
    justify-content: center;
    padding-bottom: 30px;
    padding-top: 6px
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-buttons .xn-button {
    margin: 10px auto 0;
    padding: 8px 0;
    border: 0;
    font-weight: 400;
    font-size: .8rem;
    text-align: center;
    text-transform: none
}

.xn-component xn-linkedmembers-component .xn-buttons {
    margin: 15px 8px 0
}

.xn-component xn-linkedmembers-component .xn-buttons .xn-button {
    display: inline-block;
    margin: 0 0 0 15px;
    padding: 11px 40px;
    border: none!important;
    font-weight: 400;
    font-size: .95625rem;
    min-width: 150px;
    text-align: center
}

.xn-component xn-linkedmembers-component .xn-buttons .xn-button:first-child {
    margin-left: 0
}

@media(max-width: 767px) {
    .xn-component xn-linkedmembers-component .xn-buttons {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .xn-component xn-linkedmembers-component .xn-buttons .xn-button {
        width: 100%;
        margin: 0 0 8px
    }
}

.xn-component xn-linkedmembers-component .xn-modal .xn-buttons {
    margin: 0;
    justify-content: center
}

.xn-component xn-linkedmembers-component .xn-modal .xn-buttons .xn-button {
    display: inline-block;
    margin: 0 0 0 15px;
    padding: 11px 40px;
    border: none!important;
    font-weight: 400;
    font-size: .95625rem;
    min-width: 150px;
    text-align: center
}

.xn-component xn-linkedmembers-component .xn-modal .xn-buttons .xn-button.xn-mute {
    padding: 10px 39px
}

.xn-component xn-marketingpreferences-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-marketingpreferences-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-marketingpreferences-component .xn-heading,xn-marketingpreferences-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-marketingpreferences-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-marketingpreferences-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-marketingpreferences-component .xn-heading {
    display: none
}

.xn-component xn-marketingpreferences-component .xn-options {
    width: 100%
}

.xn-component xn-marketingpreferences-component form .xn-input-group label,xn-marketingpreferences-component form .xn-option-group label {
    font-weight: 400;
    font-size: 1rem;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 0;
    text-transform: none
}

.xn-component xn-marketingpreferences-component form .xn-input-group .xn-required-text,xn-marketingpreferences-component form .xn-option-group .xn-required-text {
    color: transparent!important;
    font-size: 1px!important;
    padding-top: 10px
}

.xn-component xn-marketingpreferences-component form .xn-input-group .xn-required-text:before,xn-marketingpreferences-component form .xn-option-group .xn-required-text:before {
    content: "*";
    font-size: 1.25rem
}

.xn-component xn-marketingpreferences-component form .xn-input-group #xn-contactTelephoneNumber,xn-marketingpreferences-component form .xn-input-group input[type=date],xn-marketingpreferences-component form .xn-input-group input[type=email],xn-marketingpreferences-component form .xn-input-group input[type=password],xn-marketingpreferences-component form .xn-input-group input[type=tel],xn-marketingpreferences-component form .xn-input-group input[type=text],xn-marketingpreferences-component form .xn-input-group select,xn-marketingpreferences-component form .xn-option-group #xn-contactTelephoneNumber,xn-marketingpreferences-component form .xn-option-group input[type=date],xn-marketingpreferences-component form .xn-option-group input[type=email],xn-marketingpreferences-component form .xn-option-group input[type=password],xn-marketingpreferences-component form .xn-option-group input[type=tel],xn-marketingpreferences-component form .xn-option-group input[type=text],xn-marketingpreferences-component form .xn-option-group select {
    width: 100%;
    height: 32px;
    padding: 0 20px;
    font-size: 1rem;
    border-radius: 0!important
}

.xn-component xn-marketingpreferences-component form .xn-input-group select[multiple],xn-marketingpreferences-component form .xn-option-group select[multiple] {
    height: auto
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+input+label,xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+label,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+input+label,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+label {
    font-size: .875rem;
    font-weight: 600;
    padding: 0;
    width: 100%
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+input+label a,xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+label a,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+input+label a,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+label a {
    border: 0
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+input+label:before,xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+label:before,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+input+label:before,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+label:before {
    vertical-align: -2px
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+input+label .xn-tick,xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+label .xn-tick,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+input+label .xn-tick,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+label .xn-tick {
    margin-right: 10px;
    border-radius: 0!important;
    height: 16px;
    width: 16px;
    vertical-align: 2px;
    padding: 0
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+input+label .xn-tick:before,xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+label .xn-tick:before,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+input+label .xn-tick:before,xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+label .xn-tick:before {
    width: 10px;
    margin: -3px 0 0 2px
}

.xn-component xn-marketingpreferences-component .xn-buttons {
    justify-content: center;
    margin-top: 30px;
    padding-top: 30px;
    padding-bottom: 30px
}

.xn-component xn-marketingpreferences-component .xn-buttons .xn-button {
    margin: 0 auto;
    padding: 11px 60px;
    border: 0;
    font-weight: 400;
    font-size: 1.4375rem;
    text-align: center;
    text-transform: none
}

.xn-component xn-memberdebts-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-memberdebts-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-memberdebts-component .xn-heading,xn-memberdebts-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-memberdebts-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-memberdebts-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-memberdebts-component .xn-total-due-wrapper {
    margin-bottom: 16px
}

.xn-component xn-memberdebts-component .xn-total-due-wrapper button {
    display: inline-block
}

.xn-component xn-memberdebts-component .xn-loading {
    margin-bottom: 16px
}

@media(max-width: 767px) {
    .xn-component xn-memberdebts-component table thead {
        display:none
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:first-child:before {
        content: "Debt On";
        text-align: left;
        display: inline-block;
        width: 100px;
        font-weight: 700
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Description";
        text-align: left;
        display: inline-block;
        width: 100px;
        font-weight: 700
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Site";
        text-align: left;
        display: inline-block;
        width: 100px;
        font-weight: 700
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Due Date";
        text-align: left;
        display: inline-block;
        width: 100px;
        font-weight: 700
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(5) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
        content: "Paid So Far";
        text-align: left;
        display: inline-block;
        width: 100px;
        font-weight: 700
    }

    .xn-component xn-memberdebts-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-memberdebts-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(6) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(6):before {
        content: "Amount Due";
        text-align: left;
        display: inline-block;
        width: 100px;
        font-weight: 700
    }

    .xn-component xn-memberdebts-component table tfoot td {
        display: block
    }

    .xn-component xn-memberdebts-component table tfoot td:first-child {
        display: none
    }

    .xn-component xn-memberdebts-component table tfoot td:nth-child(2):before {
        content: "Total value:";
        margin-right: 4px
    }
}

.xn-component xn-memberdebts-component .xn-harlandsFlexPortal-link {
    display: none
}

.xn-component xn-memberdebts-component .xn-total-due-wrapper {
    font-weight: 400
}

.xn-component xn-memberdebts-component .xn-total-due-wrapper .xn-total-due,xn-memberdebts-component tfoot td {
    font-weight: 800
}

.xn-component xn-memberdebts-component tfoot td .xn-button {
    padding: 5px 20px!important;
    border-radius: 26px!important;
    border: 0;
    font-weight: 400;
    font-size: 1rem;
    text-align: center;
    text-transform: none
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table thead {
    display: none
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:first-child:before {
    content: "Debt On";
    text-align: left;
    display: inline-block;
    width: 100px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Description";
    text-align: left;
    display: inline-block;
    width: 100px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "Site";
    text-align: left;
    display: inline-block;
    width: 100px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Due Date";
    text-align: left;
    display: inline-block;
    width: 100px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(5) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(5):before {
    content: "Paid So Far";
    text-align: left;
    display: inline-block;
    width: 100px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(6) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tbody tr:not(.xn-footer) td:nth-child(6):before {
    content: "Amount Due";
    text-align: left;
    display: inline-block;
    width: 100px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tfoot td {
    display: block
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tfoot td:first-child {
    display: none
}

.xn-component .xn-tile.xn-small xn-memberdebts-component table tfoot td:nth-child(2):before {
    content: "Total value:";
    margin-right: 4px
}

.xn-component xn-membershippricebreakdown-component table tbody tr:nth-child(2n) {
    background-color: #fff!important
}

.xn-component xn-membershippricebreakdown-component tr.xn-payment-due-today td {
    border-top: 1px solid #cdcdcd;
    font-weight: 700
}

.xn-component xn-membershipprice-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 100%;
    padding: 0
}

.xn-component xn-membershipprice-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-membershipprice-component .xn-heading,xn-membershipprice-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-membershipprice-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-membershipprice-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-membershipprice-component .xn-content .xn-membership-benefits {
    display: none;
    background-color: #fff;
    color: #000;
    padding: 8px;
    border-radius: 3px;
    margin-bottom: 8px;
    position: relative
}

.xn-component xn-membershipprice-component .xn-content .xn-membership-benefits .xn-benefits-title {
    font-weight: 700;
    margin-bottom: 8px
}

.xn-component xn-membershipprice-component .xn-content .xn-membership-benefits.xn-show-additional-benefits {
    display: block
}

.xn-component xn-membershipprice-component .xn-content>* {
    padding: 0 0 16px
}

.xn-component xn-membershipprice-component .xn-content>:last-child {
    padding-bottom: 0
}

.xn-component xn-membershipprice-component .xn-cost {
    text-align: center
}

.xn-component xn-membershipprice-component .xn-cost .xn-free,xn-membershipprice-component .xn-cost .xn-pounds {
    font-size: 3.4rem
}

.xn-component xn-membershipprice-component .xn-cost .xn-pence {
    font-size: 2.5rem;
    vertical-align: super
}

.xn-component xn-membershipprice-component .xn-frequency {
    text-align: center;
    font-size: .7rem;
    display: block;
    min-height: 16px
}

.xn-component xn-membershipprice-component .xn-payment-method {
    text-align: center
}

.xn-component xn-membershipprice-component .xn-pay-today {
    text-align: center;
    z-index: 1
}

.xn-component xn-membershipprice-component .xn-pay-today span {
    cursor: pointer;
    color: #999;
    font-size: .7rem
}

.xn-component xn-membershipprice-component .xn-pay-today span:hover {
    color: #fff
}

.xn-component xn-membershipprice-component .xn-additional-fees {
    text-align: center;
    font-size: .7rem;
    display: block;
    min-height: 16px
}

.xn-component xn-membershipprice-component .xn-buttons {
    margin-top: auto;
    margin-bottom: 8px
}

.xn-component xn-membershipprice-component ul.xn-benefits,xn-membershipprice-component ul.xn-sites {
    list-style-type: none;
    padding: 0
}

.xn-component xn-membershipprice-component ul.xn-benefits>li,xn-membershipprice-component ul.xn-sites>li {
    margin-bottom: 4px
}

.xn-component xn-membershipprice-component ul.xn-benefits>li .xn-title,xn-membershipprice-component ul.xn-sites>li .xn-title {
    font-weight: 600;
    display: block
}

.xn-component xn-membershipprice-component ul.xn-benefits li.xn-toggle-applicable-sites,xn-membershipprice-component ul.xn-sites li.xn-toggle-applicable-sites {
    cursor: pointer
}

.xn-component xn-membershipprice-component ul.xn-benefits li.xn-additional-benefit,xn-membershipprice-component ul.xn-benefits li.xn-site-list,xn-membershipprice-component ul.xn-sites li.xn-additional-benefit,xn-membershipprice-component ul.xn-sites li.xn-site-list {
    display: none
}

.xn-component xn-membershipprice-component .xn-toggle-additional-benefits,xn-membershipprice-component .xn-toggle-applicable-sites {
    cursor: pointer
}

.xn-component xn-membershipprice-component ul.xn-benefits {
    margin-bottom: 0
}

.xn-component xn-membershipprice-component xn-card-component .xn-image {
    background-image: url(kettle-bells.b8f41b95.jpeg)
}

.xn-component xn-membershipprice-component xn-card-component .xn-image.xn-img-football {
    background-image: url(football.352eec83.jpeg)
}

.xn-component xn-membershipprice-component xn-card-component .xn-image.xn-img-swimming {
    background-image: url(swimming.81a7f168.jpeg)
}

.xn-component xn-membershipprice-component xn-card-component .xn-image.xn-img-gym {
    background-image: url(gym.7e5ef855.jpeg)
}

@media(max-width: 767px) {
    xn-membershipprice-component xn-card-component .xn-card .xn-buttons:last-child {
        margin-top:0;
        padding-bottom: 0
    }

    xn-membershipprice-component xn-card-component .xn-card .xn-alerts>* {
        margin-top: 16px
    }

    xn-membershipprice-component xn-card-component .xn-card>* {
        padding-top: 0
    }

    xn-membershipprice-component xn-card-component .xn-card .xn-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 52px;
        height: 52px;
        box-shadow: inset -10px 0 16px -4px rgba(0,0,0,.75)
    }

    xn-membershipprice-component xn-card-component .xn-card .xn-heading {
        padding-left: 64px;
        text-align: center
    }

    xn-membershipprice-component xn-card-component .xn-card .xn-heading:before {
        font-family: fontAwesome;
        content: "ï¨";
        float: left;
        color: #fff;
        cursor: pointer
    }

    xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-heading:before {
        content: "ï§"
    }

    xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-frequency {
        padding: 0
    }

    xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-additional-fees,xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-membership-benefits,xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-pay-today,xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-payment-method,xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-sites,xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-toggle-additional-benefits,xn-membershipprice-component xn-card-component .xn-card.xn-collapsed .xn-content .xn-toggle-applicable-sites {
        display: none
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card {
    padding-bottom: 20px!important
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-heading {
    font-size: 1.5rem;
    font-weight: 300;
    padding: 11px 30px
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-image {
    display: none
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content {
    display: grid;
    grid-template-columns: 350px 1fr 150px;
    margin-top: 0!important;
    padding: 20px 30px 0!important;
    min-height: 140px
}

@media screen and (max-width: 865px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content {
        grid-template-columns:260px 1fr 150px
    }
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content {
        display:block
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost {
    grid-column: 1;
    grid-row: 1/span 4;
    text-align: left;
    padding: 0;
    margin: -4px 0 0;
    font-weight: 300
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost {
        text-align:center;
        padding-bottom: 20px
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds {
    font-size: 3.625rem
}

@media screen and (max-width: 865px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds {
        font-size:2rem
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds>span {
    margin-left: 6px;
    font-size: 5.5rem
}

@media screen and (max-width: 865px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds>span {
        font-size:4rem;
        margin-left: 3px
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pence {
    font-size: 2rem;
    vertical-align: 30px
}

@media screen and (max-width: 865px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pence {
        font-size:1.5rem;
        vertical-align: 24px
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-frequency {
    grid-column: 2;
    grid-row: 1;
    text-align: left;
    margin: 0;
    align-self: center;
    text-transform: capitalize;
    font-size: 1.125rem;
    font-weight: 300;
    padding: 5px 30px 10px 0
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-frequency {
        text-align:center;
        padding-right: 0
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-payment-method {
    grid-column: 2;
    grid-row: 2;
    text-align: left;
    margin: 0;
    align-self: center;
    font-size: 1.125rem;
    font-weight: 300;
    padding: 0 30px 4px 0
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-payment-method {
        text-align:center;
        padding-right: 0
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-additional-fees {
    grid-column: 2;
    grid-row: 3;
    text-align: left;
    margin: 0;
    align-self: center;
    font-size: .875rem;
    font-weight: 300;
    padding: 0 30px 0 0
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-additional-fees {
        text-align:center;
        padding-right: 0
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-pay-today {
    grid-column: 2;
    grid-row: 4;
    text-align: left;
    margin: 0;
    align-self: center;
    padding: 10px 30px 5px 0
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-pay-today span {
    font-size: .875rem;
    border: 0;
    font-weight: 800
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-pay-today {
        text-align:center;
        padding-right: 0
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-toggle-additional-benefits {
    grid-column: 3;
    grid-row: 1;
    text-align: left;
    align-self: center;
    margin: 0 auto 7px;
    padding: 8px 0;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none;
    width: 100%
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-toggle-additional-benefits {
        margin-top:30px!important
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-toggle-applicable-sites {
    grid-column: 3;
    grid-row: 2/span 2;
    text-align: left;
    align-self: center;
    margin: 7px auto;
    padding: 8px 0;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none;
    width: 100%
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-add-to-basket {
    grid-column: 3;
    grid-row: 4;
    text-align: left;
    align-self: center;
    margin: 7px auto 0;
    padding: 8px 0;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none;
    width: 100%;
    cursor: pointer
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-membership-benefits {
    grid-column: 1/span 3;
    grid-row: 5;
    text-align: left;
    padding: 25px;
    margin: 20px 0 0;
    align-self: center;
    font-size: .875rem
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-membership-benefits .xn-benefits-title {
    padding: 10px 0;
    font-weight: 800
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-membership-benefits .xn-benefits {
    padding-bottom: 5px
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-membership-benefits .xn-benefits .xn-title {
    font-weight: 800
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-membership-benefits .xn-benefits>li>span {
    padding-top: 4px;
    font-weight: 300
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-sites {
    display: none
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-alerts {
    order: 10;
    padding-left: 30px!important;
    padding-right: 30px!important
}

@media screen and (max-width: 700px) {
    xn-membershipprice-component xn-card-component .xn-card .xn-alerts {
        padding-top:30px!important;
        padding-bottom: 16px!important
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons {
    order: 9;
    padding-left: 30px!important;
    padding-right: 30px!important;
    margin-bottom: 10px!important;
    padding-bottom: 0!important;
    padding-top: 15px;
    display: grid;
    grid-template-columns: 350px 1fr 150px;
    grid-template-areas: "proof empty buttons";
    margin-top: -26px!important;
    position: relative
}

@media screen and (max-width: 865px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons {
        grid-template-columns:260px 1fr 150px
    }
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons {
        display:block;
        margin-top: 0!important;
        padding-top: 30px
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons .xn-button {
    padding: 8px 0;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none;
    display: block;
    grid-area: buttons
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-image.Required~.xn-buttons:after,xn-membershipprice-component xn-card-component .xn-card .xn-image.required~.xn-buttons:after,xn-membershipprice-component xn-card-component .xn-card .xn-img-required~.xn-buttons:after {
    font-family: FontAwesome;
    content: "ï†";
    position: absolute;
    top: 7px;
    left: 45px
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-image.Required~.xn-buttons:after,xn-membershipprice-component xn-card-component .xn-card .xn-image.required~.xn-buttons:after,xn-membershipprice-component xn-card-component .xn-card .xn-img-required~.xn-buttons:after {
        top:37px
    }
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-image.Required~.xn-buttons:before,xn-membershipprice-component xn-card-component .xn-card .xn-image.required~.xn-buttons:before,xn-membershipprice-component xn-card-component .xn-card .xn-img-required~.xn-buttons:before {
    content: "Proof of Eligibility";
    padding: 8px 0 8px 42px;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: left;
    text-transform: none;
    width: 175px;
    display: block;
    grid-area: proof
}

@media screen and (max-width: 700px) {
    .xn-component xn-membershipprice-component xn-card-component .xn-card .xn-image.Required~.xn-buttons:before,xn-membershipprice-component xn-card-component .xn-card .xn-image.required~.xn-buttons:before,xn-membershipprice-component xn-card-component .xn-card .xn-img-required~.xn-buttons:before {
        width:100%;
        margin-bottom: 7px;
        text-align: center;
        padding: 8px 0
    }
}

.xn-component xn-membershipprices-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 0
}

.xn-component xn-membershipprices-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-membershipprices-component .xn-heading,xn-membershipprices-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-membershipprices-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-membershipprices-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-membershipprices-component>section:first-child {
    padding: 8px
}

.xn-component xn-membershipprices-component>section>form .xn-input-group label {
    font-weight: 400;
    font-size: 1rem;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 0;
    text-transform: none
}

.xn-component xn-membershipprices-component>section>form .xn-input-group select {
    width: 100%;
    height: 32px;
    padding: 0 20px;
    font-size: 1rem;
    border-radius: 0!important;
    margin-bottom: 10px
}

.xn-component xn-membershipprices-component>section>form+.xn-heading {
    display: none
}

.xn-component xn-membershipprices-component xn-list-component li {
    width: 100%!important
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons {
    display: flex
}

.xn-component xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-button {
    min-height: 52px
}

@media(max-width: 767px) {
    .xn-component xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-button {
        min-height:0
    }
}

.xn-component xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons {
    display: flex;
    grid-template-columns: none;
    grid-template-areas: none
}

.xn-component xn-membershiprenewal-component .xn-detail ul li>xn-membershipprice-component,xn-membershipupsell-component .xn-detail ul li>xn-membershipprice-component {
    margin: 0 4px
}

.xn-component xn-membershiprenewal-component .xn-detail ul li:first-child>xn-membershipprice-component,xn-membershipupsell-component .xn-detail ul li:first-child>xn-membershipprice-component {
    margin-left: 0
}

.xn-component xn-membershiprenewal-component .xn-detail ul li:last-child>xn-membershipprice-component,xn-membershipupsell-component .xn-detail ul li:last-child>xn-membershipprice-component {
    margin-right: 0
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component,xn-membershipupsell-component xn-membershipprice-component {
    margin: 0
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-heading,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-heading {
    padding: 11px 20px!important;
    font-size: .875rem!important
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content {
    border: none!important;
    display: block;
    padding: 20px 20px 0!important
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost {
    text-align: center;
    padding-bottom: 20px
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds {
    font-size: 2rem
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds>span,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds>span {
    font-size: 4rem;
    margin-left: 3px
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pence,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pence {
    font-size: 1.5rem;
    vertical-align: 24px
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content>div,xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content>span,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content>div,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content>span {
    text-align: center!important;
    padding-right: 0!important
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-pay-today,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-pay-today {
    padding-bottom: 40px
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-benefits,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-benefits {
    display: none
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons {
    padding-left: 20px!important;
    padding-right: 20px!important;
    margin-top: 0!important
}

.xn-component xn-membershiprenewal-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons .xn-button,xn-membershipupsell-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons .xn-button {
    margin: 0!important;
    font-size: .875rem!important;
    padding: 8px 0!important;
    min-width: 0!important;
    min-height: 0!important
}

.xn-component xn-moves-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-moves-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-moves-component .xn-heading,xn-moves-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-moves-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-moves-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-moves-component .xn-moves {
    display: block;
    width: 128px;
    height: 80px;
    background-color: #fff;
    border: 2px solid #333;
    border-radius: 8px;
    position: relative;
    margin: 16px auto 24px;
    line-height: normal;
    background: repeating-linear-gradient(130deg,transparent,transparent 1px,hsla(0,0%,100%,.2) 2px,hsla(0,0%,100%,.2) 3px),linear-gradient(180deg,#4d4d4d 0,#fff 60%,#fff 70%,#4d4d4d);
    box-shadow: 0 15px 16px -4px rgba(0,0,0,.5)
}

.xn-component xn-moves-component .xn-moves .xn-progress {
    background: repeating-linear-gradient(130deg,transparent,transparent 1px,rgba(45,57,59,.2) 2px,rgba(45,57,59,.2) 3px),linear-gradient(180deg,#000 0,#2d393b 60%,#2d393b 70%,#000);
    height: 100%;
    display: block
}

.xn-component xn-moves-component .xn-moves:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: radial-gradient(ellipse farthest-corner at right bottom,hsla(0,0%,100%,.2) 0,rgba(51,51,51,.2) 65%,hsla(0,0%,100%,.2) 0,hsla(0,0%,100%,.2) 100%)
}

.xn-component xn-moves-component .xn-moves:after {
    content: " ";
    display: block;
    width: 10px;
    height: 32px;
    position: absolute;
    right: -10px;
    top: 22px;
    border: 2px solid #333;
    border-radius: 0 5px 5px 0;
    background: linear-gradient(180deg,#4d4d4d 0,#fff 60%,#fff 70%,#4d4d4d)
}

.xn-component xn-moves-component .xn-moves.xn-achieved-goal:after {
    background: linear-gradient(180deg,#000 0,#e9530e 60%,#e9530e 70%,#000)
}

.xn-component xn-moves-component .xn-moves .xn-total {
    position: absolute;
    top: 4px;
    left: 0;
    bottom: 0;
    right: 0;
    text-align: center;
    font-family: sans-serif;
    font-weight: 900;
    font-size: 28px;
    color: #fff;
    text-shadow: 1px 1px 0 #666,-1px 1px 0 #666,1px -1px 0 #666,-1px -1px 0 #666,0 1px 0 #666,0 -1px 0 #666,-1px 0 0 #666,1px 0 0 #666,2px 2px 0 #666,-2px 2px 0 #666,2px -2px 0 #666,-2px -2px 0 #666,0 2px 0 #666,0 -2px 0 #666,-2px 0 0 #666,2px 0 0 #666,1px 2px 0 #666,-1px 2px 0 #666,1px -2px 0 #666,-1px -2px 0 #666,2px 1px 0 #666,-2px 1px 0 #666,2px -1px 0 #666,-2px -1px 0 #666
}

.xn-component xn-moves-component .xn-moves .xn-total .xn-total-text {
    font-size: 9px;
    text-shadow: 1px 1px 0 #666,-1px 1px 0 #666,1px -1px 0 #666,-1px -1px 0 #666,0 1px 0 #666,0 -1px 0 #666,-1px 0 0 #666,1px 0 0 #666;
    display: block
}

.xn-component xn-moves-component .xn-goal-text {
    text-transform: uppercase;
    font-size: 14px;
    text-align: center
}

.xn-component xn-moves-component .xn-goal-text .xn-goal {
    font-weight: 700
}

.xn-component lh-multisave-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component lh-multisave-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component lh-multisave-component .xn-heading,lh-multisave-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component lh-multisave-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component lh-multisave-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-mydocuments-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-mydocuments-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-mydocuments-component .xn-heading,.xn-component xn-mydocuments-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-mydocuments-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-mydocuments-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

@media(max-width: 767px) {
    .xn-component xn-mydocuments-component table thead {
        display:none
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:first-child:before {
        content: "Document Name";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Version";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "File Type";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-mydocuments-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-mydocuments-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Agreed-upon Date";
        text-align: left;
        display: inline-block;
        width: 150px;
        font-weight: 700
    }

    .xn-component xn-mydocuments-component table tfoot td {
        display: block
    }
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table thead {
    display: none
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:first-child:before {
    content: "Document Name";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Version";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "File Type";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Agreed-upon Date";
    text-align: left;
    display: inline-block;
    width: 150px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mydocuments-component table tfoot td {
    display: block
}

.xn-component xn-mypayments-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: auto
}

.xn-component xn-mypayments-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-mypayments-component .xn-heading,.xn-component xn-mypayments-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-mypayments-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-mypayments-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-mypayments-component table {
    table-layout: auto!important
}

.xn-component xn-mypayments-component table tbody tr td:nth-child(4),.xn-component xn-mypayments-component table tbody tr td:nth-child(5),.xn-component xn-mypayments-component table thead tr th:nth-child(4),.xn-component xn-mypayments-component table thead tr th:nth-child(5) {
    text-align: right
}

.xn-component xn-mypayments-component xn-listfilter-component {
    margin: 0 0 16px;
    padding: 0
}

.xn-component xn-mypayments-component .xn-payments-order {
    display: none
}

@media(max-width: 767px) {
    .xn-component xn-mypayments-component table thead {
        display:none
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:first-child:before {
        content: "Reference";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Paid Date";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Paid At";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-mypayments-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-mypayments-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Amount";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-mypayments-component table tfoot td {
        display: block
    }

    .xn-component xn-mypayments-component table tbody tr:not(.xn-footer) td:first-child {
        white-space: normal
    }

    .xn-component xn-mypayments-component .xn-payments-order {
        display: block
    }

    .xn-component xn-mypayments-component table>tbody>tr>td {
        line-height: 1.8em;
        padding-left: 5px!important
    }
}

.xn-component .xn-tile.xn-small xn-mypayments-component table thead {
    display: none
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:first-child:before {
    content: "Reference";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Paid Date";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "Paid At";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Amount";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tfoot td {
    display: block
}

.xn-component .xn-tile.xn-small xn-mypayments-component table tbody tr:not(.xn-footer) td:first-child {
    white-space: normal
}

.xn-component xn-lhreceipt-component {
    display: block;
    background-color: #fff;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin: 0;
    padding: 0
}

.xn-component xn-lhreceipt-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-lhreceipt-component .xn-heading,.xn-component xn-lhreceipt-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-lhreceipt-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-lhreceipt-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

@media(max-width: 767px) {
    .xn-component xn-lhreceipt-component table thead {
        display:none
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:first-child:before {
        content: "Item";
        text-align: left;
        display: block;
        width: 85px;
        font-weight: 700
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Price";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Qty";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-lhreceipt-component table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-lhreceipt-component table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Item Total";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-lhreceipt-component table tfoot td {
        display: block
    }

    .xn-component xn-lhreceipt-component table tbody tr:not(.xn-footer) td span div {
        padding-left: 0!important
    }

    .xn-component xn-lhreceipt-component table tfoot tr .xn-total-text {
        display: none
    }

    .xn-component xn-lhreceipt-component table tfoot tr .xn-total:before {
        content: "Basket Total: "
    }
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table thead {
    display: none
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:first-child:before {
    content: "Item";
    text-align: left;
    display: block;
    width: 85px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Price";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "Qty";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Item Total";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tfoot td {
    display: block
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tbody tr:not(.xn-footer) td span div {
    padding-left: 0!important
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tfoot tr .xn-total-text {
    display: none
}

.xn-component .xn-tile.xn-small xn-lhreceipt-component table tfoot tr .xn-total:before {
    content: "Basket Total: "
}

.xn-component xn-myMemberships-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-myMemberships-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-myMemberships-component .xn-heading,.xn-component xn-myMemberships-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-myMemberships-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-myMemberships-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-myMemberships-component .xn-heading {
    display: none
}

.xn-component xn-myMemberships-component .xn-dd-guarantee {
    margin-top: 16px
}

.xn-component xn-myMemberships-component .xn-memberships-link {
    margin-top: 8px
}

.xn-component xn-myMemberships-component table tbody tr td:nth-child(6) {
    text-align: right
}

.xn-component xn-myMemberships-component table tbody tr td:nth-child(2),.xn-component xn-myMemberships-component table tbody tr td:nth-child(3),.xn-component xn-myMemberships-component table tbody tr td:nth-child(4),.xn-component xn-myMemberships-component table tbody tr td:nth-child(5),.xn-component xn-myMemberships-component table thead tr th:nth-child(2),.xn-component xn-myMemberships-component table thead tr th:nth-child(3),.xn-component xn-myMemberships-component table thead tr th:nth-child(4),.xn-component xn-myMemberships-component table thead tr th:nth-child(5) {
    text-align: center
}

.xn-component xn-myMemberships-component table tbody tr td:nth-child(5) .xn-added-by {
    font-size: 0
}

.xn-component xn-myMemberships-component table tbody tr td:nth-child(5) .xn-added-by:after,.xn-component xn-myMemberships-component table tbody tr td:nth-child(5) .xn-added-by:before {
    font-family: fontAwesome;
    font-size: 1rem;
    content: "ï‚•";
    color: #2d393b
}

.xn-component xn-myMemberships-component table tbody tr td:nth-child(5) .xn-added-by:after {
    padding-left: 4px;
    content: "ï€‡"
}

.xn-component xn-myMemberships-component table.xn-has-staff-portal tbody tr td:nth-child(5),.xn-component xn-myMemberships-component table.xn-has-staff-portal thead tr th:nth-child(5) {
    display: block
}

@media(max-width: 767px) {
    .xn-component xn-myMemberships-component .xn-myMemberships-group table thead {
        display:none
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:first-child:before {
        content: "Membership";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Start Date";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Expiry Date";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Status";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component xn-myMemberships-component .xn-myMemberships-group table tfoot td {
        display: block
    }
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table thead,.xn-component xn-myMemberships-component .xn-harlandsFlexPortal-link {
    display: none
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:first-child:before {
    content: "Membership";
    text-align: left;
    display: inline-block;
    width: 120px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Start Date";
    text-align: left;
    display: inline-block;
    width: 120px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "Expiry Date";
    text-align: left;
    display: inline-block;
    width: 120px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Status";
    text-align: left;
    display: inline-block;
    width: 120px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-myMemberships-component .xn-myMemberships-group table tfoot td {
    display: block
}

.xn-component #xn-confirm-harlands-cancellation-modal .xn-buttons .xn-button {
    margin-left: 8px
}

.xn-component #xn-confirm-harlands-cancellation-modal .xn-buttons .xn-button:first-child {
    margin-left: 0
}

@media(max-width: 767px) {
    .xn-component #xn-confirm-harlands-cancellation-modal .xn-buttons {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .xn-component #xn-confirm-harlands-cancellation-modal .xn-buttons .xn-button {
        width: 100%;
        margin: 0 0 8px
    }
}

@keyframes scaling {
    0% {
        transform: scale(1)
    }

    70% {
        transform: scale(1.3)
    }

    to {
        transform: scale(1.3)
    }
}

.xn-component xn-notices-component .xn-notice-toggle {
    display: inline-block;
    width: 38px;
    height: 38px;
    background: #fff;
    margin-right: 8px;
    border-radius: 3px;
    cursor: pointer;
    color: #000
}

.xn-component xn-notices-component .xn-notice-toggle:before {
    font-family: fontAwesome;
    display: block;
    content: "ï‚¢";
    font-weight: 700;
    margin: 9px 11px
}

.xn-component xn-notices-component .xn-notice-toggle.xn-expanded:before {
    content: "ï‚¢"
}

.xn-component xn-notices-component .xn-notice-toggle.xn-expanded:after {
    content: " ";
    display: block;
    width: 16px;
    height: 16px;
    background: #fff;
    position: relative;
    left: 11px;
    top: 7px;
    transform: rotate(45deg)
}

.xn-component xn-notices-component .xn-notice-toggle.xn-has-alerts {
    background: #c62828;
    color: #fff
}

.xn-component xn-notices-component .xn-notice-toggle.xn-has-warnings {
    background: #ef6c00;
    color: #fff
}

.xn-component xn-notices-component .xn-notice-toggle.xn-has-informational {
    background: #fff;
    color: #000
}

.xn-component xn-notices-component .xn-notice-toggle.xn-has-unread-notices:before {
    animation: scaling .4s infinite alternate
}

.xn-component xn-notices-component .xn-notice-toggle.xn-has-unread-notices.xn-expanded:before {
    animation: none
}

.xn-component xn-notices-component .xn-notices .xn-notice-list {
    display: none;
    position: absolute;
    top: 56px;
    right: 32px;
    width: 380px;
    background-color: #fff;
    padding: 8px 8px 0;
    border-radius: 3px;
    box-shadow: 10px 10px 38px -21px rgba(0,0,0,.75);
    max-height: 70vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
}

.xn-component xn-notices-component .xn-notices .xn-notice-list ul.xn-grid>li {
    flex: 0 0 100%
}

.xn-component xn-notices-component .xn-notices .xn-notice-list ul.xn-grid>li xn-notice-component {
    margin: 0 0 8px;
    padding: 0
}

.xn-component xn-notices-component .xn-notices .xn-notice-list.xn-expanded {
    display: block
}

.xn-component xn-notices-component .xn-notices .xn-notice-list .my-notifications {
    background-color: #e9530e;
    color: #fff;
    display: block;
    width: 100%;
    text-decoration: none;
    border-radius: 5px;
    margin-bottom: 8px;
    position: relative;
    padding: 12px 8px 12px 51px;
    cursor: pointer;
    border: 0
}

.xn-component xn-notices-component .xn-notices .xn-notice-list .my-notifications:hover {
    background-color: #b9420b
}

.xn-component xn-notices-component .xn-notices .xn-notice-list .my-notifications:before {
    font-family: fontAwesome;
    content: "ï‚¢";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 43px;
    padding: 10px 14px;
    background-color: #2d393b;
    border-radius: 5px 0 0 5px
}

@media screen and (max-width: 1024px) {
    .xn-component xn-notices-component .xn-notices .xn-notice-list {
        position:fixed;
        left: 8px;
        height: calc(100vh - 112px);
        max-height: 100vh;
        width: calc(100vw - 16px)
    }
}

.xn-component xn-notices-component .xn-alerts {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 100
}

.xn-component xn-notices-component .xn-alerts .xn-notice-list {
    width: 600px
}

.xn-component xn-notices-component .xn-alerts .xn-notice-list xn-notice-component {
    padding: 0
}

.xn-component xn-notice-component {
    display: block;
    background-color: #fff;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: auto;
    margin: 8px;
    padding: 0 8px
}

.xn-component xn-notice-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-notice-component .xn-heading,.xn-component xn-notice-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-notice-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-notice-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-notice-component xn-card-component .xn-card {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: 0
}

.xn-component xn-notice-component xn-card-component .xn-card.xn-notice-warning .xn-heading {
    background-color: #ef6c00
}

.xn-component xn-notice-component xn-card-component .xn-card.xn-notice-alert .xn-heading {
    background-color: #c62828
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-heading {
    white-space: normal;
    width: 80%;
    margin-left: 20%;
    padding: 16px 32px 16px 16px;
    border-radius: 0 3px 0 0
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-image {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 20%;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%;
    box-shadow: inset -10px 0 16px -4px rgba(0,0,0,.75);
    border-radius: 3px 0 0 3px
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-content {
    margin-left: 20%;
    width: 80%
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-do-not-show {
    margin-left: 20%;
    width: 80%;
    font-size: .8rem
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-do-not-show label {
    color: #000
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-buttons {
    padding: 0;
    width: 100%;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    padding: 16px 0 0!important;
    margin: 16px 16px 16px 20%
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-buttons .xn-button {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    margin: 0 0 0 16px
}

@media screen and (max-width: 1024px) {
    .xn-component xn-notice-component xn-card-component .xn-card .xn-buttons {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        margin-left: 16px
    }

    .xn-component xn-notice-component xn-card-component .xn-card .xn-buttons .xn-button {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        margin: 16px 0 0
    }
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-close {
    position: absolute;
    top: 4px;
    right: 0;
    padding: 8px 10px;
    cursor: pointer
}

.xn-component xn-notice-component xn-card-component .xn-card .xn-close:before {
    font-family: fontAwesome;
    content: "ï€";
    color: #fff;
    padding: 4px 6px;
    background: rgba(0,0,0,.3);
    border-radius: 32px
}

@media screen and (max-width: 1024px) {
    xn-notice-component xn-card-component .xn-card .xn-image {
        right:0;
        height: 120px;
        width: 100%;
        box-shadow: inset 0 -10px 16px -4px rgba(0,0,0,.75);
        border-radius: 3px 3px 0 0
    }

    xn-notice-component xn-card-component .xn-card .xn-heading {
        margin-top: 120px;
        width: 100%;
        margin-left: 0
    }

    xn-notice-component xn-card-component .xn-card .xn-content,.xn-component xn-notice-component xn-card-component .xn-card .xn-do-not-show {
        width: 100%;
        margin-left: 0
    }

    xn-notice-component xn-card-component .xn-card .xn-do-not-show label {
        color: #000
    }
}

.xn-component xn-notice-component xn-card-component .xn-card.xn-no-image .xn-content,.xn-component xn-notice-component xn-card-component .xn-card.xn-no-image .xn-heading {
    margin-left: 0;
    width: 100%
}

.xn-component xn-notice-component xn-card-component .xn-card.xn-no-image .xn-image {
    display: none
}

.xn-component xn-notice-component xn-card-component .xn-card.xn-no-image .xn-do-not-show {
    margin-left: 0;
    width: 100%
}

.xn-component xn-notice-component xn-card-component .xn-card.xn-no-image .xn-do-not-show label {
    color: #000
}

@media screen and (max-width: 1024px) {
    .xn-component xn-notice-component xn-card-component .xn-card.xn-no-image .xn-heading {
        margin-top:0
    }
}

.xn-component xn-notices-component .xn-jump-to-options,.xn-component xn-notices-component .xn-notices-title {
    display: none
}

.xn-component xn-paymentxnpay-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-paymentxnpay-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-paymentxnpay-component .xn-heading,.xn-component xn-paymentxnpay-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-paymentxnpay-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-paymentxnpay-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-personname-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-personname-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-personname-component .xn-heading,.xn-component xn-personname-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-personname-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-personname-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-personsearch-component .xn-card-no,.xn-component xn-personsearch-component .xn-dob,.xn-component xn-personsearch-component .xn-email-address,.xn-component xn-personsearch-component .xn-forenames,.xn-component xn-personsearch-component .xn-postcode,.xn-component xn-personsearch-component .xn-surname {
    margin-bottom: 8px
}

.xn-component xn-personsearch-component .xn-card-no label,.xn-component xn-personsearch-component .xn-dob label,.xn-component xn-personsearch-component .xn-email-address label,.xn-component xn-personsearch-component .xn-forenames label,.xn-component xn-personsearch-component .xn-postcode label,.xn-component xn-personsearch-component .xn-surname label {
    font-weight: 700;
    display: inline-block;
    width: 120px
}

.xn-component xn-personsearch-component .xn-card-no div,.xn-component xn-personsearch-component .xn-dob div,.xn-component xn-personsearch-component .xn-email-address div,.xn-component xn-personsearch-component .xn-forenames,.xn-component xn-personsearch-component .xn-forenames div,.xn-component xn-personsearch-component .xn-postcode div,.xn-component xn-personsearch-component .xn-surname div {
    display: inline-block
}

.xn-component xn-personsearch-component .xn-forenames label {
    font-size: 0
}

.xn-component xn-personsearch-component .xn-forenames label:before {
    font-size: 1rem;
    display: inline-block;
    content: "Name";
    font-weight: 700;
    width: 120px
}

.xn-component xn-personsearch-component .xn-surname {
    display: inline-block
}

.xn-component xn-personsearch-component .xn-surname label {
    display: none
}

.xn-component xn-personsearch-component .xn-alert {
    margin-bottom: 20px
}

.xn-component xn-personsearch-component xn-datepicker-component {
    width: 100%
}

.xn-component xn-personsearch-component xn-datepicker-component .xn-date {
    display: flex;
    justify-content: space-between
}

.xn-component xn-personsearch-component xn-datepicker-component .xn-date select {
    flex: 0 0 auto
}

.xn-component xn-personsearch-component xn-datepicker-component .xn-date select.xn-month {
    width: calc(50% - 8px);
    max-width: calc(50% - 8px)
}

.xn-component xn-personsearch-component xn-datepicker-component .xn-date select.xn-day,.xn-component xn-personsearch-component xn-datepicker-component .xn-date select.xn-year {
    width: calc(25% - 8px);
    max-width: calc(25% - 8px)
}

.xn-component xn-personsearch-component .xn-buttons {
    padding-bottom: 0!important
}

.xn-component xn-personsearch-component .xn-buttons .xn-button {
    margin-top: 0!important
}

.xn-component #xn-confirm-linking-modal .xn-buttons .xn-button {
    margin-left: 8px
}

.xn-component #xn-confirm-linking-modal .xn-buttons .xn-button:first-child {
    margin-left: 0
}

@media(max-width: 767px) {
    .xn-component #xn-confirm-linking-modal .xn-buttons {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .xn-component #xn-confirm-linking-modal .xn-buttons .xn-button {
        width: 100%;
        margin: 0 0 8px
    }
}

.xn-component xn-profile-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-profile-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-profile-component .xn-heading,.xn-component xn-profile-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-profile-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-profile-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-profile-component legend {
    font-size: 18px
}

.xn-component xn-profile-component .xn-person-search-link {
    cursor: pointer;
    border-bottom: 1px solid #e9530e
}

.xn-component xn-profile-component .xn-person-search-link:hover {
    color: #fff
}

.xn-component xn-profile-component .xn-loading {
    margin-bottom: 16px
}

.xn-component xn-profile-component #xn-title-group {
    width: -webkit-calc(20% - 8px);
    width: calc(20% - 8px);
    max-width: -webkit-calc(20% - 8px);
    max-width: calc(20% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-title-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtFirstName-group {
    width: -webkit-calc(40% - 8px);
    width: calc(40% - 8px);
    max-width: -webkit-calc(40% - 8px);
    max-width: calc(40% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtFirstName-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-SurName-group {
    width: 40%;
    max-width: 40%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-SurName-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-gender-group {
    width: 100%;
    margin-top: 25px;
    padding-top: 15px;
    border-top: 1px solid #e6e7e8;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e6e7e8
}

.xn-component xn-profile-component #xn-gender-group .xn-options label {
    display: inline-block;
    margin-right: 8px
}

.xn-component xn-profile-component #xn-dob-day {
    width: -webkit-calc(25% - 8px);
    width: calc(25% - 8px);
    max-width: -webkit-calc(25% - 8px);
    max-width: calc(25% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 370px) {
    .xn-component xn-profile-component #xn-dob-day {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-dob-month {
    width: -webkit-calc(50% - 8px);
    width: calc(50% - 8px);
    max-width: -webkit-calc(50% - 8px);
    max-width: calc(50% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 370px) {
    .xn-component xn-profile-component #xn-dob-month {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-dob-year {
    width: 25%;
    max-width: 25%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 370px) {
    .xn-component xn-profile-component #xn-dob-year {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtAddress1-group {
    width: -webkit-calc(50% - 8px);
    width: calc(50% - 8px);
    max-width: -webkit-calc(50% - 8px);
    max-width: calc(50% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtAddress1-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtAddress2-group {
    width: 50%;
    max-width: 50%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtAddress2-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtTown-group {
    width: -webkit-calc(50% - 8px);
    width: calc(50% - 8px);
    max-width: -webkit-calc(50% - 8px);
    max-width: calc(50% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtTown-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtCounty-group {
    width: 50%;
    max-width: 50%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtCounty-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtPostCode-group {
    width: 100%;
    max-width: 100%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left;
    margin-top: 16px
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtPostCode-group {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtPostCode-group .xn-inputs input {
    width: -webkit-calc(50% - 8px);
    width: calc(50% - 8px);
    max-width: -webkit-calc(50% - 8px);
    max-width: calc(50% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtPostCode-group .xn-inputs input {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtPostCode-group .xn-inputs .xn-buttons {
    padding: 0
}

.xn-component xn-profile-component #xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button:last-child {
    margin-left: 8px
}

.xn-component xn-profile-component #xn-txtPostCode-group .xn-inputs .xn-alert {
    margin: 16px 0 0
}

.xn-component xn-profile-component #xn-txtAddressChoice-group {
    width: 100%
}

.xn-component xn-profile-component #xn-txtAddressChoice-group select {
    width: -webkit-calc(50% - 8px);
    width: calc(50% - 8px);
    max-width: -webkit-calc(50% - 8px);
    max-width: calc(50% - 8px);
    margin-right: 8px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtAddressChoice-group select {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-txtAddressChoice-group button {
    width: auto;
    max-width: auto;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    float: left
}

@media(max-width: 767px) {
    .xn-component xn-profile-component #xn-txtAddressChoice-group button {
        -webkit-box-flex:0;
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 8px;
        float: none
    }
}

.xn-component xn-profile-component #xn-contactBy-group {
    width: 100%
}

.xn-component xn-profile-component #xn-chkTwoFactorAuthentication-group label {
    -webkit-flex-basis: auto;
    flex-basis: auto
}

.xn-component xn-profile-component #xn-contactTelephoneNumber-group {
    padding-bottom: 25px;
    border-bottom: 1px solid #e6e7e8
}

.xn-component .xn-tile.xn-small xn-profile-component #xn-dob-day,.xn-component .xn-tile.xn-small xn-profile-component #xn-dob-month,.xn-component .xn-tile.xn-small xn-profile-component #xn-dob-year {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    margin-right: 0
}

.xn-component .xn-profile-information {
    margin: 0 8px;
    padding: 8px
}

.xn-component #xn-chkTwoFactorAuthentication-group {
    border: 0
}

.xn-component #xn-chkTwoFactorAuthentication-group label {
    width: auto
}

.xn-component lh-qrcode-component,.xn-component xn-qrcode-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component lh-qrcode-component .image,.xn-component xn-qrcode-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component lh-qrcode-component .xn-heading,lh-qrcode-component legend,.xn-component xn-qrcode-component .xn-heading,.xn-component xn-qrcode-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component lh-qrcode-component>xn-card-component .xn-card,.xn-component xn-qrcode-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component lh-qrcode-component>xn-card-component .xn-card .xn-heading,.xn-component xn-qrcode-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component lh-qrcode-component .xn-qr-code,.xn-component xn-qrcode-component .xn-qr-code {
    margin: 0 auto;
    border: 5px solid #fff
}

.xn-component lh-qrcode-component .qrcode,.xn-component xn-qrcode-component .qrcode {
    padding-top: 15px;
    padding-bottom: 15px
}

.xn-component lh-qrcode-component .xn-qr-code-description,.xn-component xn-qrcode-component .xn-qr-code-description {
    text-align: center;
    margin-bottom: 15px;
    font-weight: 400;
    font-size: 1rem
}

.xn-component lh-qrcode-component .xn-qr-code-content,.xn-component xn-qrcode-component .xn-qr-code-content {
    text-align: center;
    margin-top: 15px;
    font-weight: 400;
    font-size: 1rem
}

.xn-component lh-qrcode-component .xn-qr-code-error,.xn-component xn-qrcode-component .xn-qr-code-error {
    text-align: center;
    margin-top: 15px;
    font-weight: 400;
    font-size: 1rem;
    display: block
}

.xn-component xn-restrictions-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-restrictions-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-restrictions-component .xn-heading,.xn-component xn-restrictions-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-restrictions-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-restrictions-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-savefilter-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    justify-content: space-between
}

.xn-component xn-savefilter-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-savefilter-component .xn-heading,.xn-component xn-savefilter-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-savefilter-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-savefilter-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-savefilter-component>div:not(.xn-modal) {
    padding-bottom: 25px
}

.xn-component xn-savefilter-component>div:not(.xn-modal) fieldset {
    width: 100%;
    display: flex;
    flex-flow: wrap
}

.xn-component xn-savefilter-component>div:not(.xn-modal) .xn-heading {
    font-size: 1px;
    color: transparent;
    display: none
}

.xn-component xn-savefilter-component>div:not(.xn-modal) .xn-heading:before {
    display: inline-block;
    content: "Saved Filters";
    font-size: 1.25rem;
    font-weight: 800;
    padding-bottom: 10px
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-flow: wrap
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group>label {
    display: none
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group label {
    flex-grow: 0;
    font-size: .875rem;
    font-weight: 400
}

@media screen and (max-width: 516px) {
    .xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group label {
        width:100%;
        padding-bottom: 10px
    }
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-current-filter {
    margin-bottom: 8px;
    display: flex
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-current-filter .xn-current-filter-label {
    font-weight: 700
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-current-filter .xn-select-filter {
    display: inline-block;
    padding: 2px 8px;
    font-size: .9rem;
    position: relative;
    top: -2px;
    margin-left: 4px
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-current-filter .xn-button.xn-cta {
    margin-left: 8px;
    margin-top: -4px;
    font-size: .875rem;
    padding: 4px 8px
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group #xn-saved-search-group {
    padding: 0 8px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group #xn-saved-search-group #xn-save-filter {
    margin-right: 8px
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-input-group {
    flex-grow: 1;
    margin: 0 30px;
    padding: 0!important
}

@media screen and (max-width: 809px) {
    .xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-input-group {
        margin:0 0 0 30px
    }
}

@media screen and (max-width: 516px) {
    .xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-input-group {
        margin:0
    }
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-input-group #xn-save-filter {
    width: 100%;
    height: 26px;
    padding: 0 20px;
    font-size: .875rem;
    border-radius: 0!important
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-input-group .xn-button {
    display: inline-block;
    padding: 6px 20px;
    border: 0;
    font-weight: 400;
    font-size: .75rem;
    width: 100px;
    text-align: center;
    text-transform: none
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons {
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(100px,1fr));
    grid-gap: 8px;
    flex-grow: 0
}

@media screen and (max-width: 809px) {
    .xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons {
        padding-top:20px;
        width: 100%
    }
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button {
    background: 0;
    padding: 0;
    font-size: .75rem;
    margin: 0
}

@media screen and (max-width: 809px) {
    .xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button {
        width:100%
    }
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button:before {
    font-family: FontAwesome;
    margin-right: 5px;
    font-size: 1rem;
    vertical-align: -1px
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button:first-child {
    margin-right: 20px
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button:first-child:before {
    content: "ïƒ‡"
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button:nth-child(2):before {
    content: "ï€¡"
}

.xn-component #xn-confirm-delete-modal .xn-buttons .xn-button,.xn-component #xn-saved-search-modal .xn-buttons .xn-button {
    margin-left: 8px
}

.xn-component #xn-confirm-delete-modal .xn-buttons .xn-button:first-child,.xn-component #xn-saved-search-modal .xn-buttons .xn-button:first-child {
    margin-left: 0
}

@media(max-width: 767px) {
    .xn-component #xn-confirm-delete-modal .xn-buttons,.xn-component #xn-saved-search-modal .xn-buttons {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .xn-component #xn-confirm-delete-modal .xn-buttons .xn-button,.xn-component #xn-saved-search-modal .xn-buttons .xn-button {
        width: 100%;
        margin: 0 0 8px
    }
}

.xn-component #xn-saved-search-modal table tbody tr td-first-child {
    width: 80%
}

.xn-component #xn-saved-search-modal table tbody tr td:nth-child(2),.xn-component #xn-saved-search-modal table tbody tr td:nth-child(3) {
    width: 10%;
    text-align: right
}

.xn-component #xn-saved-search-modal table thead tr th {
    padding: 22px 12px 22px 0!important
}

.xn-component #xn-saved-search-modal table thead tr th:last-of-type {
    padding-right: 0!important
}

.xn-component #xn-saved-search-modal table tbody tr td {
    font-weight: 500;
    font-size: .875rem;
    padding: 5px 12px 5px 0!important
}

.xn-component #xn-saved-search-modal table tbody tr td:last-of-type {
    padding-right: 0!important;
    text-align: right
}

.xn-component #xn-saved-search-modal table tbody tr td .xn-button {
    padding: 3px 15px!important;
    border-radius: 26px!important;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none
}

.xn-component #xn-confirm-delete-modal .xn-button {
    margin-top: 10px;
    min-width: 0
}

.xn-component xn-selectsite-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: auto
}

.xn-component xn-selectsite-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-selectsite-component .xn-heading,.xn-component xn-selectsite-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-selectsite-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-selectsite-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-selectsite-component #xn-change-site-group {
    margin-bottom: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 25px
}

.xn-component xn-selectsite-component #xn-change-site-group label {
    flex-basis: auto;
    margin: 0;
    padding: 0;
    font-size: .875rem;
    font-weight: 400
}

.xn-component xn-selectsite-component #xn-change-site-group label:before {
    font-family: fontAwesome;
    content: "ï";
    margin-right: 10px;
    font-size: 1.2rem
}

.xn-component xn-selectsite-component #xn-change-site-group label>span {
    display: block;
    font-weight: 800;
    font-size: 1.375rem;
    padding-top: 10px
}

.xn-component xn-selectsite-component #xn-change-site-group .xn-buttons {
    width: 100%;
    padding: 0;
    flex-basis: auto;
    flex-grow: 0;
    margin: 0
}

.xn-component xn-selectsite-component #xn-change-site-group .xn-buttons .xn-button {
    display: inline-block;
    padding: 8px 20px;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    width: 150px;
    text-align: center;
    text-transform: none
}

.xn-component xn-selectsite-component .xn-modal .xn-detail {
    margin-bottom: 0!important
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form select {
    width: 100%;
    height: 32px;
    padding: 0 20px;
    font-size: 1rem;
    border-radius: 0!important
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form select[multiple] {
    height: auto
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form .xn-buttons {
    margin-top: 25px!important;
    padding-top: 20px!important;
    padding-bottom: 10px!important
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form .xn-buttons .xn-button {
    margin: 0!important
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+input+label,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+label {
    font-size: .875rem;
    font-weight: 600;
    padding: 0;
    width: 100%;
    text-transform: none
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+input+label a,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+label a {
    border: 0
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+input+label:before,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+label:before {
    vertical-align: -2px
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+input+label .xn-tick,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+label .xn-tick {
    margin-right: 10px;
    border-radius: 0!important;
    height: 16px;
    width: 16px;
    vertical-align: 2px;
    padding: 0
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+input+label .xn-tick:before,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+label .xn-tick:before {
    width: 10px;
    margin: -3px 0 0 2px
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form #xn-site-selector {
    margin: 15px 0 5px
}

.xn-component xn-suggestionlist-component {
    display: block;
    background-color: #fff;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin: 8px;
    padding: 0
}

.xn-component xn-suggestionlist-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-suggestionlist-component .xn-heading,.xn-component xn-suggestionlist-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-suggestionlist-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-suggestionlist-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-suggestionlist-component .xn-title {
    color: #e9530e;
    font-weight: 700;
    font-size: 1.5rem
}

.xn-component xn-suggestionsitelist-component {
    background: 0
}

.xn-component xn-suggestionsitelist-component xn-header {
    padding: 32px 0
}

.xn-component xn-suggestionsitelist-component xn-activitysuggestion-component {
    width: 100%
}

.xn-component xn-suggestionsitelist-component .xn-suggestions-grid {
    margin: 0 10px
}

.xn-component xn-suggestionsitelist-component .xn-suggestions-no-result {
    margin: 8px 10px;
    font-weight: 400;
    font-size: 16px
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-heading {
    font-weight: 300!important;
    font-size: 1.25rem!important;
    text-align: left!important;
    padding: 25px 15px 20px!important
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-content {
    display: none
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-information {
    padding: 16px 16px 0
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-information:empty {
    padding: 0
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-buttons {
    margin-top: auto;
    padding: 0 15px 25px!important;
    display: block
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-buttons .xn-button {
    display: inline-block;
    padding: 6px 30px;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none;
    width: auto
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-card .xn-image {
    background-image: url(gym.7e5ef855.jpeg)
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-card .xn-image.xn-img-football {
    background-image: url(football.352eec83.jpeg)
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-card .xn-image.xn-img-swimming {
    background-image: url(swimming.81a7f168.jpeg)
}

.xn-component xn-suggestionsitelist-component xn-card-component .xn-card .xn-image.xn-img-gym {
    background-image: url(gym.7e5ef855.jpeg)
}

.xn-component xn-termsandconditions-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-termsandconditions-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-termsandconditions-component .xn-heading,.xn-component xn-termsandconditions-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-termsandconditions-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-termsandconditions-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-basketcheckout-component {
    margin: 8px;
    padding: 8px;
    max-width: 100%
}

.xn-component xn-basketcheckout-component xn-termsandconditions-component {
    margin: 0
}

.xn-component xn-basketcheckout-component .xn-buttons .xn-button {
    display: inline-block;
    margin: 30px auto;
    padding: 11px 40px;
    border: 0;
    font-weight: 400;
    font-size: 1.2rem;
    min-width: 260px;
    text-align: center;
    text-transform: none
}

.xn-component xn-dedicatedtimetable-component {
    display: block;
    background-color: #fff;
    margin: 8px;
    padding: 8px;
    max-width: 100%;
    border-radius: 3px;
    height: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: flex;
    flex-wrap: wrap
}

.xn-component xn-dedicatedtimetable-component .image {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
    margin: 26px auto 0;
    max-width: 550px;
    min-height: 300px;
    padding: 24px;
    position: relative;
    width: 80%
}

.xn-component xn-dedicatedtimetable-component .xn-heading,.xn-component xn-dedicatedtimetable-component legend {
    font-size: 14px;
    color: #000;
    font-weight: 600;
    padding: 0
}

.xn-component xn-dedicatedtimetable-component>xn-card-component .xn-card {
    margin: 0
}

.xn-component xn-dedicatedtimetable-component>xn-card-component .xn-card .xn-heading {
    text-align: left
}

.xn-component xn-dedicatedtimetable-component>table tr.xn-selected {
    font-weight: 600
}

.xn-component xn-dedicatedtimetable-component>table tbody tr td.xn-actions {
    text-align: right
}

.xn-component xn-dedicatedtimetable-component>xn-day-selector ul {
    margin-top: 16px
}

@media(max-width: 767px) {
    .xn-component xn-dedicatedtimetable-component>table thead {
        display:none
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0;
        margin-top: 8px;
        font-size: 18px;
        border-bottom: 1px solid #cdcdcd
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Date";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Places";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Price";
        text-align: left;
        display: inline-block;
        width: 90px;
        font-weight: 700
    }

    .xn-component xn-dedicatedtimetable-component>table tfoot td {
        display: block
    }
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group {
    width: 50%
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+input+label,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+label {
    font-size: 1rem;
    font-weight: 600;
    padding: 0;
    width: 100%;
    text-transform: none
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+input+label a,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+label a {
    border: 0
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+input+label:before,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+label:before {
    vertical-align: -2px
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+input+label .xn-tick,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+label .xn-tick {
    margin-right: 10px;
    border-radius: 0!important;
    height: 16px;
    width: 16px;
    vertical-align: 2px;
    padding: 0
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+input+label .xn-tick:before,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+label .xn-tick:before {
    width: 10px;
    margin: -3px 0 0 2px
}

.xn-component xn-dedicatedtimetable-component xn-day-selector {
    width: 100%
}

.xn-component xn-dedicatedtimetable-component xn-day-selector:before {
    display: block;
    content: "Select a date";
    font-weight: 800;
    padding-top: 5px
}

.xn-component xn-dedicatedtimetable-component>p {
    font-weight: 300;
    font-size: 1rem;
    margin: 0;
    padding: 25px 0
}

.xn-component xn-dedicatedtimetable-component>table thead tr th {
    padding: 22px 12px 22px 0!important
}

.xn-component xn-dedicatedtimetable-component>table thead tr th:last-of-type {
    padding-right: 0!important
}

.xn-component xn-dedicatedtimetable-component>table tbody tr td {
    font-weight: 500;
    font-size: 1rem;
    padding: 22px 12px 22px 0!important
}

.xn-component xn-dedicatedtimetable-component>table tbody tr td:last-of-type {
    padding-right: 0!important
}

.xn-component xn-dedicatedtimetable-component>table tbody tr td .xn-button {
    padding: 3px 15px!important;
    border-radius: 26px!important;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none
}

.xn-component xn-dedicatedtimetable-component>table tbody tr.xn-selected td:first-of-type {
    padding-left: 20px!important
}

.xn-component xn-dedicatedtimetable-component>table tbody tr.xn-selected td:last-of-type {
    padding-right: 20px!important
}

.xn-component xn-dedicatedtimetable-component>form {
    width: 100%
}

.xn-component xn-dedicatedtimetable-component>form .xn-buttons {
    border-top: 0;
    margin: 0
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table thead {
    display: none
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:first-child {
    text-align: left!important;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0;
    margin-top: 8px;
    font-size: 18px;
    border-bottom: 1px solid #cdcdcd
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(2) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(2):before {
    content: "Date";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(3) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(3):before {
    content: "Places";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr.xn-footer td {
    display: inline-block
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr {
    padding: 8px 0;
    display: block
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td {
    display: block;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(4) {
    text-align: left!important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tbody tr:not(.xn-footer) td:nth-child(4):before {
    content: "Price";
    text-align: left;
    display: inline-block;
    width: 90px;
    font-weight: 700
}

.xn-component .xn-tile.xn-small xn-dedicatedtimetable-component>table tfoot td {
    display: block
}

.xn-component xn-day-selector>ul {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    list-style-type: none;
    padding: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    height: 60px;
    margin: 0 0 20px
}

.xn-component xn-day-selector>ul>li {
    -webkit-flex-basis: auto;
    flex: 1 1 auto;
    text-align: left;
    padding: 8px;
    cursor: pointer;
    border: 1px solid #e6e6e6;
    border-left-width: 0;
    overflow: hidden;
    color: #b9babc
}

.xn-component xn-day-selector>ul>li:nth-child(2) {
    border-width: 1px
}

.xn-component xn-day-selector>ul>li .name {
    font-weight: 700;
    font-size: large;
    white-space: nowrap
}

.xn-component xn-day-selector>ul>li .date {
    font-size: medium;
    white-space: nowrap
}

.xn-component xn-day-selector>ul>li.selected {
    color: #293651;
    border-bottom: 0
}

.xn-component xn-day-selector>ul>li:hover:not(.prev-week):not(.next-week):not(.calendar):not(.selected) {
    color: #324164
}

.xn-component xn-day-selector>ul>li.next-week,.xn-component xn-day-selector>ul>li.prev-week {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 60px;
    flex: 0 0 60px;
    border-left: none;
    border-right: 0;
    border-top: 0;
    padding: 18px 16px;
    text-align: center
}

.xn-component xn-day-selector>ul>li.next-week:before,.xn-component xn-day-selector>ul>li.prev-week:before {
    font-family: fontAwesome;
    content: "ï“"
}

.xn-component xn-day-selector>ul>li.next-week:hover,.xn-component xn-day-selector>ul>li.prev-week:hover {
    color: #293651
}

.xn-component xn-day-selector>ul>li.next-week:before {
    content: "ï”"
}

.xn-component xn-day-selector>ul>li.calendar {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 55px;
    flex: 0 0 55px;
    padding: 13px 16px
}

.xn-component xn-day-selector>ul>li.calendar:before {
    font-family: fontAwesome;
    content: "ï³";
    font-size: 24px
}

.xn-component xn-day-selector>ul>li.calendar:hover {
    color: #293651
}

.xn-component xn-day-selector .day-selector {
    margin-top: 20px;
    height: auto;
    align-items: center
}

.xn-component xn-day-selector .day-selector li {
    margin-bottom: 0;
    padding: 0!important
}

.xn-component xn-day-selector .day-selector li.prev-week {
    border: 0;
    flex: 0 0 42px
}

.xn-component xn-day-selector .day-selector li.prev-week svg {
    margin: 0
}

.xn-component xn-day-selector .day-selector li.next-week {
    border: 0;
    flex: 0 0 50px;
    text-align: right
}

.xn-component xn-day-selector .day-selector li.next-week svg {
    padding: 10px 0 10px 10px;
    margin: 0
}

.xn-component xn-day-selector .day-selector li.calendar {
    order: 999;
    border: 0;
    flex: 0 0 50px;
    padding-left: 20px!important
}

.xn-component xn-day-selector .day-selector li.calendar svg {
    padding: 0 5px 2px 0;
    margin: 0
}

.xn-component xn-day-selector .day-selector li.day {
    border: 0;
    padding: 15px 25px!important;
    position: relative
}

.xn-component xn-day-selector .day-selector li.day .name {
    font-size: .875rem;
    padding-bottom: 3px
}

.xn-component xn-day-selector .day-selector li.day .date {
    font-size: .875rem
}

.xn-component xn-day-selector .day-selector li.day:before {
    content: "";
    position: absolute;
    right: 0;
    top: 10px;
    height: calc(100% - 20px);
    width: 1px
}

.xn-component xn-day-selector .day-selector li.day.selected:before,.xn-component xn-day-selector.mobile {
    display: none
}

.xn-component .xn-tile.xn-large xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: -webkit-calc(14.28571% - 25px);
    flex-basis: calc(14.28571% - 25px)
}

.xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+9) {
    display: none;
    display: inline-block
}

@media(max-width: 1008px) and (min-width:841px) {
    .xn-component .xn-tile.xn-large xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(16.66667% - 29.16667px);
        flex-basis: calc(16.66667% - 29.16667px)
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+8) {
        display: none
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 840px) and (min-width:721px) {
    .xn-component .xn-tile.xn-large xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(20% - 35px);
        flex-basis: calc(20% - 35px)
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+7) {
        display: none
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 720px) and (min-width:623px) {
    .xn-component .xn-tile.xn-large xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(25% - 43.75px);
        flex-basis: calc(25% - 43.75px)
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+6) {
        display: none
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 622px) and (min-width:527px) {
    .xn-component .xn-tile.xn-large xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(33.33333% - 58.33333px);
        flex-basis: calc(33.33333% - 58.33333px)
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+5) {
        display: none
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 526px) and (min-width:427px) {
    .xn-component .xn-tile.xn-large xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(50% - 87.5px);
        flex-basis: calc(50% - 87.5px)
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+4) {
        display: none
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 426px) and (min-width:0) {
    .xn-component .xn-tile.xn-large xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(100% - 175px);
        flex-basis: calc(100% - 175px)
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+3) {
        display: none
    }

    .xn-component .xn-tile.xn-large xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

.xn-component .xn-tile.xn-medium xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: -webkit-calc(20% - 35px);
    flex-basis: calc(20% - 35px)
}

.xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+7) {
    display: none
}

.xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+9) {
    display: inline-block
}

@media(max-width: 1024px) and (min-width:901px) {
    .xn-component .xn-tile.xn-medium xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(33.33333% - 58.33333px);
        flex-basis: calc(33.33333% - 58.33333px)
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+5) {
        display: none
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 900px) and (min-width:769px) {
    .xn-component .xn-tile.xn-medium xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(50% - 87.5px);
        flex-basis: calc(50% - 87.5px)
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+4) {
        display: none
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 768px) and (min-width:639px) {
    .xn-component .xn-tile.xn-medium xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(25% - 43.75px);
        flex-basis: calc(25% - 43.75px)
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+6) {
        display: none
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 638px) and (min-width:541px) {
    .xn-component .xn-tile.xn-medium xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(33.33333% - 58.33333px);
        flex-basis: calc(33.33333% - 58.33333px)
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+5) {
        display: none
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 540px) and (min-width:429px) {
    .xn-component .xn-tile.xn-medium xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(50% - 87.5px);
        flex-basis: calc(50% - 87.5px)
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+4) {
        display: none
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

@media(max-width: 428px) and (min-width:0) {
    .xn-component .xn-tile.xn-medium xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
        -webkit-box-flex:1;
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: -webkit-calc(100% - 175px);
        flex-basis: calc(100% - 175px)
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+3) {
        display: none
    }

    .xn-component .xn-tile.xn-medium xn-day-selector>ul li:nth-child(n+9) {
        display: inline-block
    }
}

.xn-component .xn-tile.xn-small xn-day-selector>ul>li:not(.prev-week):not(.next-week):not(.calendar) {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: -webkit-calc(100% - 175px);
    flex-basis: calc(100% - 175px)
}

.xn-component .xn-tile.xn-small xn-day-selector>ul li:nth-child(n+3) {
    display: none
}

.xn-component .xn-tile.xn-small xn-day-selector>ul li:nth-child(n+9) {
    display: inline-block
}

.xn-component xn-timetable-selector ul.timetable-selector {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    cursor: pointer;
    color: #fff;
    padding: 0;
    margin: 0 0 20px;
    width: 100%;
    border-radius: 3px 3px 0 0
}

.xn-component xn-timetable-selector ul.timetable-selector .selector {
    list-style-type: none;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    text-align: center;
    position: relative;
    overflow-y: hidden
}

.xn-component xn-timetable-selector ul.timetable-selector .selector:first-child {
    margin-left: 0
}

.xn-component xn-timetable-selector ul.timetable-selector .selector:last-child {
    margin-right: 0
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header {
    background-color: #f0f0f0;
    color: #324164;
    font-weight: 400;
    max-height: 70px;
    border-radius: 3px;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .name {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    order: 2;
    padding: 14px 4px;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: large;
    margin-left: 48px
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .dropdown {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    order: 3;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50px;
    visibility: hidden;
    padding: 14px;
    border-radius: 3px
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .dropdown:before {
    font-family: fontAwesome;
    content: "ï”"
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .dropdown:hover {
    background-color: #ea530e
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .filter {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    order: 1;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50px;
    visibility: hidden;
    padding: 14px;
    background-color: #2d393b;
    border-radius: 3px
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .filter .filter-svg {
    width: 22px;
    height: 22px
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .filter:hover {
    background-color: #e9530e
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header:hover {
    background-color: #e9530e;
    color: #fff
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header:hover .dropdown-svg {
    fill: #fff
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.is-dropdown .header {
    color: #ea530e
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.is-dropdown .header:hover {
    color: #fff
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.is-dropdown .dropdown {
    visibility: visible
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .header {
    background-color: #2d393b;
    color: #fff
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .header .name.has-note:after {
    content: "*"
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .header .dropdown-svg,.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .header .filter-svg {
    fill: #fff
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .header .filter.filters-available {
    visibility: visible;
    position: relative
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .header .filter.filters-available:hover {
    background-color: #e9530e
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile {
    display: block;
    color: #324164;
    font-size: 18px;
    font-weight: 400
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li {
    display: block;
    width: 100%;
    border-top: 1px solid #cdcdcd
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li:last-child {
    border-bottom: 1px solid #cdcdcd
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable {
    padding: 20px 32px 12px;
    display: block;
    width: 100%;
    line-height: 28px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .name {
    display: inline-block;
    width: 75%;
    margin: 0;
    vertical-align: top
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .filter {
    display: inline-block;
    width: 10%;
    text-align: center;
    margin: 0;
    visibility: hidden
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .filter .filter-svg {
    width: 28px;
    height: 28px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .filter.visible {
    visibility: visible
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expand,.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded {
    display: inline-block;
    float: right
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expand:after,.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded:after {
    font-family: fontAwesome;
    content: "ï¸"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded {
    display: none
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded:after {
    content: "ï¸"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker {
    padding: 10px 32px;
    width: 100%;
    display: block;
    background-color: #16acf1;
    font-weight: 300;
    margin-bottom: 0
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li {
    border: 0;
    max-height: 62px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .prev-day {
    display: inline-block;
    width: 10%;
    float: left;
    padding-top: 3px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .prev-day:after {
    font-family: fontAwesome;
    content: "ï“"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .date {
    display: inline-block;
    width: 80%;
    text-align: center;
    padding-top: 3px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .date .day {
    font-weight: 700
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .next-day {
    display: inline-block;
    width: 10%;
    float: right;
    text-align: right;
    padding-top: 3px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .next-day:after {
    font-family: fontAwesome;
    content: "ï”"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations {
    width: 100%;
    display: block;
    margin: 0;
    padding: 0;
    background-color: #76cef7
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li {
    border: 0
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location {
    display: block;
    padding: 20px 32px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .name {
    text-align: center;
    margin: 0;
    width: 60%;
    display: inline-block
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .collapse {
    display: inline-block;
    width: 20%;
    float: left;
    text-align: left;
    padding-top: 2px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .collapse:after {
    font-family: fontAwesome;
    content: "ï“"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .expand {
    display: none
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .expand:after {
    font-family: fontAwesome;
    content: "ï”"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li.collapsed .location .name {
    text-align: left
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li.collapsed .location .expand {
    display: inline-block;
    width: 20%;
    float: right;
    text-align: right;
    padding-top: 2px
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li.collapsed .location .collapse,.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li.collapsed ul.events {
    display: none
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events {
    padding: 0;
    background-color: #fff
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event {
    display: none;
    padding: 20px 32px;
    border-bottom: 1px solid #cdcdcd;
    font-weight: 700
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event:last-child {
    border-bottom: 0
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .times {
    display: block;
    width: 100%
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .title {
    font-weight: 300
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now {
    display: block
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now:before {
    content: "Book now";
    color: #e9530e
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event.unbookable .book-now:before {
    content: "More info"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .select {
    display: inline-block;
    float: right;
    text-align: right
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .select:after {
    font-family: fontAwesome;
    content: "ï”"
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event.visible {
    display: inline-block
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable-status {
    padding: 16px;
    text-align: center;
    font-weight: 300
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable-status:empty,.xn-component xn-timetable-selector ul.timetable-selector.mobile li.collapsed .timetable .expand,.xn-component xn-timetable-selector ul.timetable-selector.mobile li.collapsed .timetable-status,.xn-component xn-timetable-selector ul.timetable-selector.mobile li.collapsed ul.date-picker,.xn-component xn-timetable-selector ul.timetable-selector.mobile li.collapsed ul.locations {
    display: none
}

.xn-component xn-timetable-selector ul.timetable-selector.mobile li.collapsed .timetable .expanded {
    display: inline-block
}

.xn-component xn-timetable-selector .xn-popup .overlay .container .body ul.additional-timetables {
    list-style-type: none;
    padding: 0;
    text-align: center;
    font-size: 18px;
    display: grid;
    grid-template-columns: 100%;
    grid-gap: 8px
}

.xn-component xn-timetable-selector .xn-popup .overlay .container .body ul.additional-timetables li:not(.spacer) {
    padding: 12px;
    background-color: #2d393b;
    color: #fff;
    border-radius: 3px;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.xn-component xn-timetable-selector .xn-popup .overlay .container .body ul.additional-timetables li:not(.spacer):hover:not(.selected) {
    background-color: #ea530e
}

.xn-component xn-timetable-selector .xn-popup .overlay .container .body ul.additional-timetables li:not(.spacer) .name {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis
}

@media(max-width: 768px) {
    xn-timetable-selector ul.timetable-selector .selector:first-child {
        margin-left:0
    }

    xn-timetable-selector ul.timetable-selector .selector:last-child {
        margin-right: 0
    }
}

.xn-component xn-time-selector ul.time-selector {
    list-style-type: none;
    padding: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    margin: 0 0 20px;
    background-color: #f6f6f6;
    border-radius: 3px;
    font-size: large;
    height: 50px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-time-selector ul.time-selector li {
    text-align: center;
    -webkit-flex-basis: 51%;
    flex-basis: 51%;
    padding: 4px 0 0;
    cursor: pointer;
    line-height: 40px
}

.xn-component xn-time-selector ul.time-selector li.selected {
    background-color: #16acf1;
    font-weight: 700
}

.xn-component xn-time-selector ul.time-selector li.selected+li,.xn-component xn-time-selector ul.time-selector li.selected+li+li {
    background-color: #76cef7
}

.xn-component xn-time-selector ul.time-selector li:hover {
    background-color: #76cef7;
    font-weight: 700
}

.xn-component xn-time-selector ul.time-selector li.earlier {
    flex: 0 0 auto;
    width: 120px;
    background-color: #f0f0f0;
    color: #c0c2c4;
    padding-right: 16px;
    border-radius: 3px 0 0 3px;
    padding-top: 0
}

.xn-component xn-time-selector ul.time-selector li.earlier.enabled {
    color: #293651
}

.xn-component xn-time-selector ul.time-selector li.earlier.enabled:hover {
    background-color: #76cef7
}

.xn-component xn-time-selector ul.time-selector li.earlier .earlier-text {
    display: inline-block;
    vertical-align: top;
    margin-top: 4px
}

.xn-component xn-time-selector ul.time-selector li.earlier:before {
    font-family: fontAwesome;
    content: "ï“";
    padding: 5px 6px;
    display: inline-block
}

.xn-component xn-time-selector ul.time-selector li.later {
    flex: 0 0 auto;
    width: 120px;
    background-color: #f0f0f0;
    color: #c0c2c4;
    padding-left: 16px;
    border-radius: 0 3px 3px 0;
    padding-top: 0
}

.xn-component xn-time-selector ul.time-selector li.later.enabled {
    color: #293651
}

.xn-component xn-time-selector ul.time-selector li.later.enabled:hover {
    background-color: #76cef7
}

.xn-component xn-time-selector ul.time-selector li.later .later-text {
    display: inline-block;
    vertical-align: top;
    margin-top: 4px
}

.xn-component xn-time-selector ul.time-selector li.later:after {
    font-family: fontAwesome;
    content: "ï”";
    padding: 5px 6px;
    display: inline-block
}

.xn-component xn-time-selector ul.time-selector li.current-time {
    flex: 0 0 auto;
    width: 40px;
    background-color: #f0f0f0;
    padding-top: 0
}

.xn-component xn-time-selector ul.time-selector li.current-time:before {
    font-family: fontAwesome;
    content: "ï€—";
    padding: 3px 6px;
    display: inline-block;
    font-size: 24px
}

.xn-component xn-time-selector ul.time-selector li.current-time:hover {
    background-color: #76cef7
}

.xn-component xn-time-selector ul.time-selector.mobile {
    display: none
}

.xn-component xn-time-selector .earlier-later {
    padding: 10px;
    color: #c0c2c4;
    min-height: 22px
}

.xn-component xn-time-selector .earlier-later .earlier,.xn-component xn-time-selector .earlier-later .later {
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component xn-time-selector .earlier-later .earlier.enabled,.xn-component xn-time-selector .earlier-later .later.enabled {
    color: red
}

.xn-component xn-time-selector .earlier-later .later {
    float: right
}

.xn-component .xn-popup .overlay {
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    background: rgba(33,45,55,.3);
    overflow: hidden;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.xn-component .xn-popup .overlay .offset {
    padding-right: 0!important;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.xn-component .xn-popup .overlay .container {
    display: block;
    background: #fff;
    color: #324164;
    width: 420px;
    height: 70vh;
    margin-right: auto;
    margin-left: auto;
    z-index: 1000;
    padding: 24px;
    margin-top: 100px;
    border-radius: 3px;
    box-shadow: 10px 10px 20px -6px rgba(0,0,0,.75)
}

.xn-component .xn-popup .overlay .container .header {
    position: relative
}

.xn-component .xn-popup .overlay .container .header .close-button:before {
    position: absolute;
    top: 8px;
    right: 8px;
    font-family: fontAwesome;
    content: "ï€";
    cursor: pointer
}

.xn-component .xn-popup .overlay .container .header .title {
    display: block;
    width: 100%;
    font-size: 18px;
    text-transform: uppercase;
    padding: 8px 0
}

.xn-component .xn-popup .overlay .container .body {
    overflow-y: auto;
    height: calc(100% - 64px);
    margin-top: 16px
}

.xn-component .xn-popup .overlay .container .body .title {
    font-size: 18px;
    padding-top: 8px;
    padding-bottom: 24px;
    text-transform: uppercase
}

.xn-component .xn-popup .overlay .container .footer {
    margin-left: 16px;
    margin-right: 16px
}

.xn-component .xn-popup .overlay .container .footer .button {
    position: relative;
    display: block;
    padding: 10px;
    text-align: center;
    width: 100%;
    border-radius: 3px;
    margin: 0 auto 16px;
    cursor: pointer;
    background-color: #fff;
    color: #324164;
    z-index: 2000;
    font-size: 14px
}

.xn-component .xn-popup .overlay .container .footer .button.cta {
    border: 0;
    color: #fff
}

@media(max-width: 440px) {
    .xn-component .xn-popup .overlay {
        background-color:#fff
    }

    .xn-component .xn-popup .overlay .container {
        margin-top: 0;
        width: 100%;
        box-shadow: none
    }
}

.xn-component xn-activity-popup.mobile .xn-popup .overlay .offset,.xn-component xn-filter-popup.mobile .xn-popup .overlay .offset {
    width: 100%
}

.xn-component xn-activity-popup.mobile .xn-popup .overlay .container,.xn-component xn-filter-popup.mobile .xn-popup .overlay .container {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.xn-component xn-activity-popup.mobile .xn-popup .overlay .container .header,.xn-component xn-filter-popup.mobile .xn-popup .overlay .container .header {
    margin-top: 32px
}

.xn-component xn-event-selector {
    color: #313d66
}

.xn-component xn-event-selector .timetable-status {
    margin: 16px;
    display: block;
    text-align: center
}

.xn-component xn-event-selector .timetable-note {
    font-size: 14px;
    margin-top: 16px;
    display: block
}

.xn-component xn-event-selector .body {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

.xn-component xn-event-selector .body .locations {
    position: relative;
    -webkit-flex-basis: 18%;
    flex-basis: 18%;
    font-weight: 700;
    font-size: 21px;
    max-width: 212px
}

.xn-component xn-event-selector .body .locations .xn-row {
    background-color: #fff;
    border-right: 6px solid #e6e6e6
}

.xn-component xn-event-selector .body .locations .xn-row.title {
    border-top: 1px solid #e6e6e6
}

.xn-component xn-event-selector .body .locations .xn-row.title .location-name {
    word-wrap: break-word
}

.xn-component xn-event-selector .body .locations .xn-row.header {
    background-color: #f6f6f6;
    border-radius: 3px 0 0 0
}

.xn-component xn-event-selector .body .locations .xn-row.footer {
    background-color: #f6f6f6;
    border-radius: 0 0 0 3px
}

.xn-component xn-event-selector .body .events-container {
    position: relative;
    overflow: hidden;
    -webkit-flex-basis: 74%;
    flex-basis: 74%
}

.xn-component xn-event-selector .body .events-container .events {
    -webkit-flex-basis: 100%;
    flex-basis: 100%
}

.xn-component xn-event-selector .body .events-container .events .xn-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    padding: 0
}

.xn-component xn-event-selector .body .events-container .events .xn-row .xn-col {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    flex-grow: 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    height: 100%;
    width: 33.33333%;
    background-color: #fff;
    border-right: 1px solid #e6e6e6
}

.xn-component xn-event-selector .body .events-container .events .xn-row .xn-col:nth-child(odd) {
    border-right: 1px solid #e6e6e6
}

.xn-component xn-event-selector .body .events-container .events .xn-row.event-row .xn-col {
    border-right: 1px solid #e6e6e6;
    border-top: 1px solid #e6e6e6
}

.xn-component xn-event-selector .body .events-container .events .xn-row.footer .xn-col,.xn-component xn-event-selector .body .events-container .events .xn-row.header .xn-col {
    background-color: #f6f6f6;
    font-size: 14px;
    padding-left: 10px;
    padding-top: 7px
}

.xn-component xn-event-selector .body .on-next {
    -webkit-flex-basis: 8%;
    flex-basis: 8%;
    color: #fff;
    border-left: 6px solid #e6e6e6;
    overflow: hidden
}

.xn-component xn-event-selector .body .on-next .xn-row:not(.header) {
    background-color: #2d393b;
    font-size: small;
    border-bottom: 1px solid #2d393b
}

.xn-component xn-event-selector .body .on-next .xn-row:not(.header) .title {
    display: -webkit-box;
    overflow: hidden;
    font-weight: 700;
    font-size: 14px;
    max-height: 48px;
    margin-bottom: 8px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.xn-component xn-event-selector .body .on-next .xn-row:not(.header) .details {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 12px
}

.xn-component xn-event-selector .body .on-next .xn-row:not(.header):last-child {
    border-radius: 0 0 3px 0
}

.xn-component xn-event-selector .body .on-next .xn-row:empty {
    background-color: #2d393b
}

.xn-component xn-event-selector .body .on-next .xn-row.header {
    background-color: #2d393b;
    padding: 4px 0 0 8px;
    font-weight: 700;
    font-size: large
}

.xn-component xn-event-selector .body .on-next .xn-row.header:first-child {
    border-radius: 0 3px 0 0
}

.xn-component xn-event-selector .body .xn-row {
    height: 96px;
    min-height: 96px;
    max-height: 96px;
    padding: 10px;
    margin: 0
}

.xn-component xn-event-selector .body .xn-row.event-row {
    position: relative
}

.xn-component xn-event-selector .body .xn-row.footer,.xn-component xn-event-selector .body .xn-row.header {
    background-color: #fff;
    height: 30px;
    min-height: 30px;
    max-height: 30px
}

.xn-component xn-event-selector .event {
    position: absolute;
    margin-top: 1px;
    margin-left: 0;
    padding-right: 2px;
    height: 96px;
    width: 200px;
    border-left: 1px solid #e6e6e6;
    background-color: #16acf1;
    color: #324164;
    background-repeat: no-repeat;
    background-size: 64px;
    background-position: 0 0;
    overflow: hidden
}

.xn-component xn-event-selector .event.unbookable {
    background-color: #76cef7
}

.xn-component xn-event-selector .event.unbookable .details .available-places {
    font-weight: 700
}

.xn-component xn-event-selector .event.unbookable .details .book-now:before {
    content: "More info"
}

.xn-component xn-event-selector .event.unbookable:hover {
    background-color: #f69467
}

.xn-component xn-event-selector .event.unbookable:hover .book-now {
    color: #76cef7
}

.xn-component xn-event-selector .event .details {
    padding: 10px;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column wrap;
    flex-flow: column wrap;
    height: 100%;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start
}

.xn-component xn-event-selector .event .details .title {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 700;
    font-size: 14px
}

.xn-component xn-event-selector .event .details .times {
    display: none;
    font-size: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.xn-component xn-event-selector .event .details .available-places {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 12px;
    color: #47545d
}

.xn-component xn-event-selector .event .details .description {
    display: block;
    display: -webkit-box;
    font-size: 12px;
    line-height: 16px;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 4px
}

.xn-component xn-event-selector .event .details .book-now {
    display: inline-block;
    background-color: #fff;
    color: #000;
    padding: 5px 8px;
    height: 25px;
    cursor: pointer;
    margin-top: auto;
    font-size: 14px;
    border-radius: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.xn-component xn-event-selector .event .details .book-now:before {
    content: "Book now"
}

.xn-component xn-event-selector .event .details .book-now:after {
    font-family: fontAwesome;
    content: "ï”";
    margin-left: 4px
}

.xn-component xn-event-selector .event:hover {
    background-color: rgba(229,58,3,.9);
    width: auto!important;
    z-index: 1;
    color: #fff
}

.xn-component xn-event-selector .event:hover .details .title {
    color: #fff
}

.xn-component xn-event-selector .event:hover .details .available-places {
    color: #e6e6e6
}

.xn-component xn-event-selector .event:hover .details .book-now {
    display: inline-block
}

.xn-component xn-event-selector .event:hover.unbookable {
    background-color: rgba(253,123,81,.9)
}

.xn-component xn-calendar-popup .xn-popup .overlay .container {
    height: auto
}

.xn-component xn-calendar-popup .xn-popup .overlay .container .body {
    height: auto;
    overflow-y: visible;
    margin-bottom: 0
}

.xn-component xn-calendar-popup .title .prev-month:before {
    font-family: fontAwesome;
    content: "ï“"
}

.xn-component xn-calendar-popup .title .next-month:before {
    font-family: fontAwesome;
    content: "ï”"
}

.xn-component xn-calendar-popup .title .next-month,.xn-component xn-calendar-popup .title .prev-month {
    display: inline-block;
    text-align: center;
    width: 32px;
    padding: 0 8px;
    cursor: pointer;
    border-radius: 3px
}

.xn-component xn-calendar-popup .title .next-month:hover,.xn-component xn-calendar-popup .title .prev-month:hover {
    color: #fff
}

.xn-component xn-calendar-popup .title .month-name {
    display: inline-block;
    width: auto;
    margin: 0 8px
}

.xn-component xn-calendar-popup table.calendar {
    width: 100%;
    table-layout: fixed;
    margin-top: 8px;
    margin-bottom: 32px;
    border-collapse: collapse
}

.xn-component xn-calendar-popup table.calendar tr.calendar-weekdays td.calendar-day {
    padding-bottom: 16px;
    border-bottom: 1px solid #cdcdcd;
    cursor: default
}

.xn-component xn-calendar-popup table.calendar tr.calendar-weekdays td.calendar-day .day-name {
    padding: 8px;
    border-radius: 3px
}

.xn-component xn-calendar-popup table.calendar td.calendar-day {
    text-align: center;
    vertical-align: middle;
    padding: 8px 0;
    cursor: pointer
}

.xn-component xn-calendar-popup table.calendar td.calendar-day .day-number {
    border-radius: 3px;
    padding: 8px;
    min-width: 36px;
    display: inline-block
}

.xn-component xn-calendar-popup table.calendar td.calendar-day .day-name {
    color: #47545d;
    text-transform: uppercase
}

.xn-component xn-calendar-popup table.calendar td.calendar-day:hover:not(.disabled):not(.selected) .day-number {
    color: #fff
}

.xn-component xn-calendar-popup table.calendar td.calendar-day.disabled {
    color: #cdcdcd;
    cursor: not-allowed
}

.xn-component xn-calendar-popup table.calendar td.calendar-day.selected .day-number {
    color: #fff
}

.xn-component xn-calendar-popup table.calendar td.calendar-day.selected .day-number:hover {
    cursor: default
}

.xn-component xn-activity-popup .xn-popup .overlay .container {
    height: auto
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body {
    height: auto;
    overflow-y: visible;
    margin-bottom: 0
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details .date {
    -webkit-flex-basis: 60%;
    flex-basis: 60%;
    padding-bottom: 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 14px
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details .location {
    -webkit-flex-basis: 40%;
    flex-basis: 40%;
    text-align: right;
    font-size: 14px
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details .times {
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    padding-bottom: 24px;
    border-bottom: 1px solid #cdcdcd;
    font-size: 18px;
    text-align: right
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details .description {
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    padding-top: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid #cdcdcd;
    white-space: pre-wrap;
    font-size: 14px
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details .membership-discounts-available,.xn-component xn-activity-popup .xn-popup .overlay .container .body .details .pay-on-site {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 24px;
    font-size: 14px
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details ul.price-table {
    list-style: none;
    padding: 24px 0;
    font-size: 18px;
    width: 100%;
    display: block
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details ul.price-table li {
    width: 100%
}

.xn-component xn-activity-popup .xn-popup .overlay .container .body .details ul.price-table li span.price {
    float: right
}

.xn-component xn-activity-popup .xn-buttons {
    justify-content: center
}

@media(min-width: 516px) {
    .xn-component xn-activity-popup .popup-container {
        width:500px;
        margin-left: auto;
        margin-right: auto;
        margin-top: 64px
    }
}

.xn-component xn-timetable-component {
    line-height: 1.15
}

.xn-component xn-timetable-component .group:after {
    content: "";
    display: table;
    clear: both
}

.xn-component xn-timetable-component *,.xn-component xn-timetable-component :after,.xn-component xn-timetable-component :before {
    box-sizing: border-box
}

.xn-component .hidden {
    display: none!important
}

.xn-component .invisible {
    visibility: hidden
}

.xn-component .xn-members-home-index {
    display: flex;
    flex-direction: column
}

.xn-component .xn-members-home-index header {
    order: 2
}

.xn-component .xn-members-home-index header .xn-header {
    padding-top: 8px
}

.xn-component .xn-members-home-index #xn-notices.xn-container {
    order: 1;
    margin-top: 0;
    padding-top: 16px
}

.xn-component .xn-members-home-index #xn-content.xn-container {
    order: 3;
    padding-top: 0
}

.xn-component .xn-options-title {
    display: none
}

.xn-component .xn-menu-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    margin: 8px 16px;
    flex-flow: wrap;
    justify-content: space-between
}

.xn-component .xn-menu-buttons #xn-options,.xn-component .xn-menu-buttons .xn-options-title {
    flex-basis: 100%;
    width: 100%;
    display: none;
    text-align: center;
    font-size: 1.875rem;
    padding-top: 35px;
    padding-bottom: 45px
}

.xn-component .xn-menu-buttons .xn-menu-button {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    background-color: #2d393b;
    padding: 0;
    color: #fff;
    border: 0;
    flex-basis: 48.75%;
    margin-bottom: 23px;
    border-radius: 0!important;
    align-items: center
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    order: 2;
    background: 0 0!important;
    box-shadow: none;
    padding: 16px 16px 16px 0;
    border-radius: 0!important
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper .xn-text-inset .xn-title {
    font-weight: 700;
    margin-bottom: 4px
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper .xn-title {
    font-weight: 400!important;
    font-size: 1.25rem
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper .xn-description {
    display: none
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-image-wrapper {
    padding: 24px 16px;
    -webkit-box-flex: 0;
    box-shadow: none;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    order: 1;
    flex: 0 0 85px;
    border-radius: 0!important
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-image-wrapper .xn-image-inset .xn-image {
    text-align: center;
    font-size: 30px!important;
    line-height: 1
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-image-wrapper .xn-image-inset .xn-image:before {
    font-family: FontAwesome
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-image-wrapper#xn-linked-members-link .xn-image-wrapper .xn-image-inset .xn-image:before {
    content: "ïƒ€"
}

.xn-component .xn-menu-buttons .xn-menu-button:focus,.xn-component .xn-menu-buttons .xn-menu-button:hover {
    text-decoration: none
}

.xn-component .xn-menu-buttons #xn-online-booking-link .xn-image:before {
    content: "ï³"
}

.xn-component .xn-menu-buttons #xn-qr-code-link .xn-image:before {
    content: "ï€©"
}

.xn-component .xn-menu-buttons #xn-marketing-preferences-link .xn-image:before {
    content: "ï€º"
}

.xn-component .xn-menu-buttons #xn-membership-prices-link .xn-image:before {
    content: "ïŠ½"
}

.xn-component .xn-menu-buttons #xn-members-homepage-link .xn-image:before {
    content: "ï€•"
}

.xn-component .xn-menu-buttons #xn-account-login-link .xn-image:before {
    content: "ï‚"
}

.xn-component .xn-menu-buttons #xn-account-register-link .xn-image:before {
    content: "ï€‡"
}

.xn-component .xn-menu-buttons #xn-account-signup-link .xn-image:before {
    content: "ï„"
}

.xn-component .xn-menu-buttons #xn-member-profile-link .xn-image:before {
    content: "ï‹"
}

.xn-component .xn-menu-buttons #xn-memberships-link .xn-image:before {
    content: "ï‚£"
}

.xn-component .xn-menu-buttons #xn-member-documents-link .xn-image:before {
    content: "ï»"
}

.xn-component .xn-menu-buttons #xn-my-bookings-link .xn-image:before {
    content: "ï‰´"
}

.xn-component .xn-menu-buttons #xn-my-xnmove-link .xn-image:before {
    content: "ï…„"
}

.xn-component .xn-menu-buttons #xn-my-payments-link .xn-image:before {
    content: "ï‚"
}

.xn-component .xn-menu-buttons #xn-my-debts-link .xn-image:before {
    content: "ï†œ"
}

.xn-component .xn-menu-buttons #xn-linked-members-link .xn-image:before {
    content: "ïƒ"
}

.xn-component .xn-members-home-basketdetails table.xn-items {
    margin-top: 16px
}

.xn-component body.xn-members-home-index .xn-container .xn-tile .xn-menu-buttons .xn-options-title,.xn-component body.xn-members-home-index header .xn-header .xn-title {
    color: #46484a
}

.xn-component .xn-members-home-index header,.xn-component .xn-public-home-index header {
    order: 1
}

.xn-component .xn-members-home-index header .xn-header,.xn-component .xn-public-home-index header .xn-header {
    background: 0;
    padding: 40px 16px 16px
}

.xn-component .xn-members-home-index header .xn-header .xn-title,.xn-component .xn-public-home-index header .xn-header .xn-title {
    padding: 20px 0 45px;
    color: #46484a;
    font-weight: 300;
    font-size: 3rem;
    text-align: center
}

.xn-component .xn-members-home-index header .xn-header .xn-title span,.xn-component .xn-public-home-index header .xn-header .xn-title span {
    font-weight: 700
}

.xn-component .xn-members-home-index header .xn-header .xn-heading-text,.xn-component .xn-public-home-index header .xn-header .xn-heading-text {
    display: none
}

.xn-component .xn-members-home-index header .xn-header .xn-underline,.xn-component .xn-public-home-index header .xn-header .xn-underline {
    width: 160px;
    height: 3px;
    margin: 0 auto 30px;
    border: 0;
    display: block
}

.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component .xn-notices-title,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component .xn-notices-title {
    display: block;
    text-align: center;
    font-size: 1.875rem
}

.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options {
    display: block;
    padding-bottom: 20px;
    text-align: center
}

.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a {
    border: 0;
    font-size: .875rem;
    font-weight: 600;
    display: inline-block;
    margin: 10px 0 0;
    padding: 0;
    border-radius: 0;
    background: 0
}

.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a:before,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a:before {
    display: inline-block;
    content: ">";
    margin-right: 5px
}

.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component xn-notice-component,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component xn-notice-component {
    background: 0
}

.xn-component .xn-members-home-index .xn-container .xn-tile .xn-menu-buttons,.xn-component .xn-public-home-index .xn-container .xn-tile .xn-menu-buttons {
    padding-bottom: 70px
}

.xn-component .xn-members-home-index .xn-container .xn-tile .xn-menu-buttons .xn-options-title,.xn-component .xn-public-home-index .xn-container .xn-tile .xn-menu-buttons .xn-options-title {
    display: block!important
}

.xn-component .xn-container.receipt #xn-body {
    margin: 16px
}

@media(max-width: 767px) {
    .xn-component .xn-container.receipt table thead {
        display:none
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td:first-child {
        text-align: left!important;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0;
        margin-top: 8px;
        font-size: 18px;
        border-bottom: 1px solid #cdcdcd
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td:nth-child(2) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td:nth-child(2):before {
        content: "Price";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td:nth-child(3) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td:nth-child(3):before {
        content: "Qty";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component .xn-container.receipt table tbody tr.xn-footer td {
        display: inline-block
    }

    .xn-component .xn-container.receipt table tbody tr {
        padding: 8px 0;
        display: block
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td {
        display: block;
        padding: 0
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td:nth-child(4) {
        text-align: left!important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0
    }

    .xn-component .xn-container.receipt table tbody tr:not(.xn-footer) td:nth-child(4):before {
        content: "Item Total";
        text-align: left;
        display: inline-block;
        width: 120px;
        font-weight: 700
    }

    .xn-component .xn-container.receipt table tfoot td {
        display: block
    }
}

.xn-component .xn-container.receipt table {
    margin-bottom: 8px
}

.xn-component .xn-container.receipt table tbody tr td,.xn-component .xn-container.receipt table thead tr th {
    background-color: #fff
}

@media(max-width: 767px) {
    .xn-component .xn-container.receipt table tbody tr td {
        border:0;
        margin: 4px
    }

    .xn-component .xn-container.receipt table tbody tr:nth-child(2n) {
        background-color: #fff
    }

    .xn-component .xn-container.receipt table tbody tr:nth-child(2n) td {
        background-color: inherit;
        margin: 4px
    }
}

.xn-component .xn-container.receipt .xn-total-text {
    text-align: right;
    font-weight: 700
}

.xn-component .xn-container.receipt .xn-total {
    font-weight: 700
}

@media(max-width: 767px) {
    .xn-component .xn-container.receipt .xn-footer {
        text-align:right
    }

    .xn-component .xn-container.receipt .xn-footer td {
        padding: 8px 0
    }
}

@media print {
    .xn-component .xn-payments-confirmation-index {
        margin-top: 0!important
    }

    .xn-component .xn-payments-confirmation-index .xn-navbar {
        display: none
    }

    .xn-component .xn-payments-confirmation-index .xn-container {
        padding: 4px 16px
    }
}

.xn-component nav.bg-dark {
    background-color: red #2d393b
}

.xn-component .xn-modal.xn-modal-small>.xn-content {
    width: 400px
}

.xn-component .xn-members-home-memberships .xn-tile-prices,.xn-component .xn-public-bookings-index .xn-tile-bookings,.xn-component .xn-public-bookings-index .xn-tile-filters,.xn-component .xn-public-home-memberships .xn-tile-filters {
    width: 100%!important;
    max-width: 100%!important
}

.xn-component .xn-buttons-centred,.xn-component forms>.xn-buttons {
    justify-content: center!important
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-heading.xn-book-now-heading {
    background: #2d393b;
    color: #f0f1f2;
    padding: 16px;
    text-align: center;
    order: 1
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-content.xn-book-now-content {
    background: #2d393b;
    color: #fff;
    border: 0
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-image.xn-book-now-image {
    order: 0
}

.xn-component .xn-book-now-confirm-modal>div,.xn-component .xn-book-now-content>div {
    border: none!important
}

.xn-component .xn-guidance {
    background: #e6e7e8!important;
    color: #2d393b!important
}

.xn-component .xn-guidance a {
    color: #e9530e!important
}

.xn-component .xn-guidance:before {
    color: #2d393b!important
}

.xn-component .xn-validation-error,.xn-component .xn-validation-message {
    background: #ea0001!important;
    color: #fff!important
}

.xn-component .xn-validation-error:before,.xn-component .xn-validation-message:before {
    color: #ea0001;
    background: #fff
}

.xn-component .xn-alert.xn-alert-info,.xn-component .xn-alert.xn-alert-warning {
    background: #e6e7e8!important;
    color: #2d393b!important
}

.xn-component .xn-alert.xn-alert-info a,.xn-component .xn-alert.xn-alert-warning a {
    color: #e9530e!important
}

.xn-component .xn-alert.xn-alert-info:before,.xn-component .xn-alert.xn-alert-warning:before {
    color: #2d393b
}

.xn-component .xn-alert.xn-alert-success {
    background: #e6e7e8!important;
    color: #2d393b!important
}

.xn-component .xn-alert.xn-alert-success a {
    color: #e9530e!important
}

.xn-component .xn-alert.xn-alert-success:before {
    color: #008e33
}

.xn-component .xn-alert.xn-alert-danger {
    background: #ea0001!important;
    color: #fff!important
}

.xn-component .xn-alert.xn-alert-danger:before {
    color: #ea0001;
    background: #fff
}

.xn-component .xn-modal .xn-content {
    border: 15px solid #f0f1f2
}

.xn-component .xn-modal .xn-content .xn-header,.xn-component .xn-modal .xn-content h2 {
    color: #2d393b
}

.xn-component .xn-modal .xn-content .xn-detail {
    border-top: 1px solid #dbdedf
}

.xn-component .xn-modal .xn-content .xn-detail p,.xn-component .xn-modal .xn-content .xn-detail ul li {
    color: #2d393b
}

.xn-component .xn-modal .xn-content .xn-detail .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component .xn-modal .xn-content .xn-detail .xn-buttons .xn-button.xn-mute {
    background: #fff!important;
    color: #6f8d92;
    border: 1px solid #6f8d92!important
}

.xn-component .xn-modal .xn-content .xn-close,.xn-component .xn-modal .xn-content+.xn-close {
    color: #fff;
    background: #6f8d92
}

.xn-component #xn-options+.xn-options-title {
    flex-basis: 100%;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 1.875rem;
    padding-top: 35px;
    padding-bottom: 45px
}

.xn-component .xn-menu-buttons #xn-options,.xn-component .xn-menu-buttons .xn-options-title {
    color: #fff
}

.xn-component .xn-menu-buttons .xn-menu-button {
    background: #dbdedf
}

@media screen and (max-width: 767px) {
    .xn-component .xn-menu-buttons .xn-menu-button {
        flex-basis:100%
    }
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper {
    color: #2d393b
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper:focus .xn-text-wrapper,.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper:hover .xn-text-wrapper {
    background-color: #b9420b
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-image-wrapper {
    color: #b9420b
}

.xn-component .xn-menu-buttons .xn-menu-button:hover {
    background: #e9530e
}

.xn-component .xn-menu-buttons .xn-menu-button:hover .xn-text-wrapper {
    color: #fff
}

.xn-component .xn-menu-buttons .xn-menu-button:hover .xn-image-wrapper,.xn-component xn-basketdetails-component .xn-promotionCode-group label {
    color: #2d393b
}

.xn-component xn-basketdetails-component .xn-promotionCode-group input[type=text] {
    border: 1px solid #dbdedf;
    color: #2d393b
}

.xn-component xn-basketdetails-component .xn-promotionCode-group .xn-help {
    vertical-align: -3px;
    margin-left: 10px;
    margin-right: 10px
}

.xn-component xn-basketdetails-component .xn-promotionCode-group .xn-help:after {
    color: #2d393b;
    font-size: 1.875rem
}

.xn-component xn-basketdetails-component .xn-promotionCode-group .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description {
    color: #2d393b
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description:after {
    background: #dbdedf
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost {
    color: #2d393b
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost:after {
    background: #dbdedf
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-actions a:before {
    color: #e9530e
}

.xn-component xn-basketdetails-component .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-actions:after {
    background: #dbdedf
}

.xn-component xn-basketdetails-component .xn-items tbody tr.xn-membership-breakdown td {
    color: #2d393b!important
}

.xn-component xn-basketdetails-component .xn-items tbody tr.xn-membership-breakdown.xn-caveat td {
    color: #e9530e!important
}

.xn-component xn-basketdetails-component .xn-items tfoot tr td:last-of-type:before {
    background: #dbdedf
}

.xn-component xn-basketdetails-component .xn-items .xn-total-text {
    color: #2d393b
}

.xn-component xn-basketdetails-component .xn-items .xn-total-text:before {
    background: #dbdedf
}

.xn-component xn-basketdetails-component .xn-items .xn-total {
    color: #b9420b
}

.xn-component xn-basketdetails-component .xn-items .xn-total:before {
    background: #dbdedf
}

.xn-component xn-basketcheckout-component .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-suggestionlist-component .xn-header {
    padding-top: 0;
    padding-left: 10px;
    padding-right: 10px
}

.xn-component xn-suggestionlist-component .xn-header .xn-title {
    font-size: 1.25rem;
    color: #2d393b
}

.xn-component xn-suggestionlist-component .xn-grid li {
    width: 50%!important
}

.xn-component xn-suggestionlist-component xn-card-component .xn-heading {
    background: #2d393b!important;
    color: #fff!important
}

.xn-component xn-suggestionlist-component xn-card-component .xn-buttons {
    background: #2d393b!important
}

.xn-component xn-suggestionlist-component xn-card-component .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component .xn-plain-text {
    color: #2d393b
}

.xn-component form fieldset+fieldset legend {
    width: 100%;
    padding-top: 30px
}

.xn-component form fieldset legend {
    padding-bottom: 10px;
    font-weight: 800;
    font-size: 1rem
}

.xn-component form fieldset .xn-input-group label,.xn-component form fieldset .xn-option-group label {
    color: #2d393b
}

.xn-component form fieldset .xn-input-group#xn-contactBy-group,.xn-component form fieldset .xn-option-group#xn-contactBy-group {
    padding-top: 40px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e6e7e8;
    margin-bottom: 10px
}

.xn-component form fieldset .xn-input-group#xn-contactBy-group label,.xn-component form fieldset .xn-option-group#xn-contactBy-group label {
    font-weight: 400;
    font-size: .875rem;
    color: #2d393b
}

.xn-component form fieldset .xn-input-group .xn-required-text:before,.xn-component form fieldset .xn-option-group .xn-required-text:before {
    color: #b9420b
}

.xn-component form fieldset .xn-input-group #xn-saved-search,.xn-component form fieldset .xn-input-group input[type=date],.xn-component form fieldset .xn-input-group input[type=email],.xn-component form fieldset .xn-input-group input[type=password],.xn-component form fieldset .xn-input-group input[type=tel],.xn-component form fieldset .xn-input-group input[type=text],.xn-component form fieldset .xn-input-group select,.xn-component form fieldset .xn-option-group #xn-saved-search,.xn-component form fieldset .xn-option-group input[type=date],.xn-component form fieldset .xn-option-group input[type=email],.xn-component form fieldset .xn-option-group input[type=password],.xn-component form fieldset .xn-option-group input[type=tel],.xn-component form fieldset .xn-option-group input[type=text],.xn-component form fieldset .xn-option-group select {
    width: 100%;
    height: 32px;
    border: 1px solid #dbdedf;
    padding: 0 20px;
    color: #2d393b;
    font-size: 1rem;
    border-radius: 0!important
}

.xn-component form fieldset .xn-input-group select[multiple],.xn-component form fieldset .xn-option-group select[multiple] {
    height: auto
}

.xn-component form fieldset .xn-input-group input[type=checkbox]+input+label,.xn-component form fieldset .xn-input-group input[type=checkbox]+label,.xn-component form fieldset .xn-option-group input[type=checkbox]+input+label,.xn-component form fieldset .xn-option-group input[type=checkbox]+label {
    color: #2d393b;
    font-size: .875rem;
    font-weight: 600;
    padding: 0;
    width: 100%
}

.xn-component form fieldset .xn-input-group input[type=checkbox]+input+label a,.xn-component form fieldset .xn-input-group input[type=checkbox]+label a,.xn-component form fieldset .xn-option-group input[type=checkbox]+input+label a,.xn-component form fieldset .xn-option-group input[type=checkbox]+label a {
    border: 0;
    color: #b9420b
}

.xn-component form fieldset .xn-input-group input[type=checkbox]+input+label:before,.xn-component form fieldset .xn-input-group input[type=checkbox]+label:before,.xn-component form fieldset .xn-option-group input[type=checkbox]+input+label:before,.xn-component form fieldset .xn-option-group input[type=checkbox]+label:before {
    vertical-align: -2px
}

.xn-component form fieldset .xn-input-group input[type=checkbox]+input+label .xn-tick,.xn-component form fieldset .xn-input-group input[type=checkbox]+label .xn-tick,.xn-component form fieldset .xn-option-group input[type=checkbox]+input+label .xn-tick,.xn-component form fieldset .xn-option-group input[type=checkbox]+label .xn-tick {
    margin-right: 10px;
    border-radius: 0!important;
    height: 16px;
    width: 16px;
    vertical-align: 2px;
    padding: 0
}

.xn-component form fieldset .xn-input-group input[type=checkbox]+input+label .xn-tick:before,.xn-component form fieldset .xn-input-group input[type=checkbox]+label .xn-tick:before,.xn-component form fieldset .xn-option-group input[type=checkbox]+input+label .xn-tick:before,.xn-component form fieldset .xn-option-group input[type=checkbox]+label .xn-tick:before {
    width: 10px;
    margin: -3px 0 0 2px
}

.xn-component form fieldset .xn-input-group input[type=checkbox]:checked+input+label>span.xn-tick,.xn-component form fieldset .xn-input-group input[type=checkbox]:checked+label>span.xn-tick,.xn-component form fieldset .xn-option-group input[type=checkbox]:checked+input+label>span.xn-tick,.xn-component form fieldset .xn-option-group input[type=checkbox]:checked+label>span.xn-tick {
    background-color: #b9420b;
    border-color: #b9420b
}

.xn-component form fieldset .xn-input-group input[type=checkbox]:checked+input+label:before,.xn-component form fieldset .xn-input-group input[type=checkbox]:checked+label:before,.xn-component form fieldset .xn-option-group input[type=checkbox]:checked+input+label:before,.xn-component form fieldset .xn-option-group input[type=checkbox]:checked+label:before {
    color: #b9420b
}

.xn-component form fieldset .xn-input-group .xn-options label,.xn-component form fieldset .xn-option-group .xn-options label {
    font-size: 1rem;
    font-weight: 400
}

.xn-component form fieldset .xn-input-group .xn-options input[type=radio]:checked+input+label:before,.xn-component form fieldset .xn-input-group .xn-options input[type=radio]:checked+label:before,.xn-component form fieldset .xn-option-group .xn-options input[type=radio]:checked+input+label:before,.xn-component form fieldset .xn-option-group .xn-options input[type=radio]:checked+label:before {
    color: #b9420b
}

.xn-component form fieldset .xn-input-group .xn-help:after,.xn-component form fieldset .xn-option-group .xn-help:after {
    color: #2d393b;
    font-size: 1.25rem;
    margin-left: 30px
}

.xn-component form fieldset .xn-input-group#xn-txtPostCode-group .xn-inputs .xn-buttons,.xn-component form fieldset .xn-option-group#xn-txtPostCode-group .xn-inputs .xn-buttons {
    width: calc(50% - 8px);
    max-width: calc(50% - 8px);
    display: flex
}

@media screen and (max-width: 767px) {
    .xn-component form fieldset .xn-input-group#xn-txtPostCode-group .xn-inputs .xn-buttons,.xn-component form fieldset .xn-option-group#xn-txtPostCode-group .xn-inputs .xn-buttons {
        width:100%;
        max-width: 100%
    }
}

.xn-component form fieldset .xn-input-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button,.xn-component form fieldset .xn-option-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button {
    flex: 0 0 49%;
    padding: 5px 40px;
    border-radius: 35px;
    background: #2d393b!important;
    color: #fff;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none
}

.xn-component form fieldset .xn-input-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button:first-child,.xn-component form fieldset .xn-option-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button:first-child {
    background: #b9420b!important
}

.xn-component form>.xn-buttons {
    justify-content: center;
    border-top: 6px solid #dbdedf;
    margin-top: 30px;
    padding-top: 30px;
    padding-bottom: 30px
}

.xn-component form>.xn-buttons .xn-button {
    margin: 0 auto;
    padding: 11px 60px;
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff;
    border: 0;
    font-weight: 400;
    font-size: 1.4375rem;
    text-align: center;
    text-transform: none
}

.xn-component form>.xn-buttons .xn-button[disabled] {
    background: #e6e7e8!important
}

.xn-component xn-restrictions-component {
    padding-top: 30px
}

.xn-component xn-restrictions-component section>div {
    font-size: .875rem;
    padding-bottom: 5px;
    color: #2d393b;
    font-weight: 400
}

.xn-component xn-restrictions-component section .xn-heading {
    padding-bottom: 15px
}

.xn-component xn-multisave-component {
    margin: 8px;
    padding: 8px
}

.xn-component xn-multisave-component .xn-buttons {
    justify-content: center;
    border-top: 6px solid #dbdedf;
    margin-top: 30px;
    padding-top: 30px;
    padding-bottom: 30px
}

.xn-component xn-multisave-component .xn-buttons .xn-button {
    margin: 0 auto;
    padding: 11px 60px;
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff;
    border: 0;
    font-weight: 400;
    font-size: 1.4375rem;
    text-align: center;
    text-transform: none
}

.xn-component xn-qrcode-component .xn-qr-code-content,.xn-component xn-qrcode-component .xn-qr-code-description {
    color: #2d393b
}

.xn-component xn-qrcode-component .xn-qr-code-error {
    color: #ea0001
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group label {
    color: #2d393b
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group .xn-required-text:before {
    color: #b9420b
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group .xn-help:after {
    color: #2d393b
}

.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group input[type=date],.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group input[type=email],.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group input[type=password],.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group input[type=tel],.xn-component xn-directdebitdetails-component .xn-detail .xn-input-group input[type=text] {
    border: 1px solid #dbdedf;
    color: #2d393b
}

.xn-component xn-directdebitdetails-component .xn-buttons {
    border-top: 6px solid #dbdedf
}

.xn-component xn-directdebitdetails-component .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-directdebitdetails-component .xn-dd-guarantee-link a {
    border-radius: 35px
}

.xn-component xn-marketingpreferences-component form .xn-input-group label,.xn-component xn-marketingpreferences-component form .xn-option-group label {
    color: #2d393b
}

.xn-component xn-marketingpreferences-component form .xn-input-group .xn-required-text:before,.xn-component xn-marketingpreferences-component form .xn-option-group .xn-required-text:before {
    color: #b9420b
}

.xn-component xn-marketingpreferences-component form .xn-input-group #xn-contactTelephoneNumber,.xn-component xn-marketingpreferences-component form .xn-input-group input[type=date],.xn-component xn-marketingpreferences-component form .xn-input-group input[type=email],.xn-component xn-marketingpreferences-component form .xn-input-group input[type=password],.xn-component xn-marketingpreferences-component form .xn-input-group input[type=tel],.xn-component xn-marketingpreferences-component form .xn-input-group input[type=text],.xn-component xn-marketingpreferences-component form .xn-input-group select,.xn-component xn-marketingpreferences-component form .xn-option-group #xn-contactTelephoneNumber,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=date],.xn-component xn-marketingpreferences-component form .xn-option-group input[type=email],.xn-component xn-marketingpreferences-component form .xn-option-group input[type=password],.xn-component xn-marketingpreferences-component form .xn-option-group input[type=tel],.xn-component xn-marketingpreferences-component form .xn-option-group input[type=text],.xn-component xn-marketingpreferences-component form .xn-option-group select {
    border: 1px solid #dbdedf;
    color: #2d393b
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+input+label,.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+label,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+input+label,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+label {
    color: #2d393b
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+input+label a,.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]+label a,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+input+label a,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]+label a {
    color: #b9420b
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]:checked+input+label>span.xn-tick,.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]:checked+label>span.xn-tick,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]:checked+input+label>span.xn-tick,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]:checked+label>span.xn-tick {
    background-color: #b9420b;
    border-color: #b9420b
}

.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]:checked+input+label:before,.xn-component xn-marketingpreferences-component form .xn-input-group input[type=checkbox]:checked+label:before,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]:checked+input+label:before,.xn-component xn-marketingpreferences-component form .xn-option-group input[type=checkbox]:checked+label:before {
    color: #b9420b
}

.xn-component xn-marketingpreferences-component form .xn-input-group .xn-options label,.xn-component xn-marketingpreferences-component form .xn-option-group .xn-options label {
    font-size: 1rem;
    font-weight: 400
}

.xn-component xn-marketingpreferences-component form .xn-input-group .xn-options input[type=radio]:checked+input+label:before,.xn-component xn-marketingpreferences-component form .xn-input-group .xn-options input[type=radio]:checked+label:before,.xn-component xn-marketingpreferences-component form .xn-option-group .xn-options input[type=radio]:checked+input+label:before,.xn-component xn-marketingpreferences-component form .xn-option-group .xn-options input[type=radio]:checked+label:before {
    color: #b9420b
}

.xn-component xn-marketingpreferences-component form .xn-input-group .xn-help:after,.xn-component xn-marketingpreferences-component form .xn-option-group .xn-help:after {
    color: #2d393b;
    font-size: 1.25rem;
    margin-left: 30px
}

.xn-component xn-marketingpreferences-component form .xn-input-group#xn-txtPostCode-group .xn-inputs .xn-buttons,.xn-component xn-marketingpreferences-component form .xn-option-group#xn-txtPostCode-group .xn-inputs .xn-buttons {
    width: calc(50% - 8px);
    max-width: calc(50% - 8px);
    display: flex
}

.xn-component xn-marketingpreferences-component form .xn-input-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button,.xn-component xn-marketingpreferences-component form .xn-option-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button {
    flex: 0 0 49%;
    padding: 5px 40px;
    border-radius: 35px;
    background: #2d393b!important;
    color: #fff;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none
}

.xn-component xn-marketingpreferences-component form .xn-input-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button:first-child,.xn-component xn-marketingpreferences-component form .xn-option-group#xn-txtPostCode-group .xn-inputs .xn-buttons .xn-button:first-child {
    background: #b9420b!important
}

.xn-component xn-marketingpreferences-component .xn-buttons {
    border-top: 6px solid #dbdedf
}

.xn-component xn-marketingpreferences-component .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component .xn-container.receipt>.xn-container>.Items table,.xn-component xn-bookinghistory-component table,.xn-component xn-lhreceipt-component .Items table,.xn-component xn-memberdebts-component table,.xn-component xn-mydocuments-component table,.xn-component xn-mymemberships-component table,.xn-component xn-mypayments-component table {
    margin-top: 20px
}

.xn-component .xn-container.receipt>.xn-container>.Items table thead tr th,.xn-component xn-bookinghistory-component table thead tr th,.xn-component xn-lhreceipt-component .Items table thead tr th,.xn-component xn-memberdebts-component table thead tr th,.xn-component xn-mydocuments-component table thead tr th,.xn-component xn-mymemberships-component table thead tr th,.xn-component xn-mypayments-component table thead tr th {
    padding: 22px 12px 22px 0!important;
    color: #2d393b
}

.xn-component .xn-container.receipt>.xn-container>.Items table thead tr th:last-of-type,.xn-component xn-bookinghistory-component table thead tr th:last-of-type,.xn-component xn-lhreceipt-component .Items table thead tr th:last-of-type,.xn-component xn-memberdebts-component table thead tr th:last-of-type,.xn-component xn-mydocuments-component table thead tr th:last-of-type,.xn-component xn-mymemberships-component table thead tr th:last-of-type,.xn-component xn-mypayments-component table thead tr th:last-of-type {
    padding-right: 0!important
}

.xn-component .xn-container.receipt>.xn-container>.Items table tbody tr,.xn-component xn-bookinghistory-component table tbody tr,.xn-component xn-lhreceipt-component .Items table tbody tr,.xn-component xn-memberdebts-component table tbody tr,.xn-component xn-mydocuments-component table tbody tr,.xn-component xn-mymemberships-component table tbody tr,.xn-component xn-mypayments-component table tbody tr {
    border-bottom: 1px solid #dbdedf
}

.xn-component .xn-container.receipt>.xn-container>.Items table tbody tr td,.xn-component xn-bookinghistory-component table tbody tr td,.xn-component xn-lhreceipt-component .Items table tbody tr td,.xn-component xn-memberdebts-component table tbody tr td,.xn-component xn-mydocuments-component table tbody tr td,.xn-component xn-mymemberships-component table tbody tr td,.xn-component xn-mypayments-component table tbody tr td {
    color: #2d393b;
    background: #fff;
    font-weight: 500;
    font-size: .875rem;
    padding: 22px 12px 22px 0!important
}

@media screen and (max-width: 767px) {
    .xn-container.receipt>.xn-container>.Items table tbody tr td,.xn-component xn-bookinghistory-component table tbody tr td,.xn-component xn-lhreceipt-component .Items table tbody tr td,.xn-component xn-memberdebts-component table tbody tr td,.xn-component xn-mydocuments-component table tbody tr td,.xn-component xn-mymemberships-component table tbody tr td,.xn-component xn-mypayments-component table tbody tr td {
        padding:12px 0 0!important
    }
}

.xn-component .xn-container.receipt>.xn-container>.Items table tbody tr td:last-of-type,.xn-component xn-bookinghistory-component table tbody tr td:last-of-type,.xn-component xn-lhreceipt-component .Items table tbody tr td:last-of-type,.xn-component xn-memberdebts-component table tbody tr td:last-of-type,.xn-component xn-mydocuments-component table tbody tr td:last-of-type,.xn-component xn-mymemberships-component table tbody tr td:last-of-type,.xn-component xn-mypayments-component table tbody tr td:last-of-type {
    padding-right: 0!important
}

.xn-component .xn-container.receipt>.xn-container>.Items table tbody tr td .xn-button,.xn-component xn-bookinghistory-component table tbody tr td .xn-button,.xn-component xn-lhreceipt-component .Items table tbody tr td .xn-button,.xn-component xn-memberdebts-component table tbody tr td .xn-button,.xn-component xn-mydocuments-component table tbody tr td .xn-button,.xn-component xn-mymemberships-component table tbody tr td .xn-button,.xn-component xn-mypayments-component table tbody tr td .xn-button {
    padding: 3px 15px!important;
    border-radius: 26px!important;
    background: #e9530e!important;
    color: #fff;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    text-align: center;
    text-transform: none
}

.xn-component .xn-container.receipt>.xn-container>.Items table tbody tr td a i,.xn-component xn-bookinghistory-component table tbody tr td a i,.xn-component xn-lhreceipt-component .Items table tbody tr td a i,.xn-component xn-memberdebts-component table tbody tr td a i,.xn-component xn-mydocuments-component table tbody tr td a i,.xn-component xn-mymemberships-component table tbody tr td a i,.xn-component xn-mypayments-component table tbody tr td a i {
    color: #e9530e!important
}

.xn-component .xn-container.receipt>.xn-container>.Items table tfoot tr,.xn-component xn-bookinghistory-component table tfoot tr,.xn-component xn-lhreceipt-component .Items table tfoot tr,.xn-component xn-memberdebts-component table tfoot tr,.xn-component xn-mydocuments-component table tfoot tr,.xn-component xn-mymemberships-component table tfoot tr,.xn-component xn-mypayments-component table tfoot tr {
    border-top: 0
}

.xn-component .xn-container.receipt>.xn-container>.Items table tfoot tr td,.xn-component xn-bookinghistory-component table tfoot tr td,.xn-component xn-lhreceipt-component .Items table tfoot tr td,.xn-component xn-memberdebts-component table tfoot tr td,.xn-component xn-mydocuments-component table tfoot tr td,.xn-component xn-mymemberships-component table tfoot tr td,.xn-component xn-mypayments-component table tfoot tr td {
    padding: 15px 0 0!important;
    color: #2d393b
}

.xn-component .xn-container.receipt>.xn-container>.Items table tfoot tr td.xn-total,.xn-component xn-bookinghistory-component table tfoot tr td.xn-total,.xn-component xn-lhreceipt-component .Items table tfoot tr td.xn-total,.xn-component xn-memberdebts-component table tfoot tr td.xn-total,.xn-component xn-mydocuments-component table tfoot tr td.xn-total,.xn-component xn-mymemberships-component table tfoot tr td.xn-total,.xn-component xn-mypayments-component table tfoot tr td.xn-total {
    color: #b9420b;
    font-weight: 700
}

.xn-component .xn-container.receipt>.xn-container>.Items .xn-input-group.xn-bookings-order label,.xn-component xn-bookinghistory-component .xn-input-group.xn-bookings-order label,.xn-component xn-lhreceipt-component .Items .xn-input-group.xn-bookings-order label,.xn-component xn-memberdebts-component .xn-input-group.xn-bookings-order label,.xn-component xn-mydocuments-component .xn-input-group.xn-bookings-order label,.xn-component xn-mymemberships-component .xn-input-group.xn-bookings-order label,.xn-component xn-mypayments-component .xn-input-group.xn-bookings-order label {
    color: #2d393b;
    font-weight: 400;
    font-size: 1rem;
    padding-top: 10px;
    padding-bottom: 20px;
    margin-bottom: 0;
    text-transform: none
}

.xn-component .xn-container.receipt>.xn-container>.Items .xn-input-group.xn-bookings-order select,.xn-component xn-bookinghistory-component .xn-input-group.xn-bookings-order select,.xn-component xn-lhreceipt-component .Items .xn-input-group.xn-bookings-order select,.xn-component xn-memberdebts-component .xn-input-group.xn-bookings-order select,.xn-component xn-mydocuments-component .xn-input-group.xn-bookings-order select,.xn-component xn-mymemberships-component .xn-input-group.xn-bookings-order select,.xn-component xn-mypayments-component .xn-input-group.xn-bookings-order select {
    width: 100%;
    height: 32px;
    border: 1px solid #f0f1f2;
    background: #f0f1f2;
    padding: 0 20px;
    color: #2d393b;
    font-size: 1rem;
    border-radius: 0!important;
    margin-bottom: 10px
}

.xn-component .xn-container.receipt>.xn-container>.Items .xn-dd-guarantee-link,.xn-component .xn-container.receipt>.xn-container>.Items .xn-memberships-link,.xn-component xn-bookinghistory-component .xn-dd-guarantee-link,.xn-component xn-bookinghistory-component .xn-memberships-link,.xn-component xn-lhreceipt-component .Items .xn-dd-guarantee-link,.xn-component xn-lhreceipt-component .Items .xn-memberships-link,.xn-component xn-memberdebts-component .xn-dd-guarantee-link,.xn-component xn-memberdebts-component .xn-memberships-link,.xn-component xn-mydocuments-component .xn-dd-guarantee-link,.xn-component xn-mydocuments-component .xn-memberships-link,.xn-component xn-mymemberships-component .xn-dd-guarantee-link,.xn-component xn-mymemberships-component .xn-memberships-link,.xn-component xn-mypayments-component .xn-dd-guarantee-link,.xn-component xn-mypayments-component .xn-memberships-link {
    text-align: left
}

.xn-component .xn-container.receipt>.xn-container>.Items .xn-dd-guarantee-link>a,.xn-component .xn-container.receipt>.xn-container>.Items .xn-memberships-link>a,.xn-component xn-bookinghistory-component .xn-dd-guarantee-link>a,.xn-component xn-bookinghistory-component .xn-memberships-link>a,.xn-component xn-lhreceipt-component .Items .xn-dd-guarantee-link>a,.xn-component xn-lhreceipt-component .Items .xn-memberships-link>a,.xn-component xn-memberdebts-component .xn-dd-guarantee-link>a,.xn-component xn-memberdebts-component .xn-memberships-link>a,.xn-component xn-mydocuments-component .xn-dd-guarantee-link>a,.xn-component xn-mydocuments-component .xn-memberships-link>a,.xn-component xn-mymemberships-component .xn-dd-guarantee-link>a,.xn-component xn-mymemberships-component .xn-memberships-link>a,.xn-component xn-mypayments-component .xn-dd-guarantee-link>a,.xn-component xn-mypayments-component .xn-memberships-link>a {
    display: inline-block;
    padding: 8px 20px;
    border-radius: 35px;
    background: #e9530e!important;
    color: #fff;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    min-width: 150px;
    text-align: center;
    text-transform: none
}

.xn-component .xn-container.receipt>.xn-container>.Items .xn-dd-guarantee-link,.xn-component xn-bookinghistory-component .xn-dd-guarantee-link,.xn-component xn-lhreceipt-component .Items .xn-dd-guarantee-link,.xn-component xn-memberdebts-component .xn-dd-guarantee-link,.xn-component xn-mydocuments-component .xn-dd-guarantee-link,.xn-component xn-mymemberships-component .xn-dd-guarantee-link,.xn-component xn-mypayments-component .xn-dd-guarantee-link {
    padding-top: 60px
}

.xn-component .xn-container.receipt>.xn-container>.Items .xn-memberships-link>a,.xn-component xn-bookinghistory-component .xn-memberships-link>a,.xn-component xn-lhreceipt-component .Items .xn-memberships-link>a,.xn-component xn-memberdebts-component .xn-memberships-link>a,.xn-component xn-mydocuments-component .xn-memberships-link>a,.xn-component xn-mymemberships-component .xn-memberships-link>a,.xn-component xn-mypayments-component .xn-memberships-link>a {
    background: #435558!important
}

.xn-component xn-selectsite-component #xn-change-site-group {
    background: #e9530e
}

.xn-component xn-selectsite-component #xn-change-site-group label {
    color: #fff
}

.xn-component xn-selectsite-component #xn-change-site-group .xn-buttons .xn-button {
    border-radius: 35px;
    background: #2d393b!important;
    color: #fff
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form select {
    border: 1px solid #dbdedf;
    color: #2d393b
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+input+label,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+label {
    color: #2d393b
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+input+label a,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]+label a {
    color: #b9420b
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]:checked+input+label>span.xn-tick,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]:checked+label>span.xn-tick {
    background-color: #b9420b;
    border-color: #b9420b
}

.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]:checked+input+label:before,.xn-component xn-selectsite-component .xn-modal .xn-detail form input[type=checkbox]:checked+label:before {
    color: #b9420b
}

.xn-component xn-listfilter-component>div>.xn-heading:before,.xn-component xn-listfilter-component>div>p {
    color: #2d393b
}

.xn-component xn-listfilter-component #xn-hide-list-filters-button-group .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-listfilter-component>.xn-filters .xn-search-filter .xn-heading {
    color: #2d393b
}

.xn-component xn-listfilter-component>.xn-filters .xn-search-filter .xn-filter-text-search .xn-input-group .xn-inputs #xn-contactTelephoneNumber,.xn-component xn-listfilter-component>.xn-filters .xn-search-filter .xn-filter-text-search .xn-input-group .xn-inputs input[type=date],.xn-component xn-listfilter-component>.xn-filters .xn-search-filter .xn-filter-text-search .xn-input-group .xn-inputs input[type=email],.xn-component xn-listfilter-component>.xn-filters .xn-search-filter .xn-filter-text-search .xn-input-group .xn-inputs input[type=password],.xn-component xn-listfilter-component>.xn-filters .xn-search-filter .xn-filter-text-search .xn-input-group .xn-inputs input[type=tel],.xn-component xn-listfilter-component>.xn-filters .xn-search-filter .xn-filter-text-search .xn-input-group .xn-inputs input[type=text] {
    border: 1px solid #dbdedf;
    color: #2d393b
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-heading {
    background: #f0f1f2;
    color: #2d393b
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-heading:before {
    color: #2d393b
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-heading.xn-filter-items-visibility {
    color: #fff;
    background: #e9530e
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-heading.xn-filter-items-visibility:before {
    color: #fff
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid {
    background: #6f8d92
}

@media screen and (max-width: 767px) {
    .xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li {
        flex-basis:48.75%!important;
        margin-right: 1.25%
    }
}

@media screen and (max-width: 370px) {
    .xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li {
        flex-basis:100%!important;
        margin-right: 0
    }
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li .xn-card {
    background-color: #f0f1f2
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li .xn-card .xn-heading {
    color: #2d393b
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li .xn-card .xn-heading:before {
    background: #fff;
    border: 1px solid #6f8d92
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li.xn-selected .xn-card {
    background-color: #2d393b
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li.xn-selected .xn-card .xn-heading {
    color: #fff
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid li.xn-selected .xn-card .xn-heading:before {
    background: #b9420b;
    border: 1px solid #b9420b
}

.xn-component xn-listfilter-component>.xn-filters>div>div:not(.xn-search-filter)>.xn-grid.xn-filter-items-visibility {
    background: #e9530e
}

.xn-component xn-listfilter-component #xn-saved-search-modal {
    width: 100%
}

.xn-component xn-listfilter-component #xn-saved-search-modal form {
    padding-top: 16px;
    margin-top: 0;
    border-top: 1px solid #dbdedf
}

.xn-component xn-listfilter-component #xn-saved-search-modal form .xn-buttons {
    flex-wrap: wrap;
    padding-bottom: 0
}

.xn-component xn-listfilter-component #xn-saved-search-modal form .xn-buttons .xn-button {
    flex-basis: 49%;
    margin-left: 0;
    margin-right: 1%;
    padding: 5px 15px;
    font-size: 1rem;
    margin-bottom: 10px
}

.xn-component xn-listfilter-component #xn-saved-search-modal form .xn-buttons .xn-button:nth-child(2n) {
    margin-right: 0;
    margin-left: 1%
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group label,.xn-component xn-savefilter-component>div:not(.xn-modal) .xn-heading:before {
    color: #2d393b
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-current-filter .xn-button.xn-cta {
    background: #b9420b!important
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-input-group #xn-save-filter {
    border: 1px solid #dbdedf;
    color: #2d393b
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-input-group .xn-button {
    border-radius: 35px;
    background: #2d393b!important;
    color: #fff
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button {
    color: #2d393b
}

.xn-component xn-savefilter-component>div:not(.xn-modal) #xn-saved-search-button-group .xn-buttons .xn-button:before {
    color: #b9420b
}

.xn-component xn-savefilter-component #xn-saved-search-modal table tbody tr {
    border-bottom: 1px solid #dbdedf
}

.xn-component xn-savefilter-component #xn-saved-search-modal table tbody tr td {
    color: #2d393b;
    background: #fff
}

.xn-component xn-savefilter-component #xn-saved-search-modal table tbody tr td .xn-button {
    background: #e9530e!important;
    color: #fff
}

.xn-component xn-savefilter-component #xn-saved-search-modal table tbody tr td a:before {
    color: #e9530e!important
}

.xn-component xn-termsandconditionslink-component {
    display: block;
    color: #2d393b;
    margin-bottom: 30px;
    font-weight: 400;
    font-size: .875rem
}

.xn-component xn-termsandconditionslink-component a {
    color: #b9420b;
    border: 0;
    font-weight: 800
}

.xn-component xn-day-selector .day-selector {
    border-top: 1px solid #e6e7e8;
    border-bottom: 1px solid #e6e7e8
}

.xn-component xn-day-selector .day-selector li.calendar svg path,.xn-component xn-day-selector .day-selector li.next-week svg path,.xn-component xn-day-selector .day-selector li.prev-week svg path {
    fill: #2d393b
}

.xn-component xn-day-selector .day-selector li.day .name {
    color: #b9420b
}

.xn-component xn-day-selector .day-selector li.day .date {
    color: #2d393b
}

.xn-component xn-day-selector .day-selector li.day:before {
    background: #e6e7e8
}

.xn-component xn-day-selector .day-selector li.day.selected {
    background: #2d393b
}

.xn-component xn-day-selector .day-selector li.day.selected .date,.xn-component xn-day-selector .day-selector li.day.selected .name {
    color: #d2c6c4
}

@media screen and (max-width: 767px) {
    .xn-component xn-dedicatedtimetable-component>.xn-input-group {
        width:100%
    }
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+input+label,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+label {
    color: #2d393b
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+input+label a,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]+label a {
    color: #b9420b
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]:checked+input+label>span.xn-tick,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]:checked+label>span.xn-tick {
    background-color: #b9420b;
    border-color: #b9420b
}

.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]:checked+input+label:before,.xn-component xn-dedicatedtimetable-component>.xn-input-group input[type=checkbox]:checked+label:before {
    color: #b9420b
}

.xn-component xn-dedicatedtimetable-component xn-termsandconditionslink-component {
    width: 50%;
    text-align: right;
    margin-bottom: 40px
}

@media screen and (max-width: 767px) {
    .xn-component xn-dedicatedtimetable-component xn-termsandconditionslink-component {
        width:100%;
        text-align: left
    }
}

.xn-component xn-dedicatedtimetable-component xn-day-selector:before,.xn-component xn-dedicatedtimetable-component>p {
    color: #2d393b
}

.xn-component xn-dedicatedtimetable-component>table tbody tr {
    border-bottom: 1px solid #dbdedf
}

.xn-component xn-dedicatedtimetable-component>table tbody tr td {
    color: #2d393b;
    background: #fff
}

.xn-component xn-dedicatedtimetable-component>table tbody tr td .xn-button {
    background: #e9530e!important;
    color: #fff
}

.xn-component xn-dedicatedtimetable-component>table tbody tr td a i {
    color: #e9530e!important
}

.xn-component xn-dedicatedtimetable-component>table tbody tr.xn-selected td {
    color: #fff;
    background: #b9420b
}

.xn-component xn-bookinghistory-component #xn-cancel-booking-confirm .xn-buttons {
    padding-top: 20px
}

.xn-component xn-bookinghistory-component #xn-cancel-booking-confirm .xn-buttons .xn-button {
    margin: 0
}

.xn-component xn-bookinghistory-component+.xn-links li,.xn-component xn-memberdebts-component+.xn-links li,.xn-component xn-mypayments-component+.xn-links li {
    text-align: left
}

.xn-component xn-bookinghistory-component+.xn-links li>a,.xn-component xn-memberdebts-component+.xn-links li>a,.xn-component xn-mypayments-component+.xn-links li>a {
    display: inline-block;
    padding: 8px 20px;
    border-radius: 35px;
    background: #435558!important;
    color: #fff;
    border: 0;
    font-weight: 400;
    font-size: .875rem;
    min-width: 150px;
    text-align: center;
    text-transform: none
}

.xn-component xn-bookinghistory-component+.xn-links li:first-child>a,.xn-component xn-memberdebts-component+.xn-links li:first-child>a,.xn-component xn-mypayments-component+.xn-links li:first-child>a {
    margin-top: 20px;
    background: #e9530e!important
}

.xn-component xn-lhreceipt-component .xn-modal .xn-detail>div>p {
    margin-top: 10px
}

.xn-component xn-lhreceipt-component .xn-modal .xn-detail>p {
    text-align: center;
    font-style: italic;
    color: #2d393b
}

.xn-component xn-memberdebts-component .xn-total-due-wrapper {
    color: #2d393b
}

.xn-component xn-memberdebts-component .xn-total-due-wrapper .xn-total-due {
    color: #b9420b
}

.xn-component xn-memberdebts-component tfoot td {
    color: #2d393b
}

.xn-component xn-memberdebts-component tfoot td .xn-button {
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-memberdebts-component tfoot td:nth-child(2) {
    color: #b9420b
}

.xn-component .xn-container.receipt>.xn-container {
    padding: 4px;
    margin: 8px
}

.xn-component .xn-container.receipt>.xn-container>div,.xn-component .xn-container.receipt>.xn-container>div>p,.xn-component .xn-container.receipt>.xn-container>p {
    width: 100%;
    padding: 0;
    margin: 0
}

.xn-component .xn-container.receipt>.xn-container>div>p,.xn-component .xn-container.receipt>.xn-container>p {
    padding-bottom: 20px;
    color: #2d393b;
    font-weight: 400;
    font-size: .875rem
}

.xn-component .xn-container.receipt>.xn-container>div>p a,.xn-component .xn-container.receipt>.xn-container>p a {
    border: 0;
    color: #b9420b;
    font-weight: 800
}

.xn-component .xn-container.receipt>.xn-container>.Items {
    padding-top: 20px;
    padding-bottom: 10px
}

.xn-component .xn-container.receipt>.xn-container>.Items table {
    margin-top: 0
}

.xn-component xn-bookinglist-component .xn-input-group.xn-bookings-order label {
    color: #2d393b
}

.xn-component xn-bookinglist-component .xn-input-group.xn-bookings-order select {
    border: 1px solid #f0f1f2;
    background: #f0f1f2;
    color: #2d393b
}

.xn-component xn-bookinglist-component xn-card-component .xn-card {
    border: 20px solid #f0f1f2;
    background: #fff
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-heading {
    order: 0;
    background: #f0f1f2;
    color: #2d393b
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-image {
    order: 1
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-more-info {
    order: 3;
    color: #fff
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-more-info:after,.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-more-info:hover:after {
    background: #2196f3
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-booking-description {
    order: 2;
    color: #2d393b
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-content {
    order: 4;
    color: #2d393b
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-content>div {
    border-bottom: 1px solid #e6e7e8
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-alerts {
    order: 5
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-alerts .xn-alert-success {
    background: #008e33!important;
    color: #fff!important
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-alerts .xn-alert-success a {
    color: #fff!important;
    font-weight: 800;
    cursor: pointer!important
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-alerts .xn-alert-success:before {
    color: #fff
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-buttons {
    order: 6
}

.xn-component xn-bookinglist-component xn-card-component .xn-card .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-bookinghistory-component .xn-card {
    margin: 0
}

.xn-component xn-bookinghistory-component .xn-card .xn-content {
    border: 0
}

.xn-component xn-bookinghistory-component .xn-card .xn-content>div {
    flex-basis: 100%!important
}

.xn-component xn-membershipprices-component>section>form .xn-input-group label {
    color: #2d393b
}

.xn-component xn-membershipprices-component>section>form .xn-input-group select {
    border: 1px solid #f0f1f2;
    background: #f0f1f2;
    color: #2d393b
}

.xn-component xn-membershipprice-component {
    height: auto
}

.xn-component xn-membershipprice-component xn-card-component .xn-card {
    background: #2d393b
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-heading {
    background: #171d1e;
    color: #fff
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pence,.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds,.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-cost .xn-pounds>span,.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-frequency {
    color: #e9530e
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-additional-fees,.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-payment-method {
    color: #fff
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-pay-today span {
    color: #e9530e
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-toggle-additional-benefits {
    border-radius: 35px;
    background: #e9530e!important;
    color: #fff
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-toggle-applicable-sites {
    border-radius: 35px;
    background: #435558!important;
    color: #fff
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-add-to-basket {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-membership-benefits {
    background: #f0f1f2
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-content .xn-membership-benefits .xn-benefits .xn-title {
    color: #b9420b!important
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-image.Required~.xn-buttons:before,.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-image.required~.xn-buttons:before,.xn-component xn-membershipprice-component xn-card-component .xn-card .xn-img-required~.xn-buttons:before {
    border-radius: 35px;
    background: #435558!important;
    color: #fff
}

.xn-component #xn-book-now-confirm .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

@media screen and (max-width: 370px) {
    .xn-component #xn-book-now-confirm .xn-buttons .xn-button {
        width:100%;
        margin: 10px 0 0!important
    }
}

.xn-component #xn-book-now-confirm .xn-buttons .xn-button.xn-mute {
    background: #fff!important;
    color: #6f8d92;
    border: 1px solid #6f8d92!important
}

.xn-component xn-currentperson-component .xn-modal .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-currentperson-component .xn-modal .xn-buttons .xn-button.xn-mute {
    background: #fff!important;
    color: #6f8d92;
    border: 1px solid #6f8d92!important
}

.xn-component xn-currentperson-component .xn-current-person-header {
    background: #dbdedf
}

@media screen and (max-width: 1024px) {
    .xn-component xn-currentperson-component .xn-current-person-header {
        flex-wrap:wrap;
        width: 75%
    }
}

@media screen and (max-width: 767px) {
    .xn-component xn-currentperson-component .xn-current-person-header {
        width:calc(100% - 30px)
    }
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-current-person-name {
    color: #2d393b
}

@media screen and (max-width: 1024px) {
    .xn-component xn-currentperson-component .xn-current-person-header .xn-current-person-name {
        flex:0 0 100%
    }
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-buttons {
    padding: 0
}

@media screen and (max-width: 1024px) {
    .xn-component xn-currentperson-component .xn-current-person-header .xn-buttons {
        width:100%;
        justify-content: space-between
    }
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important
}

@media screen and (max-width: 1024px) {
    .xn-component xn-currentperson-component .xn-current-person-header .xn-buttons .xn-button {
        display:block;
        flex: 1 1 auto
    }

    .xn-component xn-currentperson-component .xn-current-person-header .xn-buttons .xn-button:first-child {
        margin-left: 0
    }
}

.xn-component xn-currentperson-component .xn-current-person-header .xn-buttons .xn-button.xn-primary {
    background: #2d393b!important
}

.xn-component xn-linkedmembers-component .xn-modal .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-linkedmembers-component .xn-modal .xn-buttons .xn-button.xn-mute {
    background: #fff!important;
    color: #6f8d92;
    border: 1px solid #6f8d92!important
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card {
    border: 20px solid #f0f1f2;
    background: #fff
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-heading {
    background: #f0f1f2;
    color: #2d393b
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-prime-linked {
    color: #2d393b
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-linkedmembers-component xn-card-component .xn-card .xn-image,.xn-component xn-linkedmembers-component xn-card-component .xn-card.xn-selected>* {
    background-color: #e9530e
}

@media screen and (max-width: 767px) {
    .xn-component xn-linkedmembers-component>.xn-buttons {
        width:auto;
        flex-wrap: wrap
    }
}

.xn-component xn-linkedmembers-component>.xn-buttons .xn-button {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

@media screen and (max-width: 767px) {
    .xn-component xn-linkedmembers-component>.xn-buttons .xn-button {
        display:block;
        width: 100%;
        flex-basis: 100%;
        margin: 15px 0 0
    }
}

.xn-component .xn-members-home-addlinkedperson .xn-container {
    padding: 0 16px
}

.xn-component .xn-members-home-addlinkedperson .xn-container p {
    font-weight: 400;
    font-size: .875rem;
    color: #2f3e45
}

.xn-component .xn-members-home-addlinkedperson .xn-container xn-profile-component {
    margin: 20px 0 0;
    padding: 20px 0 0;
    border-top: 1px solid #e6e7e8
}

.xn-component #skip-to-content-link {
    border-radius: 35px;
    background: #b9420b!important;
    color: #fff
}

.xn-component ul.xn-grid>li.xn-selected .xn-card {
    background-color: #e9530e
}

.xn-component table:not(.xn-qr-code) tbody tr td.xn-actions a {
    color: #e9530e
}

.xn-component table:not(.xn-qr-code) tbody tr.xn-overdue {
    color: #ea0001
}

.xn-component table:not(.xn-qr-code) .xn-sortable-header.xn-sort-asc:after,table:not(.xn-qr-code) .xn-sortable-header.xn-sort-desc:after,.xn-component xn-changepassword-component .xn-form .xn-required-message,.xn-component xn-changepassword-component .xn-form .xn-required-message:before {
    color: #e9530e
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-instruction,.xn-component xn-changepassword-component .xn-form .xn-heading-text {
    color: #2d393b
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-instruction a {
    background: #b9420b;
    color: #fff
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group label {
    color: #2d393b
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-required-text:before {
    color: #ea0001
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-inputs input[type=email],.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-inputs input[type=password],.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group .xn-inputs input[type=text] {
    border: 1px solid #dbdedf;
    color: #2d393b
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+input+label,.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+label {
    color: #2d393b
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+input+label a,.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]+label a {
    color: #b9420b
}

.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]:checked+input+label>span.xn-tick,.xn-component xn-changepassword-component .xn-form .xn-fields .xn-input-group input[type=checkbox]:checked+label>span.xn-tick {
    background-color: #b9420b;
    border-color: #b9420b
}

.xn-component xn-changepassword-component .xn-form .xn-buttons .xn-button {
    background: #b9420b;
    color: #fff
}

.xn-component xn-changepassword-component .xn-form .xn-buttons+.xn-instruction {
    color: #2d393b
}

.xn-component xn-changepassword-component .xn-form .xn-form-links-list ul li a {
    background: #e9530e;
    color: #fff
}

.xn-component #xn-cookiebanner-component .xn-cookie-banner-header .xn-buttons .xn-button {
    background-color: #e9530e
}

.xn-component #xn-cookiebanner-component .xn-cookie-banner-header .xn-buttons .xn-button:hover {
    background-color: #b9420b
}

.xn-component xn-listfilter-component .xn-filters>div>div>.xn-heading.xn-items-selected {
    background: #e9530e
}

.xn-component xn-listfilter-component .xn-filters>div>div>.xn-heading.xn-items-selected:hover {
    background: #b9420b
}

.xn-component xn-listfilter-component li.xn-selected #xn-card-component .xn-card:hover {
    background-color: #b9420b
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-heading,.xn-component xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-heading {
    color: #fff;
    background: #6f8d92
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-heading:before,.xn-component xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-heading:before {
    color: #fff
}

.xn-component xn-listfilter-component .xn-filters>div>div div.xn-date-filter>.xn-heading.xn-filter-items-visibility,.xn-component xn-listfilter-component .xn-filters>div>div div.xn-type-filter>.xn-heading.xn-filter-items-visibility {
    color: #2d393b;
    background: #f0f1f2
}

.xn-component xn-membershipfilter-component li.xn-selected #xn-card-component .xn-card:hover {
    background-color: #b9420b
}

.xn-component xn-membershipprice-component .xn-pay-today span {
    border-bottom: 1px solid #e9530e
}

.xn-component xn-membershipprice-component .xn-toggle-additional-benefits,.xn-component xn-membershipprice-component .xn-toggle-applicable-sites,.xn-component xn-membershipprice-component ul.xn-benefits li.xn-toggle-applicable-sites,.xn-component xn-membershipprice-component ul.xn-sites li.xn-toggle-applicable-sites {
    color: #2d393b
}

.xn-component xn-membershipprice-component ul.xn-sites .xn-multi-site {
    color: #e9530e
}

.xn-component #xn-myMemberships-component table tbody tr td:nth-child(5) .xn-added-by:after,#xn-myMemberships-component table tbody tr td:nth-child(5) .xn-added-by:before {
    color: #2d393b
}

.xn-component xn-calendar-popup .title .next-month,.xn-component xn-calendar-popup .title .prev-month {
    color: #e9530e
}

.xn-component xn-calendar-popup .title .next-month:hover,.xn-component xn-calendar-popup .title .prev-month:hover {
    background-color: #e9530e
}

.xn-component xn-calendar-popup table.calendar tr.calendar-weekdays td.calendar-day.selected .day-name {
    color: #e9530e
}

.xn-component xn-calendar-popup table.calendar td.calendar-day:hover:not(.disabled):not(.selected) .day-number {
    background-color: #e9530e
}

.xn-component xn-calendar-popup table.calendar td.calendar-day.selected .day-number {
    background-color: #2d393b
}

.xn-component .xn-popup .overlay .container .body .title,.xn-component .xn-popup .overlay .container .header .title,.xn-component xn-event-selector .event:hover .details .book-now {
    color: #e9530e
}

.xn-component .xn-popup .overlay .container .footer .button.cta,.xn-component xn-timetable-selector .xn-popup .overlay .container .body ul.additional-timetables li:not(.spacer).selected {
    background-color: #e9530e
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header {
    border-radius: 35px
}

.xn-component .xn-header .xn-title {
    color: #e9530e
}

.xn-component .xn-header .xn-heading-text {
    color: #000
}

.xn-component .xn-header .xn-required-message,.xn-component .xn-header .xn-required-message:before {
    color: #b9420b
}

.xn-component .xn-menu-buttons .xn-menu-button .xn-text-wrapper {
    background-color: #e9530e
}

.xn-component .xn-menu-buttons .xn-menu-button:focus .xn-text-wrapper,.xn-component .xn-menu-buttons .xn-menu-button:hover .xn-text-wrapper {
    background-color: #b9420b
}

.xn-component body.xn-members-home-index .xn-container .xn-tile .xn-menu-buttons .xn-options-title,.xn-component body.xn-members-home-index header .xn-header .xn-title {
    color: #000
}

.xn-component .xn-members-home-index .xn-container,.xn-component .xn-members-home-index .xn-container .xn-tile,.xn-component .xn-public-home-index .xn-container,.xn-component .xn-public-home-index .xn-container .xn-tile {
    background: 0
}

.xn-component #sidebar-wrapper #xn-help-close {
    background-color: #e9530e
}

.xn-component .xn-navbar {
    background: #e9530e
}

.xn-component .xn-navbar .xn-navbar-brand {
    background-color: #e9530e
}

.xn-component .xn-navbar .xn-navbar-brand:hover {
    background-color: #b9420b;
    border-color: #b9420b
}

.xn-component xn-basketsummary-component .xn-detail,.xn-component xn-basketsummarytest-component .xn-detail {
    background: #b9420b
}

.xn-component xn-basketsummary-component .xn-detail .xn-empty-basket,.xn-component xn-basketsummarytest-component .xn-detail .xn-empty-basket {
    color: #000
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description,.xn-component xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description {
    color: #2d393b
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description:after,.xn-component xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-description:after {
    background: #dbdedf
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost,.xn-component xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost {
    color: #2d393b
}

.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost:after,.xn-component xn-basketsummarytest-component .xn-detail .xn-items tbody tr:not(.xn-membership-breakdown):not(.xn-spacer) .xn-cost:after {
    background: #dbdedf
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total-text,.xn-component xn-basketsummary-component .xn-detail .xn-items tbody tr.xn-membership-breakdown td,.xn-component xn-basketsummarytest-component .xn-detail .xn-items .xn-total-text,.xn-component xn-basketsummarytest-component .xn-detail .xn-items tbody tr.xn-membership-breakdown td {
    color: #2d393b
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total-text:before,.xn-component xn-basketsummarytest-component .xn-detail .xn-items .xn-total-text:before {
    background: #dbdedf
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total,.xn-component xn-basketsummarytest-component .xn-detail .xn-items .xn-total {
    color: #b9420b
}

.xn-component xn-basketsummary-component .xn-detail .xn-items .xn-total:before,.xn-component xn-basketsummarytest-component .xn-detail .xn-items .xn-total:before {
    background: #dbdedf
}

.xn-component xn-basketsummary-component .xn-detail .xn-buttons .xn-button,.xn-component xn-basketsummarytest-component .xn-detail .xn-buttons .xn-button {
    background: #b9420b!important;
    color: #fff
}

.xn-component xn-basketsummary-component:hover .xn-summary,.xn-component xn-basketsummarytest-component:hover .xn-summary {
    background: #b9420b
}

.xn-component .xn-brand-header {
    height: 80px;
    background-color: #2d393b
}

.xn-component .xn-brand-header .xn-brand-header-content .xn-icon-logo {
    background: url(logo-white.6e67a39b.png);
    background-size: cover;
    width: 110px;
    height: 62px
}

.xn-component .xn-brand-header .xn-brand-header-content .xn-brand-header-title {
    color: #fff
}

.xn-component .xn-button.xn-cta {
    background-color: #e9530e
}

.xn-component .xn-members-home-index,.xn-component .xn-public-home-index {
    background-color: #fff;
    background-attachment: fixed;
    background-size: cover;
    min-height: 100vh
}

.xn-component .xn-members-home-index header .xn-header .xn-title,.xn-component .xn-public-home-index header .xn-header .xn-title {
    color: #000
}

.xn-component .xn-members-home-index header .xn-header .xn-title span,.xn-component .xn-public-home-index header .xn-header .xn-title span {
    color: #e9530e
}

.xn-component .xn-members-home-index header .xn-header .xn-underline,.xn-component .xn-public-home-index header .xn-header .xn-underline {
    background: #e9530e
}

.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component .xn-notices-title,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component .xn-notices-title {
    color: #fff
}

.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a,.xn-component .xn-members-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a:before,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a,.xn-component .xn-public-home-index .xn-container .xn-tile xn-notices-component .xn-jump-to-options a:before {
    color: #b9420b
}

.xn-component .xn-members-home-index .xn-container .xn-tile .xn-menu-buttons .xn-menu-button:hover .xn-image-wrapper .xn-image-inset .xn-image,.xn-component .xn-public-home-index .xn-container .xn-tile .xn-menu-buttons .xn-menu-button:hover .xn-image-wrapper .xn-image-inset .xn-image {
    color: #fff
}

.xn-component xn-day-selector>ul>li.next-week:before,.xn-component xn-day-selector>ul>li.prev-week:before {
    content: "\e826";
    font-family: icons
}

.xn-component xn-day-selector>ul>li.next-week:before {
    content: "\e827"
}

.xn-component xn-day-selector>ul>li.calendar:before {
    font-family: icons;
    content: "\f133";
    font-size: 24px
}

.xn-component .xn-popup .overlay .container {
    width: unset
}

xn-day-selector>ul>li.next-week:before,.xn-component xn-day-selector>ul>li.prev-week:before {
    content: "\e826";
    font-family: icons;
    color: #000
}

xn-day-selector>ul>li.next-week:before {
    content: "\e827";
    color: #000
}

xn-day-selector>ul>li.calendar:before {
    font-family: icons;
    content: "\f133";
    color: #000;
    font-size: 24px;
    right: 10px;
    position: relative
}

.xn-popup .overlay .container {
    width: unset
}

.xn-component xn-calendar-popup .title .prev-month:before {
    content: "\e826";
    color: #000;
    font-family: icons
}

.xn-component xn-calendar-popup .title .next-month:before {
    content: "\e827";
    color: #000;
    font-family: icons
}

.xn-component xn-calendar-popup .title .month-name {
    color: #000
}

.xn-component xn-time-selector ul.time-selector li.earlier:before {
    content: "\e826";
    color: #000;
    font-family: icons;
    padding: 7px 6px 0
}

.xn-component xn-time-selector ul.time-selector li.later:after {
    content: "\e827";
    color: #000;
    font-family: icons;
    padding: 7px 6px 0
}

.xn-component li.current-time {
    display: none
}

.xn-component xn-event-selector .event .details .book-now:after {
    content: "";
    margin: 0
}

.xn-component xn-event-selector .body .on-next .xn-row:not(.header) .title {
    word-break: normal
}

.xn-component .xn-popup .overlay .container .header .close-button:before {
    font-family: icons;
    content: "\e840";
    color: #000;
    font-size: 30px
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .header {
    background: #004331
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header {
    border-radius: 0
}

.xn-component xn-day-selector .day-selector li.day.selected {
    background: #004331
}

.xn-component xn-day-selector .day-selector li.day.selected .date,.xn-component xn-day-selector .day-selector li.day.selected .name {
    color: #fff
}

.xn-component xn-day-selector .date sup {
    display: none
}

.xn-component xn-day-selector .day-selector li.day .name {
    font-size: 1.1rem;
    color: #000
}

.xn-component xn-day-selector .day-selector li.day .date {
    color: #000;
    font-size: .9rem
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header .name {
    font-size: 1.25rem;
    padding: 11px 4px
}

.xn-component xn-time-selector ul.time-selector li.selected+li,.xn-component xn-time-selector ul.time-selector li.selected+li+li {
    background: #195646;
    color: #fff
}

.xn-component xn-time-selector ul.time-selector li.selected {
    background: #004331;
    color: #fff
}

.xn-component xn-event-selector .body .on-next .xn-row.header {
    background: #004331
}

.xn-component xn-event-selector .body .on-next .xn-row:not(.header) {
    background: #004331
}

.xn-component xn-event-selector .event.unbookable {
    background: #dbdad9
}

.xn-component xn-event-selector .event.unbookable .details .title {
    color: #000
}

.xn-component xn-event-selector .event {
    background: #004331;
    color: #fff
}

.xn-component xn-event-selector .event .details .available-places {
    color: #fff;
    margin-top: 5px
}

.xn-component xn-event-selector .event .details .book-now {
    border-radius: 0;
    font-weight: 700
}

.xn-component xn-time-selector ul.time-selector li:hover {
    background: #b3c7c1!important;
    color: #000!important
}

.xn-component xn-day-selector>ul>li:hover:not(.prev-week):not(.next-week):not(.calendar):not(.selected) {
    color: #000;
    background: #b3c7c1
}

.xn-component xn-time-selector ul.time-selector li.earlier.enabled:hover {
    background-color: #b3c7c1
}

.xn-component xn-time-selector ul.time-selector li.later.enabled:hover {
    background-color: #b3c7c1
}

.xn-component xn-day-selector>ul>li.next-week:hover,.xn-component xn-day-selector>ul>li.prev-week:hover {
    background-color: #b3c7c1
}

.xn-component xn-day-selector .day-selector li.calendar:hover {
    background-color: #b3c7c1
}

.xn-component xn-day-selector .day-selector {
    padding-left: 0
}

.xn-component xn-day-selector .day-selector li.prev-week {
    padding: 25px 25px!important
}

.xn-component xn-day-selector .day-selector li.next-week {
    padding: 25px 25px!important
}

.xn-component xn-day-selector .day-selector li.calendar {
    padding: 25px 25px!important
}

.xn-component xn-event-selector .event:hover {
    background-color: #b3c7c1
}

.xn-component xn-event-selector .event:hover .details .title {
    color: #000
}

.xn-component .xn-popup .overlay .container .body .title,.xn-component .xn-popup .overlay .container .header .title,.xn-component xn-event-selector .event:hover .details .book-now {
    color: #000
}

.xn-component xn-event-selector .event:hover .details .available-places {
    color: #000
}

.xn-component xn-event-selector .body .on-next {
    overflow: unset
}

.xn-component xn-event-selector .event.unbookable .details .available-places {
    color: #000
}

.xn-component .xn-popup .overlay .container .header {
    background: #fff
}

.xn-component .header {
    position: static
}

.field_checkgroup.error .errorblock {
    position: relative;
    top: 0;
    margin-top: 0;
    margin-bottom: 0
}

.field_checkgroup.error .errorblock {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    order: 1;
    margin: 0 0 10px 0;
    color: #d4351c
}

.icmform .error .errorblock {
    margin: 0
}

.field_checkgroup.error .icmcheckcontainer>legend {
    margin-bottom: 10px
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header {
    color: black!important
}

.xn-component xn-timetable-selector ul.timetable-selector .selector .header:hover {
    background-color: #dee0e2!important;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)!important;
    color: black!important
}

.xn-timetable-component li:hover {
    background-color: #dee0e2!important;
    box-shadow: inset 0 0 20em rgba(0,0,0,0.2)!important;
    color: black!important
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .name {
    color: white
}

.xn-component xn-timetable-selector ul.timetable-selector .selector.selected .name:hover {
    color: black
}

@media(max-width: 999px) {
    .xn-component xn-timetable-selector ul.timetable-selector .selector .header {
        color:black
    }

    .xn-component xn-timetable-selector ul.timetable-selector .selector .header:hover {
        cursor: pointer;
        background-color: #dee0e2;
        box-shadow: inset 0 0 20em rgba(0,0,0,0.2);
        color: black
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded:after {
        content: "+";
        font-weight: bold;
        font-family: sans-serif
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile .timetables:hover .timetable,#timeTableTest .xn-component xn-timetable-selector ul.timetable-selector.mobile .timetables:active .timetable {
        cursor: pointer;
        box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expand:after,.xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable .expanded:active {
        font-family: sans-serif;
        font-weight: bold;
        content: "â¨¯"
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .prev-day:after {
        font-family: sans-serif;
        font-weight: bold;
        content: "<";
        height: 100%;
        width: 100%;
        position: relative;
        background: #bbbdc0;
        top: -23px;
        color: black;
        right: 32px;
        padding: 22px 25px
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .prev-day:hover:after {
        background: #919395
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .next-day:after {
        font-family: sans-serif;
        font-weight: bold;
        content: ">";
        height: 100%;
        width: 100%;
        position: relative;
        background: #bbbdc0;
        top: -23px;
        color: black;
        left: 32px;
        padding: 22px 25px;
        float: right
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker li .next-day:hover:after {
        background: #919395
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.date-picker {
        background: #d0d3d6;
        margin-top: 0
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations {
        background: #f0f0f0
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .name {
        color: black;
        text-align: left;
        margin: 0;
        width: 60%;
        float: left;
        display: inline-block
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .title {
        font-weight: 300;
        color: black
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations:hover {
        background: #dcdcdc
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location:hover {
        background: #dcdcdc
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location {
        display: block;
        padding: 25px 20px;
        width: auto;
        margin-bottom: 2px;
        background: #f0f0f0
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .expand:after {
        content: "+";
        font-size: 18px;
        font-weight: bold;
        font-family: sans-serif;
        color: black
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .expand {
        height: 30px;
        width: 30px;
        padding: 5px 9px;
        right: 10p;
        color: black;
        margin-top: -9px;
        margin-left: 2px
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li .location .collapse:after {
        font-family: sans-serif;
        font-weight: bold;
        content: "â¨¯";
        font-size: 18px;
        font-weight: bold;
        font-family: sans-serif;
        right: 10p;
        position: absolute;
        left: 275px;
        float: right;
        color: black;
        margin-top: -7px;
        margin-left: 84px
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now {
        display: flex;
        float: right
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .select:after {
        display: none
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile {
        color: #0b0c0c
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li .timetable {
        background: #004331;
        color: white
    }

    .xn-timetable-component .date-picker {
        margin-top: -2px
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now:before {
        content: "Book now";
        color: white;
        background: #004331;
        padding: 5px 5px
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now:hover:before {
        cursor: pointer;
        box-shadow: inset 0 0 20em rgba(0,0,0,0.2)
    }

    .xn-component xn-timetable-selector ul.timetable-selector.mobile li ul.locations li ul.events li.event .book-now:hover:before {
        background: #0b0c0c
    }
}

.a-share__link {
    background: #004331;
    border: solid 3px #004331;
    border-radius: 100%;
    display: inline-block!important;
    height: 46px;
    margin: 05px;
    padding: 3px;
    width: 46px
}

.a-share__link:hover {
    background: #000;
    border-color: #000
}

.a-share__link:focus {
    background: #FD0;
    box-shadow: unset;
    border: solid 3px #000;
    padding: 3px
}

.a-share__link img {
    position: relative;
    top: 1px
}

.a-share__link:focus img {
    filter: invert(1)
}

#share-print-link:focus {
    box-shadow: unset;
    padding: 3px
}

@media print {
    .maincolumns a,.maincolumns a:visited {
        text-decoration: underline
    }

    .maincolumns a[href]:after {
        content: ' (' attr(href) ')';
        font-size: 1rem;
        margin-left: .5rem
    }

    .maincolumns a.a-body__link--cta,.maincolumns a.a-body__link--cta-arrow,.maincolumns a.a-body__link--cta[href]:after,.maincolumns a.a-body__link--cta-arrow[href]:after {
        color: var(--link-color);
        display: block;
        margin-left: 0;
        position: static
    }

    .maincolumns .accordion__content {
        border: 0;
        display: block!important
    }

    .maincolumns .accordion__heading {
        border: 0
    }

    .maincolumns .accordion__heading:after {
        display: none
    }
}

.maincolumns .accordion__content {
    border: 0;
    display: block!important
}

.maincolumns .accordion__heading {
    border: 0
}

.maincolumns .accordion__heading:after {
    display: none
}

.grid__cell--main .accordion__content {
    border: 0;
    display: block!important
}

.grid__cell--main .accordion__heading {
    border: 0
}

.grid__cell--main .accordion__heading:after {
    display: none
}

.body--landing-page .breadcrumb {
    display: none
}

.body--landing-page .maincontent>.container:not(:has(.a-intro--panel)) .a-heading {
    background-color: rgba(0,0,0,0.75);
    border: solid 1px rgba(0,0,0,0.7);
    border-radius: 5px;
    margin-right: 20px;
    padding: .5rem 1rem;
    position: absolute;
    width: auto;
    top: 20px
}

.body--landing-page .maincontent>.container:not(:has(.a-intro--panel)) .a-heading h1 {
    color: #fff;
    margin-bottom: .5rem
}

@media(min-width: 785px) {
    .body--landing-page .a-panel--landing-service-directory {
        background-position:center calc(calc(-18vh + 26%)/2)
    }

    .body--landing-page .a-panel--landing-service-directory .grid__cell--list {
        padding-left: 13px;
        padding-right: 13px
    }

    .body--landing-page .a-panel--landing-service-directory .grid__cell--list:first-child {
        padding-left: 10px
    }

    .body--landing-page .a-panel--landing-service-directory .grid__cell--list:last-child {
        padding-right: 10px
    }
}

.body--landing-page .a-panel--landing-service-directory .grid--list {
    padding-bottom: 20px
}

.body--landing-page .a-panel--landing-service-directory .grid__cellwrap>.item {
    background-color: var(--primary-color);
    border: solid 2px #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%);
    display: grid;
    padding: 10px 1rem;
    text-align: center
}

.body--landing-page .a-panel--landing-service-directory .item__title {
    padding-bottom: 5px
}

.body--landing-page .a-panel--landing-service-directory .item--article a {
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: inherit;
    margin: 0 auto;
    max-width: 100%;
    text-decoration: none
}

.body--landing-page .a-panel--landing-service-directory .item--article:hover {
    background-color: #032118;
    color: #fff;
    text-decoration: underline;
    text-decoration-color: #fff;
    text-decoration-thickness: 1px;
    transition: color .4s ease-in-out,background-color .4s ease-in-out
}

.body--landing-page .a-panel--landing-service-directory .item--article:has(.item__link:focus) {
    background-color: #fd0;
    border-bottom: 0;
    box-shadow: 0 4px var(--body-color);
    color: var(--body-color);
    text-decoration: none
}

.body--landing-page .a-panel--landing-service-directory .item__link:focus {
    border-bottom: 0;
    box-shadow: none;
    color: var(--body-color);
    font-weight: 700;
    text-decoration: none
}

.body--landing-page .a-panel--landing-service-directory .item__imagecontainer {
    display: none;
    margin: 0 auto;
    max-height: 75px;
    max-width: 75px;
    text-align: center
}

.body--landing-page .a-panel--landing-service-directory .item__imagecontainer .gi-responsiveimage--item {
    margin-bottom: 0
}

.body--landing-page .a-panel--landing-service-directory .item__content {
    align-items: center;
    display: grid;
    padding: 0
}

.body--landing-page .a-panel--landing-service-directory .grid[data-grid-mincolwidth]>.grid__cell {
    min-width: 0
}

.body--landing-page .a-panel--landing-service-directory .item__sublinks {
    display: none
}

.body--landing-page .a-panel--landing-alert {
    background-color: #e1e1e1;
    padding: 0
}

.body--landing-page .a-panel--landing-alert .a-panel__body>p {
    display: none
}

.body--landing-page .a-panel--landing-alert .alert {
    background-color: #fff;
    margin: 40px 0 0 0
}

.body--landing-page .a-panel--home-tabs {
    background-color: #e1e1e1;
    padding: 0
}

.body--landing-page .hometabs>.container {
    padding: 0 0 40px 0
}

.body--landing-page .a-panel--home-tabs .gi-accordion__panelcontent--hometabs>ul {
    padding: 0 0 20px 20px
}

.body--landing-page .a-panel--home-tabs .hometabs__lvl2-item {
    padding: 20px 0 0 0
}

.body--landing-page .a-panel--home-tabs .hometabs__panellink:hover {
    text-decoration: underline
}

.body--landing-page .a-panel--home-tabs .hometabs__panellink:focus {
    box-shadow: 0 4px var(--body-color);
    border-bottom: 0
}

.body--landing-page .a-panel--home-tabs .grid__cell--viewall,.template--home.body--landing-page .gi-tabs--hometabs .grid__cell--viewall {
    display: none
}

.body--landing-page .a-panel--landing-featured-banner {
    padding: 2.5rem 0
}

.body--landing-page .a-panel--landing-featured-banner .a-panel__content {
    background-blend-mode: multiply;
    border-radius: 5px;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%);
    min-height: 15rem;
    padding: 1rem 1rem 3rem 1rem;
    text-align: center;
    background-position: center
}

.body--landing-page .a-panel--landing-featured-banner .a-panel__imagecontainer figure {
    display: none
}

.body--landing-page .a-panel--landing-featured-banner .a-panel__title span,.body--landing-page .a-panel--landing-featured-banner .a-panel__summary span {
    background-color: rgba(0,0,0,0.75);
    color: #fff;
    display: inline-block;
    margin: .25rem auto;
    padding: .5rem 1rem
}

.body--landing-page .a-panel--landing-featured-banner .a-panel__link {
    border: solid 2px #fff;
    border-radius: 5px;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%)
}

.body--landing-page .a-panel--landing-featured-banner .a-panel__linkwrap:hover span {
    text-decoration: underline;
    text-decoration-color: #fff;
    text-decoration-thickness: 1px;
    transition: color .4s ease-in-out,background-color .4s ease-in-out
}

.body--landing-page .a-panel--landing-featured-banner .a-panel__linkwrap:focus span {
    border-bottom-color: #fd0;
    box-shadow: 0 4px var(--body-color)
}

.body--landing-page .a-panel--landing-featured-banner.a-panel--8035 .a-panel__content,.body--landing-page .a-panel--landing-featured-banner.a-panel--8449 .a-panel__content {
    background-position-y: 15%
}

.body--landing-page .a-panel--landing-cards {
    padding: 0
}

.body--landing-page .a-panel--landing-cards .a-panel__title,.body--landing-page .a-panel--landing-cards .a-panel__link {
    display: none
}

.body--landing-page .a-panel--landing-cards .grid--list {
    padding-top: 1rem
}

.body--landing-page .a-panel--landing-cards.a-panel--pt.a-panel--list .grid__cell {
    padding: 0 20px 20px 20px
}

.body--landing-page .a-panel--landing-cards.a-panel--pt.a-panel--list .grid {
    margin-left: -20px;
    width: calc(100% + 40px)
}

.body--landing-page .a-panel--landing-cards .grid__cellwrap>.item--article {
    background-color: #ccc;
    box-shadow: 0 2px 8px 0 rgb(11 12 12 / 75%);
    padding: 0 0 .5rem 0
}

.body--landing-page .a-panel--landing-cards .item__imagecontainer {
    margin: 0;
    padding: 0
}

.body--landing-page .a-panel--landing-cards .item__content {
    border-bottom: solid 2px transparent;
    padding-bottom: .5rem;
    padding-top: 1rem
}

.body--landing-page .a-panel--landing-cards .item__title {
    font-size: 1.2rem
}

.body--landing-page .a-panel--landing-cards .item__link {
    color: #000;
    text-decoration: none
}

.body--landing-page .a-panel--landing-cards .item__link:hover {
    text-decoration: underline
}

.body--landing-page .a-panel--landing-cards .item__link:focus {
    display: block;
    background: 0;
    box-shadow: none;
    text-decoration: none
}

.body--landing-page .a-panel--landing-cards .item__content:has(.item__link:focus) {
    background-color: #fd0;
    border-bottom-width: 0;
    box-shadow: 0 -3px #fd0,0 4px var(--body-color);
    color: var(--body-color);
    outline: 3px solid transparent
}

.body--landing-page .a-panel--landing-cards .item__body {
    display: none
}

@media(min-width: 907px) {
    .body--landing-page .a-panel--landing-cards .grid--2col>.grid__cell {
        width:33.33%;
        clear: none
    }
}

@media(min-width: 512px) and (max-width:906px) {
    .body--landing-page .a-panel--landing-cards .grid--2col>.grid__cell:nth-of-type(1) {
        width:100%
    }

    .body--landing-page .a-panel--landing-cards .grid--2col>.grid__cell:nth-of-type(3) {
        clear: none;
        float: right;
        width: 50%
    }
}

@media(min-width: 470px) {
    .a-panel--pt .grid--list.grid--1col .item__imagecontainer {
        padding-right:0
    }

    .grid--list.grid--1col .gi-responsiveimage--item {
        margin-right: 0
    }
}

.body--landing-page .a-panel--landing-service-directory {
    background-image: url('https://www.wiltshire.gov.uk/image/11882/Stonehenge-1920px/original.jpg?m=1694785642147');
    background-position: center top;
    background-size: cover;
    padding: 160px 0 0 0
}

.body--landing-page.body--service-rubbish-and-recycling .a-panel--landing-service-directory {
    background-image: url('https://www.wiltshire.gov.uk/image/12377/rubbish-and-recycling-background-1920/original.jpg');
    background-position: center
}

.body--landing-page.body--service-rubbish-and-recycling .a-panel--landing-service-directory.a-panel--alt-background-1 {
    background-image: url('https://www.wiltshire.gov.uk/image/12391/rubbish-and-recycling-background-1920/original.jpg');
    background-position: center
}

.body--landing-page.body--service-rubbish-and-recycling .a-panel--landing-service-directory.a-panel--alt-background-2 {
    background-image: url('https://www.wiltshire.gov.uk/image/12392/rubbish-and-recycling-background-1920/original.jpg');
    background-position: center
}

/* Component styles for GDS end */