/*
 * BaseHQ per-site theme stylesheet.
 *
 * This file is published to /static/site-themes/basehq.css for low-impact
 * theme-only deploys and mirrors the current BaseHQ overrides.
 */

.theme-basehq {
    --basehq-blue: #00b7e8;
    --basehq-blue-deep: #008fb9;
    --basehq-orange: #ff6a21;
    --site-theme-primary: #ffffff;
    --site-theme-secondary: #00566e;
    --site-theme-accent: var(--basehq-blue);
    --site-theme-accent-strong: var(--basehq-blue-deep);
    --site-theme-surface: #ffffff;
    --site-theme-surface-soft: #eafaff;
    --site-theme-border: rgba(255, 255, 255, 0.28);
    --site-theme-text: #263238;
    --site-theme-muted: #52636a;
    min-height: 100vh;
    color: var(--site-theme-text);
}

.theme-basehq .basehq-main {
    min-height: calc(100vh - 42px);
    background: #fff;
}

.theme-basehq.basehq-subpage .basehq-main {
    background-color: #fff;
    background-image: url('/media/images/basehq/bg-basehq-site-content.original.jpg');
    background-position: center top;
    background-repeat: no-repeat;
    background-size: auto;
}

.theme-basehq.basehq-homepage .basehq-main {
    min-height: calc(100vh - 42px);
    background: linear-gradient(rgba(0, 55, 70, .56), rgba(0, 55, 70, .72)), url('/media/images/basehq/bg-site-base-hq.original.jpg') center / cover fixed;
}

.theme-basehq .basehq-header {
    position: relative;
    z-index: 20;
    min-height: 42px;
    background: var(--basehq-blue);
    color: #fff;
}

.theme-basehq .basehq-header__shell {
    display: flex;
    min-height: 42px;
    max-width: 1200px;
    margin: 0 auto;
    justify-content: flex-end;
    padding: 0 1rem;
}

.theme-basehq .basehq-header__menu {
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
}

.theme-basehq .basehq-header__item {
    position: relative;
}

.theme-basehq .basehq-header__link {
    display: block;
    padding: 11px 16px;
    border-left: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    font-size: .9rem;
    font-weight: 600;
    line-height: 20px;
    text-decoration: none;
}

.theme-basehq .basehq-header__link:hover, .theme-basehq .basehq-header__link.is-active {
    background: rgba(0, 0, 0, .12);
    color: #fff;
}

.theme-basehq .basehq-header__submenu {
    position: absolute;
    top: 100%;
    right: 0;
    display: none;
    min-width: 180px;
    margin: 0;
    padding: .4rem 0;
    list-style: none;
    background: var(--basehq-blue-deep);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .2);
}

.theme-basehq .basehq-header__item:hover .basehq-header__submenu, .theme-basehq .basehq-header__item:focus-within .basehq-header__submenu {
    display: block;
}

.theme-basehq .basehq-header__submenu a {
    display: block;
    padding: .6rem 1rem;
    color: #fff;
    font-size: .875rem;
    text-decoration: none;
}

.theme-basehq .basehq-header__submenu a:hover {
    background: rgba(255, 255, 255, .14);
}

.theme-basehq .basehq-header__socials {
    display: flex;
    margin-left: 0;
}

.theme-basehq .basehq-header__social-link {
    display: inline-flex;
    width: 42px;
    min-height: 42px;
    justify-content: center;
    align-items: center;
    border-left: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 1.1rem;
    text-decoration: none;
}

.theme-basehq .basehq-header__social-link:hover, .theme-basehq .basehq-header__social-link:focus-visible {
    background: rgba(0, 0, 0, .12);
    color: #fff;
}

.theme-basehq .basehq-header__toggle {
    display: none;
    margin-left: auto;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 1.5rem;
}

.theme-basehq .basehq-footer {
    display: block;
    min-height: 0;
    background: transparent;
    position: static;
    margin-top: 2rem;
}

.theme-basehq .basehq-footer__horwood-mark {
    display: inline-block;
    margin-left: 1rem;
    vertical-align: middle;
}

.theme-basehq .basehq-subpage-masthead {
    padding: 1.75rem 1rem;
}

.theme-basehq .basehq-subpage-masthead__inner {
    display: flex;
    max-width: 980px;
    margin: 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
}

.theme-basehq .basehq-subpage-masthead__brand {
    display: block;
    /*flex: 0 1 450px;*/
}

.theme-basehq .basehq-subpage-masthead__brand img {
    display: block;
    width: min(100%, 320px);
    height: auto;
}

.theme-basehq .basehq-subpage-masthead__search {
    width: min(100%, 410px);
    /*flex: 1 1 410px;*/
    margin: 0;
}

.theme-basehq .basehq-subpage-panel {
    max-width: 980px;
    margin: 0 auto;

    box-shadow: 0 0 14px rgba(1, 1, 1, .5);
}

.theme-basehq .basehq-subpage-panel__heading {
    padding: 1.5rem 2.5rem;
    background: rgba(255, 255, 255, .9);
}

.theme-basehq .basehq-subpage-panel__heading .page-title {
    margin: 0;
}

.theme-basehq .basehq-subpage-panel__body {
    padding: 1.25rem 1.875rem;
    background: #fff;
}

.theme-basehq .basehq-subpage-panel__body.has-sidebar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 250px;
    gap: 3rem;
}

.theme-basehq .basehq-subpage-panel__sidebar {
    min-width: 0;
}

@media (max-width: 700px) {
    .theme-basehq .basehq-subpage-masthead__inner {
        align-items: stretch;
        flex-direction: column;
        gap: 1.25rem;
        align-items: center;
    }

    .theme-basehq .basehq-subpage-masthead {
        padding-top: 1.25rem;
    }

    .theme-basehq .basehq-subpage-masthead__brand {
        flex: none;
    }

    .theme-basehq .basehq-subpage-masthead__brand img {
        width: min(76vw, 290px);
        max-width: none;
    }

    .theme-basehq .basehq-subpage-panel__heading,
    .theme-basehq .basehq-subpage-panel__body {
        padding: 1.5rem;
    }

    .theme-basehq .basehq-subpage-panel__body.has-sidebar {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
}

.theme-basehq .basehq-search-results__body {
    padding: 2rem 2.5rem;
    background-color: #FFFFFF;
}

.theme-basehq .basehq-search-results__body.has-sidebar {
    display: grid;
    grid-template-columns: minmax(0, 40rem) minmax(0, 15.625rem);
    justify-content: space-between;
    gap: 2.5rem;
}

.theme-basehq .basehq-search-results__item {
    border-bottom: 1px solid #d7d7d7;
    padding-bottom: 2rem;
    margin-bottom: 2.5rem;
}

.theme-basehq .basehq-announcement-index__intro {
    margin-bottom: 2.5rem;
}

.theme-basehq .basehq-search-results__item h2 {
    margin: 0 0 .65rem;
}

.theme-basehq .basehq-search-results__item h2 a {
    color: #00bef3;
    font-size: 1.25rem;
    font-weight: bold;
    text-decoration: none;
}

.theme-basehq .basehq-search-results__item p,
.theme-basehq .basehq-search-results__message {
    color: #4b4b4b;
}

.theme-basehq .basehq-search-results__read-more {
    color: #39b979;
    font-size: 1.125rem;
    font-weight: 700;
    text-decoration: none;
}

.theme-basehq .basehq-search-results__bottom {
    padding: 0 2.5rem 2.5rem;
}

@media (max-width: 61.1875em) {
    .theme-basehq .basehq-search-results__body.has-sidebar {
        display: block;
    }

    .theme-basehq .basehq-search-results__sidebar {
        margin-top: 2rem;
    }
}

@media (max-width: 700px) {
    .theme-basehq .basehq-search-results__body,
    .theme-basehq .basehq-search-results__bottom {
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }
}

.theme-basehq .basehq-mobile-nav {
    position: fixed;
    inset: 0;
    z-index: 80;
    visibility: hidden;
    opacity: 0;
    transition: visibility .2s, opacity .2s;
}

.theme-basehq .basehq-mobile-nav.is-open {
    visibility: visible;
    opacity: 1;
}

.theme-basehq .basehq-mobile-nav__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 29, 38, .72);
}

.theme-basehq .basehq-mobile-nav__panel {
    position: relative;
    display: flex;
    width: min(84vw, 330px);
    height: 100%;
    margin-left: auto;
    flex-direction: column;
    padding: 4.5rem 1.5rem 2rem;
    background: var(--basehq-blue-deep);
    box-shadow: -10px 0 30px rgba(0, 0, 0, .25);
}

.theme-basehq .basehq-mobile-nav__close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 1.7rem;
}

.theme-basehq .basehq-mobile-nav__link, .theme-basehq .basehq-mobile-nav__child-link {
    padding: .75rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}

.theme-basehq .basehq-mobile-nav__child-link {
    padding-left: 1rem;
    font-size: .9rem;
    font-weight: 400;
}

.theme-basehq .basehq-flash-stack {
    max-width: 72rem;
    margin: 1rem auto;
    padding: 0 1rem;
}

.theme-basehq .basehq-flash {
    padding: .8rem 1rem;
    background: #fff;
    color: #263238;
}

.theme-basehq.basehq-homepage .ui-section {
    position: relative;
}

.theme-basehq.basehq-homepage .rs-simple-title,
.theme-basehq.basehq-homepage .basehq-title-heading,
.theme-basehq.basehq-homepage .basehq-title-copy {
    color: #fff;
}

.theme-basehq.basehq-homepage .basehq-title-band {
    border-color: rgba(255, 255, 255, .4);
    background: rgba(0, 79, 101, .28);
    box-shadow: none;
}

@media (max-width: 700px) {
    .theme-basehq .basehq-header__nav {
        display: block;
        width: 100%;
        margin: 0 -1rem;
    }

    .theme-basehq .basehq-header__menu {
        width: 100%;
    }

    .theme-basehq .basehq-header__item {
        flex: 1 1 0;
    }

    .theme-basehq .basehq-header__link {
        padding-right: .35rem;
        padding-left: .35rem;
        text-align: center;
    }

    .theme-basehq .basehq-header__socials {
        display: none;
    }

    .theme-basehq .basehq-header__toggle {
        display: none;
    }

    .theme-basehq .basehq-mobile-nav {
        display: none;
    }

    .theme-basehq.basehq-homepage .basehq-main {
        background-attachment: scroll;
    }
}

.theme-basehq a {
    text-underline-offset: 0.18em;
}

.theme-basehq .rs-simple-title {
    color: var(--site-theme-primary);
    letter-spacing: -0.03em;
}

.theme-basehq .basehq-title-block {
    position: relative;
}

.theme-basehq .basehq-title-band {
    display: inline-flex;
    max-width: min(100%, 920px);
    flex-direction: column;
    gap: 0.85rem;
    border: 1px solid var(--site-theme-border);
    border-radius: 28px;
    padding: clamp(1.5rem, 3vw, 2.5rem);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(236, 254, 255, 0.96));
    box-shadow: 0 24px 80px rgba(15, 23, 42, 0.08);
}

.theme-basehq .basehq-title-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    margin: 0;
    color: var(--site-theme-accent-strong);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.theme-basehq .basehq-title-kicker::before {
    content: "";
    width: 2.75rem;
    height: 1px;
    background: currentColor;
    opacity: 0.7;
}

.theme-basehq .basehq-title-heading {
    margin: 0;
    color: var(--site-theme-primary);
    font-weight: 800;
    line-height: 0.98;
    letter-spacing: -0.04em;
    text-wrap: balance;
}

.theme-basehq .basehq-title-copy {
    max-width: 46rem;
    margin: 0;
    color: var(--site-theme-muted);
    font-size: 1rem;
    line-height: 1.75;
}

.theme-basehq .basehq-title-block--center .basehq-title-band {
    margin-inline: auto;
    align-items: center;
    text-align: center;
}

.theme-basehq .basehq-title-block--right .basehq-title-band {
    margin-left: auto;
    align-items: flex-end;
    text-align: right;
}

.theme-basehq .basehq-title-block--left .basehq-title-band {
    margin-right: auto;
    align-items: flex-start;
    text-align: left;
}

/*
Theme Name: Surf Pacific Standard Responsive
Theme URI: http://www.surfpacific.com
Description: A responsive WordPress theme designed and built by Surf Pacific.
Author: Surf Pacific
Author URI: http://www.surfpacific.com
Version: 1.1
*/

/*------------------------------------*\
    CONTENTS
\*------------------------------------*/

/*

1. BASE.........Reset and default styles
2. LAYOUT.......Main and unique elements
3. MODULE............Reusable components
4. STATE..................Current states
5. THEME............Branding and colours

*/

/*------------------------------------*\
    1. $BASE
\*------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, capt, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

* {
    box-sizing: border-box;
}

ul, ol {
    list-style: none;
}

body {
    background: #fff url(images/bg-site.jpg) 50% 0 no-repeat;
    font: 300 100%/1.618em 'Roboto', Arial, Helvetica, sans-serif;
    color: #4b4b4b;
}

body.not-home {
    background-image: url(images/bg-site-content.jpg);
}

/* Give elements the same bottom margin to create consistent vertical rhythm */

p, ul, ol, blockquote, table, hr, iframe, .grid, .cta, .message, .button, .banner, .has-mb {
    margin-bottom: 1.618em;
}

/*------------------------------------*\
    $TYPOGRAPHY
\*------------------------------------*/
.rs-outer {
    padding-left: 0;
    padding-right: 0;
}

.rs-content h1, .rs-content h2, .rs-content h3, .rs-content h4, .rs-content h5, .rs-content h6 {
    font-weight: 700;
    color: #00bef3;
}

.rs-content h1, .alpha {
    font-size: 2.125em; /* 34px */
    line-height: 1.235em; /* 42px */
    margin-bottom: 0.618em; /* 21px */
}

.rs-content h2, .beta {
    font-size: 1.438em; /* 23px */
    line-height: 1.348em; /* 31px*/
    margin-bottom: 0.913em; /* 21px*/
}

.rs-content h3, .gamma {
    font-size: 1.188em; /* 19px*/
    line-height: 1.421em; /* 27px*/
    margin-bottom: 1.105em; /* 21px*/
}

.rs-content h4, .delta {
    font-size: 1.125em; /* 18px*/
    line-height: 1.444em; /* 26px*/
    margin-bottom: 1.167em; /* 21px*/
}

.rs-content h5, .epsilon {
    font-size: 1em; /* 16px*/
    line-height: 1.5em; /* 24px*/
    margin-bottom: 1.313em; /* 21px*/
}

.rs-content h6, .zeta {
    font-size: 0.875em; /* 14px*/
    line-height: 1.571em; /* 22px*/
    margin-bottom: 1.5em; /* 21px*/
}

small, .small {
    font-size: 0.875em;
    line-height: 1.4em;
}

/*------------------------------------*\
    $LINKS
\*------------------------------------*/

a:link, a:visited {
    text-decoration: none;
    font-weight: 400;
    color: #00bff3;
    transition: all .25s ease-in-out;
}

a:hover {
    text-decoration: underline;
    outline: none;
    color: #177cb8;
}

a:focus, a:active {
    outline: none
}

a.no-td:hover {
    text-decoration: none;
}

a.block-link {
    display: block;
}

/*------------------------------------*\
    $BUTTONS
\*------------------------------------*/
.list-logo .grid {
    display: block;
}

.rs-reusable-form-panel .grid:before {
    display: none;
}

.rs-reusable-form-panel input, .rs-reusable-form-panel select {
    padding: 0.75em !important;
    line-height: 1.2;
}

/*.rs-reusable-form-panel select {*/
/*    padding-top: 0.9em !important;*/
/*    padding-bottom: 0.9em !important;*/
/*}*/

a.button, button, input[type="submit"] {
    font-size: 1em;
    line-height: 1em;
    padding: 1em 1.5em;
    color: #fff !important;
    background-color: #f26b26;
    border-radius: 6px;
    font-weight: 700;
    text-transform: uppercase;
}

a.button {
    display: inline-block;
    zoom: 1;
    *display: inline;
}

a.button:hover, button:hover, input[type="submit"]:hover {
    text-decoration: none;
    color: #fff;
    background-color: #ff8546;
}

a.button-alt {
    color: #fff;
    background-color: #0076a3;
}

a.button-alt:hover {
    color: #fff;
    background-color: #00bef3;
}

a.button-full {
    width: 100%;
    display: block;
    text-align: center;
    padding-left: 0;
    padding-right: 0;
}

a.button-cta {
    font-size: 2em;
    font-weight: bold;
    margin-bottom: 0.469em;
}

.button + .button {
    margin-left: 0.75em;
}

/*------------------------------------*\
    $FORMS
\*------------------------------------*/

input, select, textarea, button {
    font-family: inherit;
    font-size: inherit;
    line-height: 1em;
    border: 1px solid #959595;
    border-radius: 6px;
    padding: 0.188em 0.313em; /* 3px 5px */
}

input[type="submit"], button {
    cursor: pointer;
    border: none;
    transition: all .25s ease-in-out;
    -webkit-appearance: none; /* Remove iOS default styles */
}

/*------------------------------------*\
    $OTHER ELEMENTS
\*------------------------------------*/

hr {
    border: solid #cacaca;
    border-width: 1px 0 0 0;
    clear: both;
    width: 100%;
    margin: 2.5em auto;
}

img, iframe {
    vertical-align: top;
    max-width: 100%;
}


/*------------------------------------*\
    2. $LAYOUT
\*------------------------------------*/

.header, .navigation, .main, .footer {
    width: 100%;
}

.container {
    width: 18.75em; /* 300px */
    margin: 0 auto;
}

@media all and (min-width: 30em) {
    /* 480px */
    .container {
        width: 26.875em;
    }

    /* 430px */

}

@media all and (min-width: 43.750em) {
    /* 700px */
    .container, .content-heading, .main {
        width: 40em;
    }

    /* 640px */
    .content-heading .container, .main .container, .basehq-subpage .container {
        width: 100%;
    }

    .content-heading, .main {
        margin: 0 auto;
    }

    .main {
        box-shadow: 0 0 14px rgba(1, 1, 1, .5);
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .container, .content-heading, .main {
        width: 61.25em;
    }

    /* 980px */

}

/*------------------------------------*\
    $HEADER
\*------------------------------------*/

.header {
    padding: 1.25em 0;
}

.header .logo {
    margin-bottom: 1.25em;
}

.logo-text {
    display: block;
    text-indent: -9999em;
}

@media all and (min-width: 43.750em) {
    /* 700px */
    .header {
        padding: 1.5em;
    }

    .header .grid-item {
        width: 50%;
    }

    .header .logo {
        width: 14.375em;
        margin-bottom: 0;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .header {
        padding: 1.313em 0;
    }

    .header .grid-beta {
        padding-top: 0.688em;
    }

    .header .logo {
        width: 20em;
    }

}

/*------------------------------------*\

	$TOUCH NAV

	Only displayed on touch devices

\*------------------------------------*/

.nav-touch-toggle {
    position: absolute;
    top: 50%;
    right: 1em;
    margin-top: -22px;
    width: 45px;
    height: 45px;
    text-indent: -9999em;
    background: url(/media/images/basehq/basehq-sprite.original.png) 0 -300px no-repeat;
}

.nav-touch-top {
    padding: 1em 1.25em;
    position: relative;
}

.nav-touch-search {
    width: 75%;
}

.nav-touch-close {
    position: absolute;
    top: 50%;
    right: 1em;
    width: 24px;
    height: 24px;
    margin-top: -12px;
}

.nav-touch {
    width: 100%;
    display: block;
    font-size: 0.938em;
}

.nav-touch a {
    display: block;
    width: 100%;
    font-weight: normal;
    font-size: 0.938em;
    line-height: 1em;
    padding: 1em;
    background-color: #00bff3;
    color: #fff;
    border-bottom: 1px solid #0faed7;
}

.nav-touch ul {
    display: none;
}

.nav-touch a:hover ul {
    display: block;
}

.nav-touch a:hover {
    text-decoration: none;
}

.nav-touch .current-menu-item > a {
    text-decoration: none;
    color: #fff;
    background-color: #0076a3;
}

/*------------------------------------*\
    $FULL SIZE NAV
\*------------------------------------*/

.nav-top {
    background-color: #00bff3;
    background-color: rgba(0, 191, 243, 0.8);
}

@media all and (max-width: 43.750em) {
    /* 700px */
    .nav-top .container {
        width: 100%;
    }

    .nav-primary li {
        width: 33.333%;
        text-align: center;
    }

}

.nav-primary li {
    position: relative;
    z-index: 500;
}

.nav-primary > li {
    float: left;
    border-right: 1px solid #0faed7;
}

.nav-primary > li:last-child:before {
    border-right: none;
}

.nav-primary a {
    background-color: #00bff3;
    color: #fff;
    font-weight: 300;
    font-size: 0.875em;
    line-height: 2.5em;
    padding: 0;
}

.nav-primary li:hover > a {
    color: #fff;
    background-color: #0076a3;
    text-decoration: none;
}

.nav-primary li:hover > ul {
    display: block
}

/*------------------------------------*\
	$2ND LEVEL
\*------------------------------------*/

.nav-primary ul, .nav-primary ul li {
    width: 16em;
}

.nav-primary ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    float: left;
    z-index: 99999;
}

.nav-primary ul a {
    line-height: 1.4em;
    padding: 0.5em 0.875em;
    width: 100%;
    height: auto;
    background-color: #00bff3;
    color: #fff;
    border-bottom: 1px solid #0faed7;
}

.nav-primary ul :hover > a {
    background-color: #0076a3;
    color: #fff;
}

/*------------------------------------*\
	$3RD LEVEL
\*------------------------------------*/

.nav-primary ul ul {
    left: 100%;
    top: 0;
}

/*------------------------------------*\
	$1ST LEVEL CURRENT
\*------------------------------------*/

.nav-primary li.current_page_item > a, .nav-primary li.current-menu-ancestor > a, .nav-primary li.current-menu-item > a, .nav-primary li.current-menu-parent > a {
    background-color: #0076a3;
    color: #fff;
}

* html .nav-primary li.current_page_item a, * html .nav-primary li.current-menu-ancestor a, * html .nav-primary li.current-menu-item a, * html .nav-primary li.current-menu-parent a, * html .nav-primary li a:hover {
    background-color: #0076a3;
    color: #fff;
}

/*------------------------------------*\
	$2ND LEVEL CURRENT
\*------------------------------------*/

.nav-primary ul li.current-menu-item > a {
    background-color: #0076a3;
    color: #fff;
}

@media all and (max-width: 43.750em) {
    /* 700px */
    .nav-primary .link-social {
        display: none;
    }

}

@media all and (min-width: 43.750em) {
    /* 700px */
    .nav-primary {
        float: right;
    }

    .nav-primary a {
        padding: 0 0.8em;
    }

    .nav-primary .link-social .icon {
        width: 18px;
        height: 18px;
    }

}

/*------------------------------------*\
    $CAROUSEL
\*------------------------------------*/

.feature {
    position: relative;
    overflow: hidden;
    height: 25em;
}

.feature-content, .banner-content {
    position: absolute;
    top: 5%;
    right: 5%;
    width: 50%;
    color: #fff;
}

.feature-heading, .banner-heading {
    color: #fff;
    font-size: 1.750em;
    line-height: 1.2em;
    margin-bottom: 0;
}

.feature-mobile {
    background-size: cover;
}

@media all and (min-width: 61.250em) {
    /* 980px */
    .feature {
        height: 35em;
        overflow: hidden;
    }

    .feature .container {
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: -30.625em;
    }

}

/*------------------------------------*\
    $FLEXSLIDER
\*------------------------------------*/

.flexslider {
    margin: 0;
    padding: 0;
}

.flexslider .slides > li {
    display: none;
}

.flexslider .slides img {
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -30.625em; /* Half of width - 980px */
    max-width: none;
    width: auto;
}

.slides:after {
    content: "\0020";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

html[xmlns] .slides {
    display: block;
}

* html .slides {
    height: 1%;
}

.no-js .slides > li:first-child {
    display: block;
}

@media all and (min-width: 61.250em) {
    /* 980px */
    .flexslider .slides img {
        margin-left: -60em; /* Half of width - 1920px */
    }

}

/*------------------------------------*\
    $DIRECTION NAV - ARROWS
\*------------------------------------*/

ul.flex-direction-nav {
    margin-bottom: 0;
}

.flex-direction-nav a {
    width: 24px;
    height: 24px;
    display: block;
    position: absolute;
    top: 50%;
    left: 5%;
    margin-top: -12px;
    z-index: 100000;
    cursor: pointer;
    text-indent: -9999px;
    background: url(/media/images/basehq/basehq-sprite.original.png) 0 -200px no-repeat;
}

.flex-direction-nav a.flex-next {
    left: auto;
    right: 5%;
    background-position: -100px -200px;
}

/*------------------------------------*\
    $CONTROL NAV - DOTS
\*------------------------------------*/

.feature-nav {
    position: absolute;
    z-index: 999;
    bottom: 1em;
    right: 0;
    left: 0;
}

ol.flex-control-nav {
    margin-bottom: 0;
    text-align: center;
}

.flex-control-nav li {
    margin: 0 5px;
    display: inline-block;
    zoom: 1;
    *display: inline;
    text-indent: -9999em;
}

.flex-control-paging li a {
    width: 14px;
    height: 14px;
    display: block;
    background-color: #808080;
    cursor: pointer;
    border-radius: 100%;
}

.flex-control-paging li a.flex-active {
    background-color: #ccc;
    cursor: default;
}

/*------------------------------------*\
    $PROMO
\*------------------------------------*/

.promo {
    text-align: center;
}

.promo a {
    display: block;
}

.promo a:hover {
    color: #fff;
}

.promo .box-style {
    padding: 1em 0.5em;
}

.promo-item .icon {
    width: 121px;
    height: 80px;
    margin-bottom: 0.625em;
}

.promo-item-heading {
    display: block;
    font-weight: 700;
    font-size: 1em;
    line-height: 1.3em;
    margin-bottom: 0;
}

.promo-item-body {
    transition: background .25s ease-in-out;
}

.promo-item:hover .promo-item-body {
    background: #00bef3;
}

.promo-item .icon {
    position: relative;
}

.promo-item .icon:before {
    content: '';
    opacity: 0;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url(/media/images/basehq/basehq-sprite.original.png);
    transition: opacity .25s ease-in-out;
}

.promo-item:hover .icon:before {
    opacity: 1;
}

/*------------------------------------*\
    $BANNER
\*------------------------------------*/

.banner {
    width: 100%;
    height: 10em;
    position: relative;
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: cover;
}

@media all and (min-width: 61.250em) {
    /* 980px */
    .banner {
        background-size: auto;
    }

    .banner-content {
        position: relative;
    }

}

/*------------------------------------*\
    $CONTENT
\*------------------------------------*/

.content-heading {
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 1em 0;
}

.page-title {
    font-size: 1.25em;
    margin-bottom: 0;
    color: #ff8546;
    font-weight: 300;
}

.content h2 {
    color: #4b4b4b;
}

.content p .button {
    margin-bottom: 0;
}

.main {
    background-color: #fff;
    padding: 1.25em 0;
}

@media all and (min-width: 43.750em) {
    /* 700px */
    .content-heading {
        padding: 1.75em;
        position: relative;
        z-index: 1;
    }

    .main {
        padding: 1.25em 1.75em;
    }

    .content {
        margin-bottom: 0;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .content-heading {
        padding: 1.25em 1.875em;
    }

    .main {
        padding: 1.25em 1.875em;
    }

    .page-title {
        font-size: 1.5em;
    }

    .content {
        float: left;
        padding: 0;
        width: 40em; /* 640px */
    }

    .content-right {
        float: right;
    }

    .content-full {
        float: none;
        width: 100%;
    }

}

/*------------------------------------*\
    $CONTENT TABLES
\*------------------------------------*/

.content table {
    border-collapse: collapse;
}

.content table th, .content table td {
    padding: 0.625em;
    border-bottom: 1px solid #ddd;
}

.content table th {
    font-weight: bold;
    text-align: left;
}

/*------------------------------------*\
    $CONTENT LISTS
\*------------------------------------*/

.content ul, .content ol {
    margin-left: 1em;
}

.content ul {
    list-style: disc;
}

.content ol {
    list-style: decimal;
}

.content li {
    margin-bottom: 0.875em;
}

.content li > ul, .content li > ol {
    margin-top: 0.625em;
    margin-bottom: 0;
}

@media all and (min-width: 43.750em) {
    /* 700px */
    .content ul, .content ol {
        margin-left: 2.625em;
    }

    /* 42px */

}

/*------------------------------------*\
    $NUMBERED LIST
\*------------------------------------*/

.content ol {
    list-style: none;
    margin-left: 0;
    counter-reset: number-counter;
}

.content ol li {
    margin-bottom: 0.875em;
    padding-left: 2em;
    position: relative;
}

.content ol li:before {
    content: counter(number-counter);
    counter-increment: number-counter;
    position: absolute;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px;
    text-align: center;
    background-color: #00bff3;
    color: #fff;
    font-size: 14px;
    line-height: 24px; /* Same as height */
    font-weight: 700;
    border-radius: 100%;
}

/*------------------------------------*\
    $TICKED LIST
\*------------------------------------*/

ul.list-ticked, ul.list-crossed {
    margin-left: 0;
    list-style: none;
}

ul.list-ticked li, ul.list-crossed li {
    margin-bottom: 0.875em;
    padding-left: 1.5em;
    position: relative;
}

ul.list-ticked li:before, ul.list-crossed li:before {
    content: '';
    position: absolute;
    top: 4px;
    left: 0;
    width: 16px;
    height: 16px;
    background: url(/media/images/basehq/basehq-sprite.original.png) -400px -100px no-repeat;
}

ul.list-crossed li:before {
    background-position: -300px -100px;
}

@media all and (min-width: 43.688em) {
    /* 699px */
    /* Two column list */
    ul.list-double {
        margin-left: 0;
        margin-bottom: 1em;
        clear: both;
        overflow: hidden;
    }

    ul.list-double li {
        float: left;
        width: 40%;
        margin-left: 10%;
    }

}

/* Page lists displayed with [list-pages] and [child-pages] */

ul.child-pages, ul.list-pages {
    list-style: none;
    margin-left: 0;
}

ul.child-pages li, ul.list-pages li {
    border-bottom: 1px solid #fff;
    margin-bottom: 0;
}

ul.child-pages a, ul.list-pages a {
    position: relative;
    display: block;
    padding: 0.625em 2em 0.625em 1em;
    background-color: #00bef3;
    color: #fff;
    border-radius: 6px;
}

ul.child-pages a:hover, ul.list-pages a:hover {
    background-color: #0076a3;
    text-decoration: none;
}

ul.child-pages a:before, ul.list-pages a:before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0.625em;
    display: block;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    background: url(/media/images/basehq/basehq-sprite.original.png) -100px -200px no-repeat;
}

/*------------------------------------*\

	$CHILD PAGES WITH EXCERPT

	[child-pages-excerpt]

\*------------------------------------*/

ul.list-pages-excerpt {
    list-style: none;
}

ul.list-pages-excerpt li {
    margin-bottom: 0;
    border-bottom: 1px solid #e8e8e8;
}

ul.list-pages-excerpt a {
    display: block;
    font-weight: normal;
    padding: 0.8em 1.875em 0.8em 0;
    position: relative;
}

.list-pages-excerpt .list-main {
    overflow: hidden;
    width: 100%;
}

.list-pages-excerpt .list-image, .list-pages-excerpt .list-content {
    float: left;
}

.list-pages .list-heading {
    margin-bottom: 0.25em;
}

.list-pages-excerpt .list-image {
    width: 30%;
    background-color: #29a2a2;
    height: 0;
    padding-bottom: 16%;
}

.list-pages-excerpt img {
    transition: all .25s linear;
}

.list-pages-excerpt .list-content {
    width: 100%;
}

ul.list-pages-excerpt p {
    color: #595959;
    line-height: 1.4em;
    margin-bottom: 0;
}

ul.list-pages-excerpt a:hover img {
    opacity: 0.5;
}

@media all and (max-width: 43.688em) {
    /* 699px */
    .list-pages-excerpt a {
        padding-right: 1.25em;
    }

    .list-pages-excerpt .list-image {
        display: none;
    }

}

@media all and (min-width: 43.750em) {
    /* 700px */
    .list-pages-excerpt .list-content {
        width: 70%;
        padding-left: 1em;
        padding-right: 2em;
    }

}

/*------------------------------------*\
    $BLOCKQUOTE
\*------------------------------------*/

blockquote {
    position: relative;
    font-size: 1.125em;
    line-height: 1.618em;
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    font-style: italic;
    border: solid #eee;
    border-width: 10px 0;
}

blockquote p:last-child {
    margin: 0
}

@media all and (min-width: 61.250em) {
    /* 980px */
    blockquote {
        padding: 1.5em 2em;
    }

}

/*------------------------------------*\
	$MESSAGES
\*------------------------------------*/

.message {
    padding: 0.875em 1.618em;
    border: 1px solid;
    color: #555;
}

.note {
    background: #fcffc5;
    border-color: #fbffa3;
}

.highlight {
    background: #A9E8FA;
    border-color: #79dbf7;
}

.warning {
    background-color: #ef1000;
    border-color: #cf0000;
    color: #fff;
}

/*------------------------------------*\
    $BLOG
\*------------------------------------*/

.post-divider {
    display: block;
    height: 1px;
    background: #ddd;
    width: 50%;
    margin: 3em auto;
}

.post-meta p {
    font-size: 0.875em;
    line-height: 1.4em;
}

.post-navigation {
    font-size: 0.875em;
    line-height: 1.5em;
    border-top: 1px solid #ddd;
    padding: 1em 0;
}

.archive-navigation span, .archive-navigation a {
    padding: 3px 6px;
    border: 1px solid #ddd;
    border-radius: 2px;
}

/*------------------------------------*\
    $CONTENT IMAGES
\*------------------------------------*/

@media all and (max-width: 25.000em) {
    /* 400px */
    img.alignleft, img.alignright {
        max-width: 50%;
        height: auto;
    }

}

.alignright, a.alignright {
    float: right;
    margin: 0 0 1.618em 1.618em; /* 0 0 26px 26px */
}

.alignleft, a.alignleft {
    float: left;
    margin: 0 1.618em 1.618em 0; /* 0 26px 26px 0 */
}

.aligncenter, a .aligncenter {
    display: block;
    margin: 0 auto 1.618em auto; /* 0 auto 26px auto */
}

.alignnone, a .alignnone {
    display: block;
    margin-bottom: 1.618em; /* 26px */
}

img.no-image-border {
    padding: 0;
    border: none;
}

.wp-caption {
    margin-bottom: 1.618em; /* 26px */
}

.wp-caption img {
    border: none;
    margin: 0;
    padding: 0;
}

.wp-caption p.wp-caption-text {
    font-size: 0.875em;
    line-height: 1.4em;
    margin-bottom: 0;
    padding: 0.625em 0;
    font-style: italic;
    border-bottom: 1px solid #ddd;
}

#gallery-1 img {
    border: 1px solid #ddd !important;
    background: #fff;
    padding: 8px;
}

#gallery-1 img:hover {
    border: 1px solid #808080 !important
}

/*------------------------------------*\
    $SIDEBAR
\*------------------------------------*/

@media all and (min-width: 61.250em) {
    /* 980px */
    .sidebar {
        float: right;
        width: 15.625em;
    }

}

.sidebar > div, .sidebar-blog > div {
    margin-bottom: 1.25em;
}

.sidebar-heading {
    font-size: 1.25em;
    line-height: 1.3em;
    margin-bottom: 0.5em;
}

.sidebar .grid-item {
    padding-bottom: 1.25em;
}

a.sidebar-item-link {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.sidebar-item-image {
    margin-bottom: 1.25em;
}

.sidebar-item p {
    margin-bottom: 1em;
}

.sidebar-item-01 p {
    margin-bottom: 0;
}

.sidebar-item .is-number {
    font-weight: 700;
    font-size: 1.25em;
}

@media all and (min-width: 43.750em) {
    /* 700px */
    .sidebar .grid-item {
        width: 50%;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .sidebar .grid-item {
        width: 100%;
    }

}

/*------------------------------------*\
    $ISLAND
\*------------------------------------*/

.island {
    padding: 1em 1.168em;
    color: #fff;
}

.island-heading {
    color: #fff;
}

/*------------------------------------*\
    $UI LIST
\*------------------------------------*/

.ui-list {
    list-style: none;
    border: solid #ddd;
    border-width: 1px 0;
    margin: 0;
    padding: 1em 0;
    color: #666;
}

.ui-list li {
    position: relative;
    font-size: 0.875em;
    padding-left: 1em;
    margin-bottom: 0.5em;
}

.ui-list li:before, .ui-list li:after {
    content: '';
    position: absolute;
    top: 6px;
    left: 0;
    width: 6px;
    height: 10px;
    background: url(/media/images/basehq/basehq-sprite.original.png) -400px -200px no-repeat;
    transition: opacity .25s ease-in-out;
}

.ui-list li:after {
    background-position: -200px -500px;
    opacity: 0;
}

.ui-list li:hover:before {
    opacity: 0;
}

.ui-list li:hover:after {
    opacity: 1;
}

.ui-list li a {
    display: block;
}

.ui-list-heading {
    font-size: 1.125em;
    line-height: 1.3m;
    margin-bottom: 0;
    font-weight: 400;
    transition: all .25s ease-in-out;
}

.ui-list li:hover .ui-list-heading {
    color: #0076a3;
}

.ui-list p {
    font-size: 0.875em;
}

.ui-list a:hover, .ui-list .current_page_item a {
    text-decoration: none;
}

.ui-list-text li a {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

@media all and (min-width: 43.750em) and (max-width: 61.188em) {
    /* 979px */
    .ui-list {
        margin-left: -1em;
    }

    .ui-list li {
        padding-left: 2em;
        float: left;
        width: 50%;
    }

    .ui-list li:before, .ui-list li:after {
        left: 1em;
    }

}

/*------------------------------------*\
    $SEARCH
\*------------------------------------*/

.search-primary {
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 8px;
    padding: 5px;
}

.form-search {
    border: 1px solid #898989;
    position: relative;
    overflow: hidden;
    border-radius: 6px;
}

.form-search input.search-input {
    width: 100%;
    margin: 0;
    color: #b0b0b0;
    border: none;
    padding: 0.8em 1.25em;
    transition: all .15s ease-in-out;
}

.form-search input.search-input:focus {
    color: #666;
}

.form-search .search-submit {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    border: none;
    margin: 0;
    background-color: #f26b26;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 0 4px 4px 0;
    padding: 0 1em;
}

.form-search .search-submit:hover {
    background-color: #ff8546;
}

.form-search:hover .search-input, .form-search:hover .search-submit {
    box-shadow: inset 1px 2px 5px rgba(1, 1, 1, .35);
}

/*------------------------------------*\
    $SEARCH IN HEADER
\*------------------------------------*/

.header .search-primary {
    font-size: 1.125em;
}

.header input.search-input {
    padding: 0.5em 0.8em;
}

/*------------------------------------*\
    $AUTOCOMPLETE
\*------------------------------------*/


/*------------------------------------*\
    $SEARCH RESULTS
\*------------------------------------*/

.search-result .post-heading {
    font-size: 1.25em;
    line-height: 1.4em;
    margin-bottom: 0.25em;
    color: #41a1da;
}

.search-result .post-heading a {
    font-weight: 700;
    display: block;
}

.search-result p {
    margin-bottom: 0.5em;
}

.search-result .read-more {
    color: #3cb878;
    font-weight: 700;
    font-size: 1.125em;
    line-height: 1em;
}

/*------------------------------------*\
    $SIDEBAR - LEFT
\*------------------------------------*/

.sidebar-left {
    margin-bottom: 1em;
}

.sidebar-left .contact-detail {
    padding: 1em 0;
    border-bottom: 1px solid #ddd;
}

.sidebar-left h4 {
    font-size: 1em;
    line-height: 1em;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 0.313em;
}

.sidebar-left .icon {
    vertical-align: top;
}

.sidebar-left p, .sidebar-left table {
    font-size: 1em;
    line-height: 1.4em;
    margin: 0;
}

.sidebar-left p + p {
    margin: 10px 0 0 0
}

.sidebar-left .is-day, .sidebar-left .is-time {
    width: 50%;
}

@media all and (min-width: 43.750em) and (max-width: 61.188em) {
    /* 700px - 979px */
    .sidebar-left table {
        width: 50%;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .sidebar-left {
        float: left;
        width: 15em; /* 300px */
        padding: 0;
        margin-bottom: 1em;
    }

    .sidebar-left h4 {
        margin-bottom: 0.875em;
    }

}

/*------------------------------------*\
    $CONTACT PAGE
\*------------------------------------*/

@media all and (min-width: 43.750em) and (max-width: 61.188em) {
    /* 700px - 979px */
    .page-template-page-contact-php .main {
        padding: 1.5em 1.875em 2.5em 1.875em;
    }

    .page-template-page-contact-php .sidebar-left {
        float: left;
        width: 39%;
        padding: 0;
    }

    .page-template-page-contact-php .content {
        float: right;
        width: 57%;
        padding: 0;
    }

}

/*------------------------------------*\
    $FOOTER
\*------------------------------------*/

.footer {
    text-align: center;
    padding: 1.25em 0;
    color: #b2b3b3;
}

.footer-body {
    font-size: 0.813em;
    line-height: 1.4em;
}

.footer a {
    font-weight: 700;
}

.footer a:hover {
    color: #fff;
}

.not-home .footer a:hover {
    color: #0076a3;
}


/*------------------------------------*\
    3. $MODULE
\*------------------------------------*/

/*------------------------------------*\
    $NAV
\*------------------------------------*/

ul.nav, .nav ul {
    margin: 0;
    padding: 0;
}

.nav li {
    float: left;
}

.nav a {
    display: block;
}

ul.nav-stacked li {
    float: none;
}

/*------------------------------------*\
    $HELPER
\*------------------------------------*/

.left {
    float: left
}

.right {
    float: right
}

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

.text-right {
    text-align: right;
}

.upper {
    text-transform: uppercase;
}

.lower {
    text-transform: lowercase;
}

.under {
    border-bottom: 1px solid;
}

.spaced {
    letter-spacing: 2px;
}

.no-mb {
    margin-bottom: 0;
}

.is-relative {
    position: relative;
}

.inline-block {
    display: inline-block;
    zoom: 1;
    *display: inline;
}

.cf:before, .cf:after, .grid:before, .grid:after, .main:before, .main:after, .content:before, .content:after, .nav-primary:before, .nav-primary:after, .container:before, .container:after, .top:before, .top:after, .navigation:before, .navigation:after, .gform_body:before, .gform_body:after {
    content: '';
    display: table;
}

.cf:after, .grid:after, .main:after, .content:after, .nav-primary:after, .container:after, .top:after, .navigation:after, .gform_body:after {
    clear: both;
}

.cf, .grid, .main, .content, .nav-primary, .container, .top, .navigation {
    *zoom: 1;
}

/*------------------------------------*\
    $GRID
\*------------------------------------*/

.grid {
    margin-left: -1.618em;
}

.rs-reusable-form-panel .grid {
    margin-left: 0;
}

.grid-item {
    display: block;
    float: left;
    padding-left: 1.618em;
    width: 100%;
}

@media all and (min-width: 18.750em) {

    .palm-whole .grid-item {
        width: 100%;
    }

    .palm-halves .grid-item {
        width: 50%;
    }

    .palm-thirds .grid-item {
        width: 33.3333333%;
    }

    .palm-fourths .grid-item {
        width: 25%;
    }

    .palm-fifths .grid-item {
        width: 20%;
    }

}

@media all and (min-width: 43.750em) and (max-width: 61.250em) {

    .lap-whole .grid-item {
        width: 100%;
    }

    .lap-halves .grid-item {
        width: 50%;
    }

    .lap-thirds .grid-item {
        width: 33.3333333%;
    }

    .lap-one-two-thirds .lap-one-third {
        width: 33.3333333%;
    }

    .lap-one-two-thirds .lap-two-thirds {
        width: 66.666667%;
    }

    .lap-fourths .grid-item {
        width: 25%;
    }

    .lap-fifths .grid-item {
        width: 20%;
    }

}

@media all and (min-width: 61.250em) {

    .desk-whole .grid-item {
        width: 100%;
    }

    .desk-halves .grid-item {
        width: 50%;
    }

    .desk-thirds .grid-item {
        width: 33.3333333%;
    }

    .desk-one-two-thirds .desk-one-third {
        width: 33.3333333%;
    }

    .desk-one-two-thirds .desk-two-thirds {
        width: 66.666667%;
    }

    .desk-fourths .grid-item {
        width: 25%;
    }

    .desk-fifths .grid-item {
        width: 20%;
    }

}

/*------------------------------------*\
    $ICONS
\*------------------------------------*/

.icon {
    display: inline-block;
    zoom: 1;
    *display: inline;
    vertical-align: middle;
    width: 16px;
    height: 16px;
    background: url(/media/images/basehq/basehq-sprite.original.png) 0 0 no-repeat;
}

.icon-m {
    width: 24px;
    height: 24px;
}

.icon-l {
    width: 32px;
    height: 32px;
}

.icon-xl {
    width: 64px;
    height: 64px;
}

/*------------------------------------*\
    $ROW 1
\*------------------------------------*/

.icon-phone {
    background-position: 0 0;
}

.icon-fax {
    background-position: -100px 0;
}

.icon-email {
    background-position: -200px 0;
}

.icon-address {
    background-position: -300px 0;
}

.icon-hours {
    background-position: -400px 0;
}

.icon-payment {
    background-position: -500px 0;
}

/*------------------------------------*\
    $ROW 2
\*------------------------------------*/

.icon-info {
    background-position: 0 -100px;
}

.icon-file {
    background-position: -100px -100px;
}

.icon-search {
    background-position: -200px -100px;
}

.icon-cross {
    background-position: -300px -100px;
}

.icon-tick {
    background-position: -400px -100px;
}

.icon-user {
    background-position: -500px -100px;
}

/*------------------------------------*\
    $ROW 3
\*------------------------------------*/

.icon-arrow-left {
    background-position: 0 -200px;
}

.icon-arrow-right {
    background-position: -100px -200px;
}

.icon-arrow-down {
    background-position: -200px -200px;
}

.icon-arrow-up {
    background-position: -300px -200px;
}

.icon-tip {
    background-position: -400px -200px;
}

.icon-facebook {
    background-position: -500px -200px;
}

/*------------------------------------*\
    $ROW 4
\*------------------------------------*/

.icon-twitter {
    background-position: 0 -300px;
}

.icon-linkedin {
    background-position: -100px -300px;
}

.icon-envelope {
    background-position: -200px -300px;
}

.icon-envelope:before {
    background-position: -400px -300px;
}

/*------------------------------------*\
    $ROW 5
\*------------------------------------*/


.icon-strategy {
    background-position: 0 -400px;
}

.icon-strategy:before {
    background-position: -200px -400px;
}

.icon-direct {
    background-position: -400px -400px;
}

/*------------------------------------*\
    $ROW 6
\*------------------------------------*/

.icon-direct:before {
    background-position: 0 -500px;
}

.icon-horwood {
    background-position: -300px -500px;
    width: 137px;
    height: 40px;
}

@media all and (max-width: 61.188em) {
    /* Up to 979px */
    .icon-horwood {
        display: block;
        margin: 1em auto 0 auto;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .icon-horwood {
        margin-left: 1em;
    }

}

/*------------------------------------*\
    $RETINA ICONS
\*------------------------------------*/

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {

    .icon, .nav-touch-toggle, .flex-direction-nav a, ul.list-ticked li:before, ul.child-pages a:before, ul.list-pages a:before, .form-search .search-submit:before, .list-accordion-title a:before, .promo-item .icon:before, ul.list-crossed li:before, .ui-list li:before, .ui-list li:after {
        background-image: url(/media/images/basehq/basehq-sprite2x.original.png);
        background-size: 600px 800px;
    }

}

/*------------------------------------*\
    $EXTERNAL ICONS
\*------------------------------------*/


@media all and (max-width: 61.188em) {
    /* Up to 979px */
    .icon-surf {
        display: block;
        margin: 1em auto 0 auto;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .icon-surf {
        margin-left: 1em;
    }

}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {

    .icon-surf {
        background-position: -100px 0;
        background-size: 300px 100px;
    }

}

/*------------------------------------*\
    $INLINE LIST
\*------------------------------------*/

.list-inline {
    list-style: none;
}

.list-inline li {
    display: inline;
}

.list-inline a {
    display: inline-block;
    zoom: 1;
    *display: inline;
}

/*------------------------------------*\
    $ICON LIST
\*------------------------------------*/

.list-icon {
    font-size: 0;
}

.list-icon li {
    margin-left: 10px;
}

.list-icon li:first-child {
    margin-left: 0;
}

/*------------------------------------*\
    $ACCORDION LIST
\*------------------------------------*/

.list-accordion-title {
    font-size: 1em;
    line-height: 1.3em;
    margin-bottom: 1px;
}

.list-accordion-title.open {
    border-bottom: none;
}

.list-accordion-title a {
    display: block;
    position: relative;
    padding: 0.625em 2em 0.625em 1em;
    background-color: #00bef3;
    color: #fff;
    border-radius: 6px;
}

.list-accordion-title a:hover, .list-accordion-title a:hover {
    background-color: #0076a3;
    text-decoration: none;
}

.list-accordion-content {
    padding: 0.625em 1em 0 1em;
}

.list-accordion-title a:before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0.625em;
    display: block;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    background: url(/media/images/basehq/basehq-sprite.original.png) -200px -200px no-repeat;
}

.list-accordion-title.open a:before {
    background-position: -300px -200px;
}

/*------------------------------------*\
    $CTA MOBILE
\*------------------------------------*/

.cta-mobile {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
}

.nav-cta-mobile {
    font-size: 0.875em;
    text-transform: uppercase;
    text-align: center;
}

.nav-cta-mobile li {
    width: 33.333%;
}

.nav-cta-mobile a {
    background-color: #808080;
    color: #fff;
    padding: 0.75em 0;
}

.nav-cta-mobile a:hover {
    background-color: #444;
    text-decoration: none;
}

/*------------------------------------*\

    $SIDR

	Slide out sidebar for touch devices

\*------------------------------------*/

.sidr {
    display: none;
    position: absolute;
    position: fixed;
    top: 0;
    height: 100%;
    z-index: 999999;
    width: 280px;
    overflow-x: none;
    overflow-y: auto;
    background-color: #fff;
    padding-bottom: 2em;
}

.sidr.right {
    left: auto;
    right: -280px;
}

.site {
    position: relative;
}

.site:before {
    content: '';
    transition: background .3s ease-in-out;
}

.sidr-open .site:before {
    content: '';
    position: absolute;
    z-index: 9999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .75);
}

/*------------------------------------*\
    $NEWSLETTER SUBSCRIPTION
\*------------------------------------*/

.form-subscribe input {
    margin-bottom: 0.313em; /* 5px */
    width: 100%;
    font-size: 1em;
    line-height: 1em;
}

.form-subscribe input[type="text"] {
    padding: 0.5em;
}

.form-subscribe input[type="submit"] {
    padding: 0.75em;
}

/*------------------------------------*\
    $BREADCRUMBS
\*------------------------------------*/

.nav-breadcrumb {
    font-size: 0.875em;
    line-height: 1em;
    margin-bottom: 1em;
}

/*------------------------------------*\

    $CONVERSION PAGE

	page-conversion.php

\*------------------------------------*/

.page-conversion {
    background-color: #f9f9f9;
}

.page-conversion .page-title {
    font-size: 1.875em;
}

.page-conversion-intro h2 {
    font-size: 1.125em;
}

.page-conversion ul.list-ticked {
    margin-bottom: 1.618em;
}

.page-conversion .list-ticked li {
    margin-bottom: 0.75em;
}

.page-conversion-intro .intro-image {
    overflow: hidden;
    padding: 9px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 15px;
}

.page-conversion-intro img {
    border-radius: 10px;
}

.page-conversion-cta {
    text-align: center;
}

.page-conversion-quote img {
    margin-right: 1em;
    padding: 9px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 100%;
}

.page-conversion-quote, .page-conversion-footer {
    background-color: #fff;
    border: solid #eee;
    border-width: 1px 0;
}

.page-conversion-intro, .page-conversion-quote, .page-conversion-content, .page-conversion-footer {
    padding: 1.25em;
}

.page-conversion-form-heading {
    text-align: center;
    text-transform: uppercase;
}

.page-conversion-form-heading {
    font-size: 1.5em;
}

.page-conversion-cta {
    font-size: 1.25em;
}

.page-conversion a.button-cta {
    font-size: 1em;
}

@media all and (max-width: 43.688em) {
    /* 699px */
    .page-conversion-cta .is-alternative {
        display: block;
        margin: 0.313em 0;
    }

    .page-conversion a.button-cta {
        text-align: center;
        display: block;
    }

    .page-conversion-quote .grid-alpha {
        width: 45%;
        padding-right: 1em;
    }

    .page-conversion-quote .grid-beta {
        float: none;
    }

}

@media all and (min-width: 43.750em) {
    /* 700px */
    .page-conversion .page-title {
        font-size: 3em;
    }

    .page-conversion-intro h2 {
        font-size: 1.5em;
        width: 72%;
        margin: 0 auto 1.5em auto;
    }

    .page-conversion ul.list-ticked {
        margin-bottom: 0;
    }

    .page-conversion .list-ticked li {
        font-size: 1.125em;
        margin-bottom: 1em;
    }

    .page-conversion-intro .intro-image {
        margin-bottom: 1.618em;
    }

    .page-conversion-quote .quote-content {
        text-align: center;
    }

    .page-conversion-quote .grid {
        margin-left: -2em;
    }

    .page-conversion-quote .grid-item {
        padding-left: 2em;
    }

    .page-conversion-quote .grid-alpha {
        width: 23%;
    }

    .page-conversion-quote .grid-beta {
        width: 77%;
    }

    .page-conversion-quote p {
        font-size: 1.25em;
        line-height: 1.5em;
    }

    .page-conversion-intro, .page-conversion-quote, .page-conversion-content, .page-conversion-footer {
        padding: 3em 2em;
    }

    .page-conversion-cta {
        font-size: 1.5em;
    }

    .page-conversion-cta .is-alternative {
        margin: 0 1em;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .page-conversion ul.list-ticked {
        margin-top: 3em;
    }

    .page-conversion .list-ticked li {
        font-size: 1.25em;
    }

    .page-conversion-quote .quote-content {
        padding-top: 1.5em;
    }

    .page-conversion-form {
        width: 62%;
        margin: 0 auto;
    }

    .page-conversion-intro, .page-conversion-quote, .page-conversion-content, .page-conversion-footer {
        padding: 2em 0;
    }

    .page-conversion-cta {
        font-size: 1.875em;
    }

    .page-conversion-content .page-conversion-cta {
        margin-top: 1em;
    }

}

/*------------------------------------*\
    $HOME CONTENT
\*------------------------------------*/

.content-home {
    padding: 1.875em 0;
    color: #fff;
    text-align: center;
}

.content-home h1 {
    font-size: 1em;
}

.content-home .logo {
    margin-bottom: 1.25em;
    margin-left: auto;
    margin-right: auto;
}

.content-home .intro {
    font-size: 1rem;
    line-height: 1.3rem;
    color: #fff;
}

.rs-content, .rs-content li, .rs-content p, .rs-prose li, .rs-prose p {
    color: unset;
}

.rs-content a:not(.rs-richtext-button), .rs-prose a:not(.rs-richtext-button) {
    color: #00bff3;
}

.rs-content a:not(.rs-richtext-button):hover, .rs-prose a:not(.rs-richtext-button):hover {
    color: unset;
}

.content-home .grid {
    display: block;
}

@media all and (min-width: 43.750em) {
    /* 700px */
    .content-home {
        padding: 5.625em 0;
    }

    .content-home .container {
        width: 36.875em;
    }

    .content-home .logo {
        width: 20em;
        margin-bottom: 1.875em;
    }

    .content-home .intro {
        font-size: 1.125em;
        line-height: 1.5em;
        padding: 0 2.5em;
    }

    .content-home .search-primary {
        font-size: 1.25em;
        margin-bottom: 1.25em;
    }

    .content-home .grid {
        margin-left: -1.25em;
    }

    .content-home .grid-item {
        padding-left: 1.25em;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .content-home {
        padding: 0;
    }

    .content-home .intro {
        margin-left: -8.750em;
        margin-right: -8.750em;
    }

}

/*------------------------------------*\
    $BOX STYLE
\*------------------------------------*/

.box-style {
    background: #fff url(/media/images/basehq/basehq-pattern-lines.original.jpg);
    border: 1px solid #d7d7d7;
    border-radius: 6px;
    padding: 1.25em;
    position: relative;
}

.box-style:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 2px solid #fff;
    border-radius: 6px;
}

/*------------------------------------*\
    $QUESTION CTA
\*------------------------------------*/

.cta-question {
    margin-bottom: 1.25em;
}

.cta-question-image {
    float: left;
    margin: 0 1em 1em 0;
}

.cta-question-heading {
    font-size: 1.25em;
    line-height: 1.3em;
    margin-bottom: 0.25em;
}

@media all and (min-width: 43.750em) {
    /* 700px */
    .cta-question {
        margin-bottom: 1.313em;
    }

}


/*------------------------------------*\
    4. $STATE
\*------------------------------------*/

.is-hidden {
    display: none;
}

@media all and (max-width: 43.688em) {
    /* 489px */
    .palm-is-hidden {
        display: none;
    }

}

@media all and (min-width: 43.688em) and (max-width: 61.188em) {
    /* 699px to 979px */
    .lap-is-hidden {
        display: none;
    }

}

@media all and (min-width: 61.250em) {
    /* 980px */
    .desk-is-hidden {
        display: none;
    }

}

.is-invisible {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    opacity: 0;
}

.no-transition {
    transition: none;
}

.spinner {
    height: 60px;
    width: 60px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -30px;
    animation: rotation 1s infinite linear;
    border-left: 6px solid rgba(0, 0, 0, .15);
    border-right: 6px solid rgba(0, 0, 0, .15);
    border-bottom: 6px solid rgba(0, 0, 0, .15);
    border-top: 6px solid rgba(0, 0, 0, .8);
    border-radius: 100%;
}

@keyframes rotation {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(359deg);
    }
}


/*------------------------------------*\
    5. $THEME
\*------------------------------------*/

/*------------------------------------*\
    $COLOURS
\*------------------------------------*/

/* Brand primary and secondary colours */
.bpc {
    color: #23c0f1;
}

.bsc {
    color: #454545;
}

.text-white {
    color: #fff;
}

.text-light {
    color: #eee;
}

.text-neutral {
    color: #808080;
}

.text-dark {
    color: #333;
}

::selection {
    background: #23c0f1;
    color: #fff;
    text-shadow: none;
}

/*------------------------------------*\
    $BACKGROUNDS
\*------------------------------------*/

/* Brand primary and secondary background colours */
.bpb {
    background-color: #23c0f1;
}

.bsb, .island {
    background-color: #454545;
}

.bg-light {
    background-color: #eee;
}

.bg-neutral {
    background-color: #808080;
}

.bg-dark {
    background-color: #333;
}

.rs-bg-plain {
    background: transparent;
}


.rs-content.mt-6 {
    margin-top: 0;
}

/* BaseHQ reusable-form action, matching the original compact orange CTA. */
.theme-basehq [data-reusable-form-submit] {
    float: right;
    min-width: 10rem;

    border: 0;
    border-radius: .75rem;
    background: #f26b26;
    color: #fff;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.theme-basehq [data-reusable-form-submit]:hover,
.theme-basehq [data-reusable-form-submit]:focus-visible {
    background: #ff8546;
    color: #fff;
}

.theme-basehq [data-reusable-form]::after {
    display: block;
    clear: both;
    content: "";
}

@media (max-width: 700px) {
    .theme-basehq [data-reusable-form-submit] {
        width: 100%;
        min-width: 0;
        min-height: 4.25rem;
        font-size: 1.375rem;
    }
}

.theme-basehq .basehq-announcement-detail__body {
    display: grid;
    background: #fff;
    grid-template-columns: minmax(0, 40rem) minmax(0, 15.625rem);
    justify-content: space-between;
    gap: 2.5rem;
    padding: 2rem 2.5rem;
}

.rs-content p, .rs-prose p {
    font-size: 1rem;
    line-height: 1.618rem;
}

.theme-basehq .basehq-announcement-detail__content > :last-child {
    margin-bottom: 0;
}

.theme-basehq .basehq-recent-answers {
    margin-bottom: 2.5rem;
}

.theme-basehq .basehq-recent-answers h2 {
    margin: 0 0 1rem;
    color: #00bef3;
}

.theme-basehq .basehq-recent-answers__item {
    border-top: 1px solid #d7d7d7;
    padding: 1rem 0 .75rem 1.4rem;
    position: relative;
}

.theme-basehq .basehq-recent-answers__item::before {
    position: absolute;
    top: 1.45rem;
    left: 0;
    border-top: .35rem solid transparent;
    border-bottom: .35rem solid transparent;
    border-left: .35rem solid #00bef3;
    content: "";
}

.theme-basehq .basehq-recent-answers__item h3 {
    margin: 0 0 .35rem;
    font-size: 1.2rem;
    line-height: 1.25;
}

.theme-basehq .basehq-recent-answers__item h3 a,
.theme-basehq .basehq-recent-answers__all {
    color: #00bef3;
    text-decoration: none;
}

.theme-basehq .basehq-recent-answers__item p {
    overflow: hidden;
    margin: 0;
    color: #777;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.theme-basehq .basehq-recent-answers__all {
    display: inline-block;
    margin-top: .25rem;
}

.theme-basehq .basehq-announcement-detail__reusable-zone {
    margin-top: 2rem;
}

.theme-basehq .basehq-announcement-detail__bottom-zone {
    margin-top: 2.5rem;
}

@media (max-width: 61.1875em) {
    .theme-basehq .basehq-announcement-detail__body {
        display: block;
    }

    .theme-basehq .basehq-announcement-detail__sidebar {
        margin-top: 2.5rem;
    }
}

@media (max-width: 700px) {
    .theme-basehq .basehq-announcement-detail__body {
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }
}
