@charset "UTF-8";

/* ////////// Footer ////////// */
footer .container-fluid {
    background-color: #424242;
    margin-top: auto !important;
    padding-bottom: 1rem !important;
    padding-top: 1rem !important;
}

footer .container-fluid {
    display: flex;
    justify-content: flex-start;
} 
footer.footer.arts-culture-footer p {
    margin-bottom: 0 !important;
    color: #fff;
}

footer .container-fluid a,
hover,
focus {
    color: #fff;
}

footer.footer.arts-culture-footer a:hover {
    text-decoration: underline !important;
}

footer {
    /*position: fixed;*/
    left: 0;
    bottom: 0;
    width: 100%;
    /* background-color: #424242;
  color: white;
  min-height: 4rem;
  padding-top: 1rem;
  padding: 20px; */
}

button,
select {
    text-transform: none
}

.btn,
img {
    border: 0
}

body,
html {
    overflow-x: hidden
}

body,
h1,
h2,
h3,
h4 {
    color: #424242
}

a a:active,
a a:visited:hover,
a:hover {
    color: #2488aa
}

.tbl,
hr,
html,
legend {
    width: 100%
}

.awards-details:after,
.card:after,
.clear,
.clearfix:after,
.container-fluid:after,
.container-md:after,
.container-sm:after,
.container:after,
.dock .index:after,
.infographic:after,
.link-with-check:after,
.list-figure-item:after,
.pagination:after,
.profile-detail:after,
.row:after,
.search-inner .header:after,
.ui-helper-clearfix:after,
ul:after {
    clear: both
}

.breadcrumb ul,
.contact ul,
.side-nav ul,
ol,
ol li,
ul,
ul li,
ul.list-1-2 {
    list-style: none
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

article,
aside,
details,
figcaption,
figure,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}

    audio:not([controls]) {
        display: none;
        height: 0
    }

[hidden],
template {
    display: none
}

a {
    background-color: transparent;
    text-decoration: none;
    color: #2ea9d3;
    transition: all .3s
}

    a:active,
    a:hover {
        outline: 0
    }

abbr[title] {
    border-bottom: 1px dotted
}

b,
optgroup,
strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline;
    position: relative
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

svg:not(:root) {
    overflow: hidden
}

pre,
textarea {
    overflow: auto
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

.accordion .dt.header,
.accordion-open .dt.header,
.banner p:first-child,
.btn,
.calendar tr td,
.card figure figcaption h4,
.file-type:before,
.infographic strong,
.notification.with-heading .desc h4,
.pull,
.share-page p,
.tags a,
.uppercase {
    text-transform: uppercase
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

    button[disabled],
    html input[disabled] {
        cursor: default
    }

    button::-moz-focus-inner {
        border: 0;
        padding: 0
    }

input {
    line-height: normal
}

    input::-moz-focus-inner {
        border: 0;
        padding: 0
    }

    input[type=checkbox],
    input[type=radio] {
        box-sizing: border-box;
        padding: 0
    }

    input[type=number]::-webkit-inner-spin-button,
    input[type=number]::-webkit-outer-spin-button {
        height: auto
    }

    input[type=search] {
        -webkit-appearance: textfield;
        box-sizing: content-box
    }

        input[type=search]::-webkit-search-cancel-button,
        input[type=search]::-webkit-search-decoration {
            -webkit-appearance: none
        }

fieldset {
    margin: 0 2px
}

td,
th {
    padding: 0
}

/*#s4-workspace #cancelbutton {
    float: none !important;
    margin-top: 10px !important;
    width: 100%;
}

@media only screen and (min-width: 700px) {
    #s4-workspace #cancelbutton {
        float: none !important;
        margin-top: 10px !important;
        width: auto;
    }
}*/

/*#s4-workspace #cancelbutton {
    float: none !important;
    margin-top: 80px !important;
    width: 100% !important;
}*/


.breadcrumb ul li:before, .calendar tr:first-child td table tr td:first-child a:before, .calendar tr:first-child td table tr td:last-child a:before, .calendar-entries .heading a:after, .icon, .social-link .icon:after, .ui-selectmenu-button span.ui-icon, fieldset input[type=checkbox]:checked + label:before, fieldset input[type=radio]:checked + label:before, fieldset p.select:after {
    background-image: url(../images/global.png);
}

@media (min--moz-device-pixel-ratio:1.5), (-webkit-min-device-pixel-ratio:1.5), (min-device-pixel-ratio:1.5), (min-resolution:1.5dppx) {
    .breadcrumb ul li:before,
    .calendar tr:first-child td table tr td:first-child a:before,
    .calendar tr:first-child td table tr td:last-child a:before,
    .calendar-entries .heading a:after,
    .icon,
    .social-link .icon:after,
    .ui-selectmenu-button span.ui-icon,
    fieldset input[type=checkbox]:checked + label:before,
    fieldset input[type=radio]:checked + label:before,
    fieldset p.select:after {
        background-image: url(/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/Style%20Library/Images/global@2x.png);
        background-size: 254px 206px
    }
}

.lrg-icon:before,
.media {
    background-image: url(/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/Style%20Library/Images/media.png)
}

@media (min--moz-device-pixel-ratio:1.5), (-webkit-min-device-pixel-ratio:1.5), (min-device-pixel-ratio:1.5), (min-resolution:1.5dppx) {
    .lrg-icon:before,
    .media {
        background-image: url(/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/Style%20Library/Images/media@2x.png);
        background-size: 192px 192px
    }
}

.info {
    background-image: url(/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/Style%20Library/Images/info.png)
}

@media (min--moz-device-pixel-ratio:1.5), (-webkit-min-device-pixel-ratio:1.5), (min-device-pixel-ratio:1.5), (min-resolution:1.5dppx) {
    .info {
        background-image: url(/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/Style%20Library/Images/info@2x.png);
        background-size: 336px 296px
    }
}

a,
dd,
dl,
dt,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
ul {
    margin: 0;
    padding: 0
}

html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    height: 100%
}

body {
    margin: 0;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    /*background-color: #c9d6dd;*/
    font-size: 16px;
    line-height: 28px;
    min-height: 100%
}

@media only screen and (min-width:700px) {
    body {
        font-size: 18px;
        line-height: 28px;
        margin-bottom: 0
    }
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600
}

.mimic-h1,
h1 {
    font-weight: 900;
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 30px
}

@media only screen and (min-width:700px) {
    .mimic-h1,
    h1 {
        font-size: 36px;
        line-height: 48px;
        margin-bottom: 38px
    }
}

h2,
p {
    margin-bottom: 25px
}

.mimic-h1 {
    padding-top: 30px
}

.invert-mobile .mimic-h1 {
    padding-top: 0
}

.page-title {
    display: block
}

@media only screen and (min-width:1000px) {
    .page-title {
        display: none
    }
}

h2 {
    font-size: 22px;
    line-height: 30px
}

@media only screen and (min-width:700px) {
    h2 {
        font-size: 30px;
        line-height: 38px;
        margin-bottom: 25px
    }
}

h3 {
    font-size: 18px;
    line-height: 25px;
    margin-bottom: 20px
}

@media only screen and (min-width:700px) {
    h3 {
        font-size: 26px;
        line-height: 34px;
        margin-bottom: 28px
    }
}

h4 {
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 15px
}

p.sml,
p.xs {
    margin-bottom: 0
}

p.xs {
    font-size: 14px;
    line-height: 22px
}

p.sml {
    font-size: 16px;
    line-height: 24px
}

p.lrg {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 20px
}

@media only screen and (min-width:700px) {
    p.lrg {
        font-size: 20px;
        line-height: 30px;
        margin-bottom: 25px
    }
}

p.mb-40 {
    margin-bottom: 20px
}

@media only screen and (min-width:700px) {
    p.mb-40 {
        margin-bottom: 40px
    }
}

.mb-0 {
    margin-bottom: 0
}

.drop-caps::first-letter {
    font-size: 300%;
    line-height: 85%;
    float: left;
    font-weight: 700;
    margin: 0 10px 0 0;
    position: relative
}

@media only screen and (min-width:320px) {
    .drop-caps::first-letter {
        font-size: 590%;
        margin: 0 10px -18px -5px
    }
}

@media only screen and (min-width:700px) {
    .drop-caps::first-letter {
        font-size: 740%;
        margin: -3px 15px -20px -5px
    }
}

ol,
ul {
    margin-bottom: 25px
}

    ol li,
    ul li {
        margin-bottom: 10px;
        padding-left: 15px;
        display: block;
        position: relative
    }

        ol li:before,
        ul li:before {
            content: "";
            position: absolute;
            left: 0;
            font-size: 15px
        }

        .row,
        ol li:before {
            position: relative
        }

        ol li:last-child,
        ul li:last-child {
            margin-bottom: 0
        }

    ol li {
        padding: 0
    }

        ol li:before {
            display: none;
            content: ""
        }

strong {
    font-weight: 700
}

b {
    font-weight: 600
}

    b.heavy,
    strong.heavy {
        font-weight: 900
    }

a a:visited {
    color: #58badc;
    outline: 0
}

a:hover {
    outline: 0;
    text-decoration: underline
}

a .link-external {
    margin-left: 5px
}

.opmini a {
    padding-right: 20px;
    display: block
}

.bg-white {
    background-color: #fff
}

.bg-grey {
    background-color: #c9d6dd
}

.bg-mid-grey {
    background-color: #393d40
}

.bg-darker-grey {
    background-color: #2e3235
}

.bg-light-grey {
    background-color: #d9e2e7
}

.bg-red {
    background-color: #e2574c
}

.bg-navy {
    background-color: #324d5b
}

.bg-teal {
    background-color: #3db39e
}

.bg-light-blue {
    background-color: #2ea9d3
}

.bg-dark-blue {
    background-color: #005870
}

.bg-darker-blue {
    background-color: #3c7b99
}

.bg-blue-dull {
    background-color: #4682a1
}

.bg-green {
    background-color: #b7cb34
}

.bg-pink {
    background-color: #ea2a74
}

.bg-error-page {
    background-color: #7c8080
}

.bg-blue {
    background-color: #2ea9d3
}

.bg-dark-grey {
    background-color: #818182
}

.bg-dark-demi-grey {
    background-color: #b3bfc9
}

.bg-light-demi-grey {
    background-color: #dee2e5
}

.bg-citizen-blue {
    background-color: #005870
}

.bg-font-adjust-bg {
    background-color: #d9e2e7
}

.bg-gold {
    background-color: #F0c75e
}

.bg-card-grey {
    background-color: #c9d6dd
}

.bg-charcoal {
    background-color: #6d6e72
}

.bg-light-yellow {
    background-color: #ffe2aa
}

.text-grey {
    color: #7c8080
}

.btn,
.btn:hover:hover,
.btn:visited:hover {
    color: #fff
}

hr {
    box-sizing: content-box;
    border: none;
    height: 1px;
    background: #cdd2d4;
    margin: 0 0 40px
}

legend {
    border: 1px solid #CCC;
    padding: 25px
}

.text-left,
.text-left * {
    text-align: left
}

.text-center,
.text-center * {
    text-align: center
}

.text-right,
.text-right * {
    text-align: right
}

.text-top,
.text-top * {
    vertical-align: text-top
}

.tbl {
    height: 100%;
    display: table
}

    .tbl:first-child {
        display: table-cell;
        vertical-align: middle
    }

.bg,
.img-responsive,
.responsive {
    display: block;
    height: auto;
    width: 100%
}

.advert-section,
.card figure > a,
.figure-credits,
.image-gallery-slider .image-gallery-content,
.list-figure-item figure a,
.profile-detail figure,
.responsive-media iframe,
.subtopic-fullsize-img {
    background: url(/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/Style%20Library/Images/placeholder.png) center no-repeat #ececec
}

figure {
    margin: 0;
    padding: 0
}

.img-responsive,
.responsive {
    margin: 0 auto
}

.img-circle {
    border-radius: 50%
}

@media only screen and (min-width:320px) {
    .cover {
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat
    }

    .bg {
        display: none
    }

        .bg.inline,
        .no-js .bg {
            display: block
        }
}

.cover.maintain {
    background-position: center top;
    background-size: 100%
}

@media only screen and (min-width:320px) and (min-width:700px) {
    .bg.inline {
        display: none
    }
}

.hidden,
.screen-reader-text {
    display: none
}

    .screen-reader-text:focus {
        display: block
    }

.transparent {
    width: 100%;
    opacity: 0;
    display: none
}

.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.mobile {
    display: block
}

.desktop {
    display: none
}

@media only screen and (min-width:1000px) {
    .mobile {
        display: none
    }

    .desktop {
        display: block
    }
}

.clearfix:after,
.clearfix:before,
.container-fluid:after,
.container-fluid:before,
.container-md:after,
.container-md:before,
.container-sm:after,
.container-sm:before,
.container:after,
.container:before,
.dock .index:after,
.dock .index:before,
.row:after,
.row:before,
.search-inner .header:after,
.search-inner .header:before {
    content: " ";
    display: table
}

.list-paragraph p,
.profile-detail p {
    overflow-wrap: break-word;
    word-wrap: break-word
}

.check,
.cookie,
.info-note,
.java-script,
.map-pin,
.note {
    background-repeat: no-repeat;
    overflow: hidden
}

iframe {
    border: none
}

.no-transition,
.no-transition * {
    transition: none
}

*,
:after,
:before {
    box-sizing: border-box
}

.wrap {
    width: 100%
}

.padded {
    padding-top: 25px;
    padding-bottom: 25px
}

.container,
.container-fluid,
.container-md,
.container-sm,
.dock .index,
.search-inner .header {
    margin-right: auto;
    margin-left: auto;
    position: relative;
    padding-left: 15px;
    padding-right: 15px
}

    .container-fluid.collapse-desktop .row,
    .container-md.collapse-desktop .row,
    .container-sm.collapse-desktop .row,
    .container.collapse-desktop .row,
    .dock .collapse-desktop.index .row,
    .row,
    .search-inner .collapse-desktop.header .row {
        margin-right: -15px;
        margin-left: -15px
    }

@media only screen and (min-width:700px) {
    .cover.maintain {
        background-position: center;
        background-size: cover
    }

    .container,
    .container-fluid,
    .container-md,
    .container-sm,
    .dock .index,
    .search-inner .header {
        padding-left: 30px;
        padding-right: 30px
    }
}

.container-fluid.container-subtopic-tpl,
.container-md.container-subtopic-tpl,
.container-sm.container-subtopic-tpl,
.container.container-subtopic-tpl,
.dock .container-subtopic-tpl.index,
.search-inner .container-subtopic-tpl.header {
    padding-left: 0;
    padding-right: 0
}

@media only screen and (min-width:1000px) {
    .padded {
        padding-top: 40px;
        padding-bottom: 40px
    }

    .container-fluid.container-subtopic-tpl,
    .container-md.container-subtopic-tpl,
    .container-sm.container-subtopic-tpl,
    .container.container-subtopic-tpl,
    .dock .container-subtopic-tpl.index,
    .search-inner .container-subtopic-tpl.header {
        padding-left: 30px;
        padding-right: 30px
    }
}

.container-fluid.collapse,
.container-md.collapse,
.container-sm.collapse,
.container.collapse,
.dock .collapse.index,
.search-inner .collapse.header {
    padding-right: 0;
    padding-left: 0
}

@media only screen and (min-width:480px) {
    .container-fluid.collapse,
    .container-md.collapse,
    .container-sm.collapse,
    .container.collapse,
    .dock .collapse.index,
    .search-inner .collapse.header {
        padding-right: inherit;
        padding-left: inherit
    }
}

.container-fluid.collapse-tablet,
.container-md.collapse-tablet,
.container-sm.collapse-tablet,
.container.collapse-tablet,
.dock .collapse-tablet.index,
.search-inner .collapse-tablet.header {
    padding-right: 0;
    padding-left: 0
}

@media only screen and (min-width:700px) {
    .container-fluid.collapse-tablet,
    .container-md.collapse-tablet,
    .container-sm.collapse-tablet,
    .container.collapse-tablet,
    .dock .collapse-tablet.index,
    .search-inner .collapse-tablet.header {
        padding-left: 15px;
        padding-right: 15px
    }

    .container-fluid.collapse-desktop .row,
    .container-md.collapse-desktop .row,
    .container-sm.collapse-desktop .row,
    .container.collapse-desktop .row,
    .dock .collapse-desktop.index .row,
    .search-inner .collapse-desktop.header .row {
        margin-left: -15px;
        margin-right: -15px
    }
}

.container-fluid.collapse-desktop,
.container-md.collapse-desktop,
.container-sm.collapse-desktop,
.container.collapse-desktop,
.dock .collapse-desktop.index,
.search-inner .collapse-desktop.header {
    padding-right: 0;
    padding-left: 0
}

.container-fluid {
    width: 100%
}

.container,
.dock .index,
.search-inner .header {
    max-width: 1000px
}

.container-md {
    max-width: 780px
}

.container-sm {
    max-width: 640px
}

.row.invert-mobile {
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

    .row.invert-mobile > [class*=col-] {
        -ms-transform: rotate(-180deg);
        transform: rotate(-180deg)
    }

@media only screen and (min-width:1000px) {
    .container-fluid.collapse-desktop,
    .container-md.collapse-desktop,
    .container-sm.collapse-desktop,
    .container.collapse-desktop,
    .dock .collapse-desktop.index,
    .search-inner .collapse-desktop.header {
        padding-left: 15px;
        padding-right: 15px
    }

    .row.invert-mobile,
    .row.invert-mobile > [class*=col-] {
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
}

[class*=col-] {
    float: left;
    padding-right: 10px;
    padding-left: 10px
}

.col-1-1,
.col-1-2,
.col-1-3,
.col-1-4,
.col-1-8,
.col-2-3 {
    width: 100%
}

@media only screen and (min-width:320px) {
    .col-1-4.break-2-3-4 {
        width: 50%
    }

    .twittercol {
        width: 88%;
        margin-left: 6%;
    }
}

@media only screen and (min-width:700px) {
    .twittercol {
        width: 50%;
        margin-left: 0;
    }

    .col-1-1 {
        width: 100%
    }

    .col-1-2 {
        width: 50%
    }

        .col-1-2.break-1-1-2 {
            width: 100%
        }

    .col-1-3 {
        width: 33.3333%
    }

        .col-1-3.break-1-1-3 {
            width: 100%
        }

    .col-2-3 {
        width: 66.6666%
    }

        .col-2-3.break-1-1-3 {
            width: 100%
        }

    .col-1-4 {
        width: 50%
    }

        .col-1-4.break-1-1-4 {
            width: 100%
        }

        .col-1-4.break-2-3-4 {
            width: 33.3333%
        }

        .col-1-4.break-1-4-4 {
            width: 25%
        }

    .col-1-8 {
        width: 12.5%
    }
}

@media only screen and (min-width:1000px) {
    .twittercol {
        width: 50%;
        margin-left: 0;
    }

    .col-1-2,
    .col-1-2.break-1-1-2 {
        width: 50%
    }

    .col-1-3.break-1-1-3 {
        width: 33.3333%
    }

    .col-2-3.break-1-1-3 {
        width: 66.6666%
    }

    .col-1-4 {
        width: 33.333%
    }

        .col-1-4.break-1-1-4,
        .col-1-4.break-1-4-4,
        .col-1-4.break-2-3-4 {
            width: 25%
        }
}

.left {
    float: left
}

.right {
    float: right
}

.check,
.cookie,
.info-note,
.java-script,
.loading,
.map-pin,
.note {
    display: block
}

.loading {
    background-image: url(/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/_assets/web1.capetown.gov.za/Style%20Library/Images/loading.gif);
    position: absolute;
    top: 22px;
    right: 16px;
    width: 16px;
    height: 16px;
    background-size: auto
}

.btn i,
.map-pin,
fieldset p {
    position: relative
}

.map-pin {
    background-position: -74px -168px;
    width: 14px;
    height: 20px;
    margin-right: 10px;
    margin-bottom: 0;
    top: -2px
}

.check {
    background-position: -130px -2px;
    width: 60px;
    height: 60px
}

.cookie {
    background-position: -254px -170px;
    width: 50px;
    height: 50px
}

.java-script {
    background-position: -80px -254px;
    width: 30px;
    height: 30px
}

.note {
    background-position: -86px -170px;
    width: 80px;
    height: 80px
}

.info-note {
    background-position: -46px -254px;
    width: 30px;
    height: 30px
}

.caring,
.fastfact,
.inclusive,
.opportunity,
.quickstat,
.remember,
.safe,
.toptip,
.wellrun {
    width: 80px;
    height: 80px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block
}

.fastfact {
    background-position: -86px -86px
}

.caring {
    background-position: -2px 0px
}

.safe {
    background-position: -255px 0px
}

.wellrun {
    background-position: -86px -3px
}

.inclusive {
    background-position: -170px -2px
}

.opportunity {
    background-position: -170px -170px
}

.quickstat {
    background-position: -2px -170px
}

.remember {
    background-position: -2px -86px
}

.toptip {
    background-position: -170px -86px
}

.alert {
    background-position: -2px -254px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 40px;
    height: 40px
}

.citycard {
    background-position: -254px -86px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 68px;
    height: 80px
}

.link-external,
.link-external-white {
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 10px;
    height: 10px
}

.link-external {
    background-position: -242px -78px
}

.link-external-white {
    background-position: -242px -106px
}

.filter-arrow-down,
.filter-arrow-up {
    width: 12px;
    height: 12px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block
}

.filter-arrow-up {
    background-position: -34px -192px
}

.filter-arrow-down {
    background-position: -188px -168px
}

.breadcrumb-arrow {
    background-position: -242px -92px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 10px;
    height: 10px
}

.breadcrumb-home {
    background-position: -92px -168px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 16px;
    height: 16px
}

.arrow-blue-next,
.arrow-blue-prev,
.arrow-dark-down,
.arrow-dark-next,
.arrow-white-down-sml,
.arrow-white-next,
.arrow-white-prev,
.arrow-white-up-sml,
.button-down-arrow,
.button-up-arrow {
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 12px;
    height: 12px
}

.arrow-white-prev {
    background-position: -82px -192px
}

.arrow-white-next {
    background-position: -66px -192px
}

.arrow-white-up-sml {
    background-position: -239px -140px
}

.arrow-white-down-sml {
    background-position: -50px -192px
}

.arrow-dark-prev {
    background-position: -18px -192px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 12px;
    height: 12px
}

.arrow-dark-next {
    background-position: -2px -192px
}

.arrow-dark-down,
.button-down-arrow {
    background-position: -204px -168px
}

.button-up-arrow {
    background-position: -220px -168px
}

.arrow-blue-next {
    background-position: -236px -168px
}

.arrow-blue-prev {
    background-position: -172px -168px
}

.search-clear,
.search-clear-white {
    width: 16px;
    height: 16px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block
}

.search-clear-white {
    background-position: -199px -140px
}

.search-clear {
    background-position: -132px -168px
}

.search-white {
    background-position: -50px -168px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 20px;
    height: 20px
}

.filter-set {
    background-position: -170px -140px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 25px;
    height: 17px
}

.download,
.print {
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 16px
}

.print {
    background-position: -152px -168px;
    height: 13px
}

.download {
    background-position: -219px -140px;
    height: 16px
}





.share-facebook,
.share-link,
.share-twitter {
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    display: block;
    overflow: hidden
}

.share-facebook {
    background-position: -66px -130px
}

.share-link {
    background-position: -100px -130px
}

.share-twitter {
    background-position: -134px -130px
}

.spatial {
    float: left;
    margin: 0 10px 10px 0;
    padding: 2px;
    border: 2px solid #666;
    border-radius: 50%
}

@media(-webkit-min-device-pixel-ratio:2), (min-resolution:192dpi) {
    .spatial {
        border-width: 1px
    }
}

.city-connect {
    background-position: -2px -2px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 250px;
    height: 72px
}

.action-portal-menu .menu-cover .available-options:after,
.themes .tabs [class*=tabs-centered-]:after,
.themes [class*=theme-menu-]:after {
    display: block;
    width: 40px;
    height: 40px;
    border: 2px solid #aaa;
    border-radius: 50%;
    border-left-color: transparent;
    pointer-events: none;
    animation: spin 1s linear infinite
}

@keyframes spin {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

.breadcrumb ul li:before,
.calendar tr:first-child td table tr td:first-child a:before,
.calendar tr:first-child td table tr td:last-child a:before,
.calendar-entries .heading a:after,
.icon,
.info,
.lrg-icon:before,
.media,
.social-link .icon:after,
.ui-icon,
.ui-selectmenu-button span.ui-icon,
fieldset input[type=checkbox]:checked + label:before,
fieldset input[type=radio]:checked + label:before,
fieldset p.select:after {
    display: inline-block;
    vertical-align: middle;
    box-sizing: content-box
}

.section-pull > .btn {
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .section-pull > .btn {
        margin-bottom: 40px
    }
}

.btn {
    min-width: 40px;
    width: 100%;
    padding: 18px 0;
    background: #2ea9d3;
    text-decoration: none;
    display: inline-block;
    border-radius: 2px;
    text-align: center;
    font-size: 14px;
    line-height: 14px;
    margin-bottom: 20px;
    font-weight: 600;
    cursor: pointer
}

@media only screen and (min-width:700px) {
    .btn {
        min-width: 150px;
        width: auto;
        margin-bottom: 0;
        padding: 13px 20px
    }
}

.btn:hover {
    background-color: #2488aa
}

.btn:hover,
.btn:visited {
    color: #fff;
    text-decoration: none
}

.btn.invert {
    background-color: #fff;
    color: #2ea9d3
}

.btn i {
    margin: 0 15px 0 -5px
}

.btn.icon-right {
    padding-right: 15px
}

    .btn.icon-right i {
        margin-right: 0;
        margin-left: 5px
    }

.btn.full {
    width: 100%;
    margin-left: 0
}

.btn.lrg {
    padding-top: 18px;
    padding-bottom: 18px
}

.btn.square {
    min-width: 40px;
    width: 40px;
    padding: 13px 0;
    margin-bottom: 0
}

    .btn.square i {
        margin: 0 auto
    }

.btn + .btn {
    margin-bottom: 0;
    margin-left: 0
}

@media only screen and (min-width:700px) {
    .btn + .btn {
        margin-left: 20px
    }
}

.btn + .btn.full {
    margin: 20px 0 0
}

.btn.btn-hide {
    display: none
}

@media only screen and (min-width:700px) {
    .btn.btn-hide {
        display: inline-block
    }

    .tags {
        margin-bottom: 50px
    }
}

.btn.btn-show {
    display: inline-block
}

@media only screen and (min-width:1000px) {
    .btn.btn-show {
        display: none
    }
}

.btn.teal {
    background-color: #2ea9d3;
    color: #fff
}

    .btn.teal:hover {
        background-color: #2488aa;
        color: #fff
    }

    .btn.teal:visited {
        color: #fff
    }

.btn.teal-dark {
    background-color: #318f7e
}

    .btn.teal-dark:hover {
        background-color: #24695d;
        color: #fff
    }

.btn.blue-dull {
    background-color: #4682a1
}

    .btn.blue-dull:hover {
        background-color: #37657d;
        color: #fff
    }

.btn.grey {
    background-color: #c9d6dd;
    color: #666
}

    .btn.grey:hover {
        background-color: #aabec9;
        color: #666
    }

.btn.dark-grey {
    background-color: #4c5053
}

    .btn.dark-grey:hover {
        background-color: #343638;
        color: #fff
    }

.btn.disabled,
.btn:disabled {
    pointer-events: none;
    background-color: #bacad3;
    cursor: default
}

form {
    margin: 0;
    padding: 0
}

fieldset {
    border: 0;
    padding: 0 0 20px
}

    fieldset.no-padding {
        padding-bottom: 0
    }

    fieldset p {
        width: 100%;
        margin-bottom: 20px
    }

        fieldset p .character-count,
        fieldset p.error input[type=checkbox] + label:last-of-type,
        fieldset p.error input[type=radio] + label:last-of-type,
        fieldset p.inline label {
            margin-bottom: 0
        }

        fieldset p.inline {
            display: inline-block;
            width: auto;
            padding-left: 40px
        }

        fieldset p.error input[type=text],
        fieldset p.error input[type=text]:focus,
        fieldset p.error input[type=text]:hover,
        fieldset p.error select,
        fieldset p.error select:focus,
        fieldset p.error select:hover,
        fieldset p.error textarea,
        fieldset p.error textarea:focus,
        fieldset p.error textarea:hover {
            border-color: #e2574c
        }

        fieldset p.error .error-msg {
            display: inline-block;
            width: auto;
            margin-bottom: 0;
            color: #e2574c;
            font-size: 14px
        }

        fieldset p .character-count {
            font-size: 14px;
            display: block
        }

@media only screen and (min-width:700px) {
    fieldset p .character-count {
        float: right;
        display: inline-block;
        margin-bottom: 20px
    }

    fieldset p textarea {
        resize: vertical
    }
}

fieldset p .label,
fieldset p label {
    display: inline-block;
    width: 100%;
    margin-bottom: 10px
}

    fieldset p .label.error,
    fieldset p label.error {
        margin-bottom: 0;
        color: #e2574c;
        font-size: 14px
    }

    fieldset p .label span,
    fieldset p label span {
        font-size: 14px
    }

        fieldset p .label span.req-field,
        fieldset p label span.req-field {
            color: #e2574c
        }

        fieldset p .label span.indicator,
        fieldset p label span.indicator {
            position: absolute;
            margin-left: -10px
        }

fieldset p .error-msg {
    display: none
}

fieldset p input[type=text],
fieldset p select,
fieldset p textarea {
    width: 100%;
    height: 50px;
    min-height: 41px;
    padding-left: 10px;
    border: 2px solid #b4bfc7;
    border-radius: 2px;
    outline: 0
}

    fieldset p input[type=text]::-webkit-input-placeholder,
    fieldset p select::-webkit-input-placeholder,
    fieldset p textarea::-webkit-input-placeholder {
        color: #757575
    }

    fieldset p input[type=text]::-moz-placeholder,
    fieldset p select::-moz-placeholder,
    fieldset p textarea::-moz-placeholder {
        color: #757575
    }

    fieldset p input[type=text]:-ms-input-placeholder,
    fieldset p select:-ms-input-placeholder,
    fieldset p textarea:-ms-input-placeholder {
        color: #757575
    }

    fieldset p input[type=text]::placeholder,
    fieldset p select::placeholder,
    fieldset p textarea::placeholder {
        color: #757575
    }

    fieldset p input[type=text]:focus,
    fieldset p input[type=text]:hover,
    fieldset p select:focus,
    fieldset p select:hover,
    fieldset p textarea:focus,
    fieldset p textarea:hover {
        border-color: #2ea9d3
    }

    fieldset p input[type=text]:disabled:focus,
    fieldset p input[type=text]:disabled:hover,
    fieldset p select:disabled:focus,
    fieldset p select:disabled:hover,
    fieldset p textarea:disabled:focus,
    fieldset p textarea:disabled:hover {
        border-color: #b4bfc7
    }

    fieldset p input[type=text].error,
    fieldset p select.error,
    fieldset p textarea.error {
        border-color: #e2574c
    }

fieldset p textarea {
    height: 100px;
    padding: 10px;
    max-height: 150px
}

fieldset p.select select {
    padding-right: 20px
}

fieldset p.select:before {
    display: none;
    content: "";
    position: absolute;
    width: 46px;
    height: 46px;
    top: 40px;
    right: 2px;
    border-radius: 0 2px 2px 0;
    background-color: #fff;
    z-index: 1
}

@media(-webkit-min-device-pixel-ratio:2), (min-resolution:192dpi) {
    fieldset p input[type=text],
    fieldset p select,
    fieldset p textarea {
        border-width: 1px
    }

    fieldset p.select:before {
        width: 48px;
        height: 48px;
        top: 39px;
        right: 1px
    }
}

.no-js fieldset p.select:before {
    display: block
}

fieldset p.select:after {
    position: relative;
    float: right;
    margin: 0 20px 0 0;
    top: -30px;
    content: "";
    background-position: -204px -168px;
    background-repeat: no-repeat;
    overflow: hidden;
    width: 12px;
    height: 12px;
    display: none;
    z-index: 2
}

.no-js fieldset p.select:after {
    display: block
}

fieldset p.select.native:after,
fieldset p.select.native:before {
    display: inline-block;
    pointer-events: none
}

@media all and (-ms-high-contrast:none) {
    fieldset p.select.native {
        display: none
    }

        fieldset p.select.native select {
            padding-right: 0
        }
}

fieldset .selectors label {
    padding-left: 30px
}

fieldset input[type=checkbox],
fieldset input[type=radio] {
    position: absolute;
    opacity: 0
}

    fieldset input[type=checkbox] + label,
    fieldset input[type=radio] + label {
        position: relative
    }

        fieldset input[type=checkbox] + label:before,
        fieldset input[type=radio] + label:before {
            content: "";
            position: absolute;
            top: 4px;
            left: 0;
            display: block;
            width: 20px;
            height: 20px;
            background-color: #fff;
            border: 2px solid #b4bfc7;
            border-radius: 2px
        }

@media(-webkit-min-device-pixel-ratio:2), (min-resolution:192dpi) {
    fieldset input[type=checkbox] + label:before,
    fieldset input[type=radio] + label:before {
        border-width: 1px
    }
}

fieldset input[type=checkbox]:checked + label:before,
fieldset input[type=radio]:checked + label:before {
    background-color: #2ea9d3;
    border: none;
    background-position: -26px -168px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 20px;
    height: 20px;
    box-sizing: border-box
}

fieldset input[type=checkbox]:focus + label:before,
fieldset input[type=checkbox]:hover + label:before,
fieldset input[type=radio]:focus + label:before,
fieldset input[type=radio]:hover + label:before {
    border-color: #2ea9d3
}

fieldset input[type=checkbox]:disabled + label,
fieldset input[type=radio]:disabled + label {
    pointer-events: none;
    color: #c2c2c2
}

fieldset input[type=checkbox]:disabled:focus + label:before,
fieldset input[type=checkbox]:disabled:hover + label:before,
fieldset input[type=radio]:disabled:focus + label:before,
fieldset input[type=radio]:disabled:hover + label:before {
    border-color: #c9d6dd
}

fieldset input[type=radio] + label:after,
fieldset input[type=radio] + label:before {
    border-radius: 50%
}

fieldset input[type=radio]:checked + label:before {
    background-image: none
}

fieldset input[type=radio]:checked + label:after {
    position: absolute;
    top: 10px;
    left: 6px;
    content: "";
    width: 8px;
    height: 8px;
    background-color: #fff
}

fieldset .filter input[type=checkbox],
fieldset .filter input[type=radio] {
    right: 18px;
    top: 21px
}

fieldset .check-right input[type=checkbox] + label,
fieldset .check-right input[type=radio] + label {
    padding-right: 40px
}

    fieldset .check-right input[type=checkbox] + label:after,
    fieldset .check-right input[type=checkbox] + label:before,
    fieldset .check-right input[type=radio] + label:after,
    fieldset .check-right input[type=radio] + label:before {
        left: auto;
        right: 15px;
        top: 50%;
        margin-top: -10px
    }

    fieldset .check-right input[type=checkbox] + label:after,
    fieldset .check-right input[type=radio] + label:after {
        right: 21px;
        margin-top: -4px
    }

button,
input[type=text],
select,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.global-input {
    position: relative;
    width: 100%;
    min-height: 60px;
    height: 60px
}

.global-label {
    display: none;
    width: 100%;
    height: 100%;
    line-height: 60px;
    color: #a1a0a0;
    position: absolute;
    background: 0 0;
    top: 0;
    left: 0;
    padding: 0 20px
}

.recaptcha {
    margin-bottom: 25px
}

    .recaptcha img {
        float: none
    }

    .recaptcha small {
        display: block
    }

@media only screen and (min-width:1000px) {
    .recaptcha {
        margin-bottom: 40px
    }

        .recaptcha img {
            float: left
        }

        .recaptcha small {
            display: inline-block;
            position: relative;
            top: 10px;
            padding-left: 20px
        }
}

.ui-helper-hidden {
    display: none
}

.ui-helper-clearfix:after,
.ui-helper-clearfix:before {
    content: "";
    display: table;
    border-collapse: collapse
}

.ui-helper-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.ui-helper-zfix,
.ui-widget-overlay {
    left: 0;
    width: 100%;
    height: 100%;
    top: 0
}

.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    text-decoration: none;
    font-size: 100%;
    list-style: none
}

.ui-helper-clearfix {
    min-height: 0
}

.ui-helper-zfix {
    position: absolute;
    opacity: 0;
    filter: Alpha(Opacity=0)
}

.ui-front {
    z-index: 100
}

.ui-state-disabled {
    cursor: default !important;
    border-color: #b4bfc7 !important
}

    .ui-state-disabled .ui-selectmenu-text {
        color: #c2c2c2
    }

.ui-widget-overlay {
    position: fixed
}

.ui-menu {
    display: block;
    outline: 0;
    height: auto;
    overflow: auto
}

    .ui-menu .ui-menu {
        position: absolute
    }

    .ui-menu .ui-menu-item {
        position: relative;
        cursor: pointer;
        min-height: 0;
        font-size: 16px;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        padding-left: 0
    }

        .ui-menu .ui-menu-item:before {
            display: none
        }

        .ui-menu .ui-menu-item .ui-menu-item-wrapper {
            transition: color .35s, background-color .45s, padding .35s ease
        }

    .ui-menu .ui-state-active {
        color: #2ea9d3
    }

    .ui-menu .ui-menu-divider {
        margin: 5px 0;
        height: 0;
        font-size: 0;
        line-height: 0;
        border-width: 1px 0 0
    }

.searchable-items .ui-state-active,
.searchable-items .ui-state-focus {
    color: #fff;
    background-color: #2ea9d3;
    padding: 0 20px
}

.ui-menu-icons {
    position: relative
}

    .ui-menu-icons .ui-menu-item {
        padding-left: 2em
    }

.ui-menu .ui-icon {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0
}

.ui-menu .ui-menu-icon {
    left: auto;
    right: 0
}

.ui-selectmenu-menu {
    padding: 0;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0;
    display: none
}

    .ui-selectmenu-menu .ui-menu {
        position: relative;
        top: -2px;
        overflow: auto;
        overflow-x: hidden;
        padding: 20px;
        border: 2px solid #2ea9d3;
        border-top: none;
        border-radius: 0 0 2px 2px;
        background-color: #eff3f6;
        max-height: 300px;
    }

@media(-webkit-min-device-pixel-ratio:2), (min-resolution:192dpi) {
    .ui-selectmenu-menu .ui-menu {
        border-width: 1px
    }
}

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
    font-size: 1em;
    font-weight: 700;
    height: auto;
    border: 0
}

.ui-selectmenu-open {
    display: block
}

.ui-selectmenu-button {
    display: inline-block;
    overflow: hidden;
    position: relative;
    text-decoration: none;
    border-radius: 3px;
    cursor: pointer;
    border: 2px solid #b4bfc7;
    background-color: #fff
}

@media(-webkit-min-device-pixel-ratio:2), (min-resolution:192dpi) {
    .ui-selectmenu-button {
        border-width: 1px
    }
}

.error .ui-selectmenu-button {
    border-color: #e2574c
}

.ui-selectmenu-button span.ui-icon {
    right: 20px;
    top: 50%;
    margin-top: -6px;
    position: absolute;
    background-position: -204px -168px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 12px;
    height: 12px
}

.card figure,
.card figure > a {
    position: relative;
    overflow: hidden
}

.ui-selectmenu-button span.ui-selectmenu-text {
    text-align: left;
    padding: 0 50px 0 20px;
    line-height: 50px;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.card figure:after,
.card figure:before,
.card:after,
.card:before {
    content: " ";
    display: table
}

.ui-selectmenu-button:focus,
.ui-selectmenu-button:hover {
    outline: 0;
    border-color: #2ea9d3
}

.ui-selectmenu-button.ui-corner-top .ui-icon {
    transform: rotateX(-180deg)
}

.card {
    padding: 20px 0 0
}

@media only screen and (min-width:700px) {
    .card {
        padding: 40px 0 20px
    }
}

.card.dark div > p,
.card.dark h3 {
    color: #fff
}

.card figure {
    margin-bottom: 25px;
    color: inherit;
    background-color: #fff;
    border-radius: 2px;
    transition: box-shadow .3s ease
}

    .card figure:after {
        clear: both
    }

.bg-white .card figure {
    background-color: #d9e2e7
}

.card figure > a {
    float: left;
    width: 120px;
    padding-bottom: 120px;
    backface-visibility: hidden
}

@media only screen and (min-width:700px) {
    .card figure > a {
        width: 150px;
        padding-bottom: 150px
    }
}

@media only screen and (min-width:1000px) {
    .card figure > a {
        width: 50%;
        padding-bottom: 50%
    }
}

.card figure > a img {
    position: absolute;
    display: block;
    width: 100%;
    height: auto;
    transition: transform .25s ease, opacity .5s
}

.card figure figcaption {
    width: auto;
    height: 100%
}

    .card figure figcaption h4,
    .card figure figcaption p {
        font-size: 14px;
        line-height: 18px;
        margin: 0;
        padding: 10px 10px 0;
        text-overflow: ellipsis;
        overflow: hidden
    }

    .card figure figcaption h4 {
        margin-bottom: 10px;
        max-height: 45px
    }

@media only screen and (min-width:700px) {
    .card figure figcaption h4,
    .card figure figcaption p {
        font-size: 16px;
        line-height: 20px;
        padding: 15px 15px 0;
        text-overflow: initial
    }

    .card figure figcaption h4 {
        max-height: none
    }
}

.card figure figcaption p {
    padding-top: 0;
    white-space: nowrap
}

.card figure figcaption .read-more {
    position: absolute;
    bottom: 10px;
    right: 0;
    padding: 0 15px;
    width: auto;
    color: #2ea9d3
}

.card figure .read-more {
    position: absolute;
    bottom: 10px;
    font-size: 14px
}

    .card figure .read-more:hover {
        text-decoration: underline
    }

.accordion .dt a,
.accordion-open .dt a,
.calendar tr td a:hover,
.calendar tr th a:hover,
.card figure:hover,
.search-item p.tag a:hover:after,
.search-item span:hover:after,
.tags a:hover {
    text-decoration: none
}

@media only screen and (min-width:700px) {
    .card figure figcaption p {
        white-space: normal
    }

    .card figure figcaption .read-more {
        right: auto;
        left: 150px
    }

    .card figure:hover {
        box-shadow: rgba(0, 0, 0, .5) 1px 5px 35px -4px
    }
}

.card.smaller figure figcaption a:hover,
.card.vertical figure figcaption a:hover {
    color: #2ea9d3
}

.card.smaller figure figcaption p b,
.card.vertical figure figcaption p b {
    font-size: 12px
}

@media only screen and (min-width:1000px) {
    .card figure figcaption .read-more {
        left: 50%
    }

    .card figure:hover > a img {
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }

    .card.smaller figure > a {
        width: 33.33333%;
        padding-bottom: 33.33333%
    }

    .card.vertical figure {
        height: 425px
    }

        .card.vertical figure a {
            width: 100%;
            padding-bottom: 100%
        }
}

@media only screen and (min-width:700px) {
    .card.smaller figure figcaption .read-more {
        left: auto
    }

    .card.vertical figure figcaption > a {
        left: auto;
        right: 0;
        padding: 0 15px;
        text-align: right
    }
}

/*Card Styles - cc = card color*/
.cc-card-white {
    background-color: #ffffff !Important;
}

.cc-font-white {
    color: #ffffff !Important;
}

.cc-card-red {
    background-color: #ff574c !Important;
}

.cc-font-red {
    color: #ff574c !Important;
}

.cc-card-yellow {
    background-color: #ffe2aa !Important;
}

.cc-font-yellow {
    color: #ffe2aa !Important;
}

.cc-card-blue {
    background-color: #4682a1 !Important;
}

.cc-font-blue {
    color: #4682a1 !Important;
}

.cc-card-navy {
    background-color: #324d5b !Important;
}

.cc-font-navy {
    color: #324d5b !Important;
}

.calendar {
    width: 100%;
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .card.vertical figure figcaption {
        height: 50%
    }

    .calendar {
        margin-bottom: 40px
    }
}

.calendar tr td {
    border-right-color: #fff;
    border-bottom-color: #fff
}

    .calendar tr td table {
        width: 100%;
        margin-bottom: 0
    }

.calendar tr:first-child td {
    padding: 0;
    border: none
}

    .calendar tr:first-child td table tr td {
        padding: 5px
    }

@media only screen and (min-width:700px) {
    .calendar tr:first-child td table tr td {
        padding: 10px
    }
}

.calendar tr:first-child td table tr td:nth-child(2) {
    width: auto
}

.calendar tr:first-child td table tr td:first-child,
.calendar tr:first-child td table tr td:last-child {
    background-color: #2ea9d3
}

    .calendar tr:first-child td table tr td:first-child a,
    .calendar tr:first-child td table tr td:last-child a {
        width: 100%;
        text-indent: -100em;
        position: relative
    }

        .calendar tr:first-child td table tr td:first-child a:before,
        .calendar tr:first-child td table tr td:last-child a:before {
            content: "";
            position: absolute;
            left: 50%;
            top: 50%;
            margin: -6px 0 0 -6px
        }

        .calendar tr:first-child td table tr td:first-child a:before {
            background-position: -82px -192px;
            background-repeat: no-repeat;
            overflow: hidden;
            display: block;
            width: 12px;
            height: 12px
        }

        .calendar tr:first-child td table tr td:last-child a:before {
            background-position: -66px -192px;
            background-repeat: no-repeat;
            overflow: hidden;
            display: block;
            width: 12px;
            height: 12px
        }

.calendar tr td,
.calendar tr th {
    padding: 5px;
    text-align: center;
    width: 14.28571%;
    background-color: #c9d6dd;
    font-weight: 400
}

    .calendar tr td:first-child,
    .calendar tr th:first-child {
        font-weight: 400
    }

    .calendar tr td.other-month,
    .calendar tr th.other-month {
        background-color: #aaa
    }

        .calendar tr td.other-month a,
        .calendar tr th.other-month a {
            color: gray !important
        }

            .calendar tr td.other-month a:hover,
            .calendar tr th.other-month a:hover {
                color: #424242 !important
            }

    .calendar tr td a,
    .calendar tr th a {
        color: #424242;
        display: block;
        text-align: center;
        overflow: hidden
    }

    .calendar tr td.active a,
    .calendar tr th.active a {
        color: #2ea9d3 !important;
        font-weight: 700
    }

    .calendar tr td.active:hover,
    .calendar tr th.active:hover {
        background-color: #2ea9d3
    }

        .calendar tr td.active:hover a,
        .calendar tr th.active:hover a {
            color: #fff !important
        }

    .calendar tr td.current,
    .calendar tr th.current {
        background-color: #bacad3 !important
    }

    .calendar tr td.selected,
    .calendar tr th.selected {
        background-color: #e34d74 !important
    }

        .calendar tr td.selected a,
        .calendar tr th.selected a {
            color: #fff !important;
            font-weight: 700
        }

.calendar tr th {
    background-color: transparent;
    border: none
}

.calendar-entries .entry {
    margin-bottom: 25px
}

    .calendar-entries .entry p {
        margin-bottom: 0
    }

    .calendar-entries .entry.cancel .heading {
        background: #e2574c
    }

        .calendar-entries .entry.cancel .heading:hover {
            background: #c22b1f
        }

    .calendar-entries .entry.reschedule .heading {
        background: #005870
    }

        .calendar-entries .entry.reschedule .heading:hover {
            background: #1f7795
        }

.calendar-entries .date {
    padding: 10px;
    background-color: #686868;
    border-radius: 2px 2px 0 0;
    float: none
}

    .calendar-entries .date b {
        display: inline-block;
        color: #fff
    }

        .calendar-entries .date b:first-child {
            font-size: 20px;
            line-height: 20px;
            margin-bottom: 0
        }

@media only screen and (min-width:700px) {
    .calendar tr td,
    .calendar tr th {
        padding: 10px
    }

    .calendar-entries .date {
        float: left;
        padding: 0;
        background: 0 0
    }

        .calendar-entries .date b {
            display: block;
            text-align: center
        }

            .calendar-entries .date b:first-child {
                font-size: 36px;
                line-height: 36px;
                margin-bottom: 0;
                color: #424242
            }

            .calendar-entries .date b:last-child {
                color: #aaa
            }
}

.calendar-entries .date b:last-child {
    font-size: 18px;
    line-height: 18px;
    letter-spacing: 1px
}

.calendar-entries .details,
.calendar-entries .heading {
    padding: 10px;
    margin-bottom: 0;
    margin-left: 0
}

    .calendar-entries .details b,
    .calendar-entries .heading b {
        display: block;
        font-size: 18px
    }

.calendar-entries .heading {
    background: #2ea9d3;
    border-radius: 0;
    color: #fff;
    transition: background .3s
}

@media only screen and (min-width:700px) {
    .calendar-entries .details,
    .calendar-entries .heading {
        padding: 20px;
        margin-left: 60px
    }

    .calendar-entries .heading {
        border-radius: 2px
    }
}

.calendar-entries .heading a {
    color: #fff;
    display: block;
    position: relative;
    padding-right: 15px
}

    .calendar-entries .heading a:hover,
    .calendar-entries .heading a:visited {
        color: #fff;
        text-decoration: none
    }

    .calendar-entries .heading a:after {
        content: "";
        background-position: -66px -192px;
        background-repeat: no-repeat;
        overflow: hidden;
        display: block;
        width: 12px;
        height: 12px;
        position: absolute;
        right: 0;
        top: 50%;
        margin-top: -5px
    }

.calendar-entries .heading:hover {
    background: #2488aa
}

.calendar-entries .details {
    background: #d9e2e7;
    border-radius: 0 0 2px 2px;
    margin-top: -2px
}

.stat {
    margin-bottom: 25px;
    float: left
}

@media only screen and (min-width:1000px) {
    .stat:last-child {
        margin-bottom: 20px
    }
}

.stat.small {
    width: 50%;
    padding-right: 10px;
    text-align: center
}

    .stat.small + .small {
        padding-left: 10px;
        padding-right: 0
    }

    .stat.small .information,
    .stat.small .number {
        padding: 10px
    }

    .stat.small .title {
        text-align: center
    }

.stat .information,
.stat .number {
    padding: 20px
}

    .stat .number p {
        color: #fff;
        text-align: center;
        line-height: normal;
        font-size: 40px;
        margin-bottom: 0
    }

.stat .information {
    background-color: #c9d6dd
}

    .stat .information p {
        margin-bottom: 10px
    }

        .stat .information p:last-child {
            margin-bottom: 0
        }

.banner {
    display: block;
    background: #c9d6dd;
    border-radius: 2px;
    margin-bottom: 12.5px
}

    .banner .graphic {
        width: 100%;
        padding: 40px
    }

        .banner .graphic img {
            width: auto;
            margin: 0 auto
        }

    .banner .btn {
        width: 100%;
        margin: 0
    }

    .banner p {
        margin-bottom: 10px
    }

        .banner p:last-child {
            margin-bottom: 0
        }

    .banner figcaption {
        padding: 20px
    }

@media only screen and (min-width:700px) {
    .banner.with-copy:after,
    .banner.with-copy:before {
        content: " ";
        display: table
    }

    .banner.with-copy:after {
        clear: both
    }

    .banner.with-copy .graphic {
        float: left;
        width: auto;
        margin-right: 20px
    }
}

@media only screen and (min-width:1000px) {
    .stat .number p {
        font-size: 55px
    }

    .banner {
        margin-bottom: 20px
    }

        .banner.with-copy .graphic {
            float: none;
            width: 100%;
            margin-right: auto
        }
}

.awards-details {
    padding: 20px;
    background-color: #d9e2e7;
    border-radius: 2px;
    margin: 0 0 40px;
    position: relative
}

    .awards-details:after,
    .awards-details:before {
        content: " ";
        display: table
    }

    .awards-details:after {
        bottom: -40px
    }

@media only screen and (min-width:700px) {
    .awards-details {
        padding: 40px;
        margin: 80px 0
    }

        .awards-details:after,
        .awards-details:before {
            content: "";
            width: 100%;
            border-top: 1px solid #cdd2d4;
            position: absolute;
            left: 0
        }
}

.awards-details:before {
    top: -40px
}

.awards-details p {
    margin-bottom: 5px
}

.awards-details .list-1-2 {
    margin-bottom: 0
}

.cookie-notice {
    position: relative;
    z-index: 1000
}

.nojs {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .85);
    z-index: 1000
}

.no-js .nojs {
    display: block
}

.nojs > div {
    position: relative;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.no-js,
.no-js body {
    height: 100%;
    overflow: hidden
}

@media only screen and (min-width:1000px) {
    .section-pull .notification {
        margin-left: -40px;
        margin-right: 0
    }
}

.notification {
    min-width: 100%;
    padding-top: 20px;
    padding-bottom: 20px
}

    .notification:not(.toggle) {
        margin-bottom: 25px
    }

@media only screen and (min-width:700px) {
    .notification {
        display: table;
        padding-top: 0;
        padding-bottom: 0
    }

        .notification:not(.toggle) {
            margin-bottom: 40px
        }
}

.cookie-notice .notification,
.no-js .notification {
    margin-bottom: 0
}

.notification.toggle {
    padding-bottom: 60px;
    margin: 0
}

    .notification.toggle.closed {
        display: block;
        height: 60px;
        padding-bottom: 0;
        overflow: hidden
    }

        .notification.toggle.closed .desc,
        .notification.toggle.closed .graphic {
            opacity: 0
        }

    .notification.toggle .desc {
        min-height: auto;
        color: #fff;
        border-color: #ffc100
    }

.notification .toggle-alert {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    z-index: 1
}

    .notification .toggle-alert .btn {
        color: #2ea9d3;
        background-color: #2e3235;
        margin-bottom: 0;
        padding: 0;
        line-height: 60px
    }

        .notification .toggle-alert .btn i {
            margin: 0 8px 0 6px
        }

        .notification .toggle-alert .btn:hover i {
            -ms-transform: none;
            transform: none
        }

@media only screen and (min-width:700px) {
    .notification.toggle {
        padding-top: 0;
        padding-bottom: 0
    }

        .notification.toggle.closed {
            height: 10px
        }

    .notification .toggle-alert {
        width: auto;
        right: 15px;
        bottom: -30px
    }

        .notification .toggle-alert .btn {
            line-height: 1;
            padding: 12px 4px 12px 12px
        }
}

.notification .desc,
.notification .graphic {
    opacity: 1;
    transition: opacity 1s
}

.notification .graphic {
    min-width: 40px;
    min-height: 40px;
    padding: 0;
    text-align: center
}

    .notification .graphic i,
    .notification .graphic img {
        margin: 0 auto
    }

    .notification .graphic img {
        max-width: 60px
    }

.notification .no-border i,
.notification .with-border i {
    border: 2px solid #fff;
    border-radius: 50%
}

@media(-webkit-min-device-pixel-ratio:2), (min-resolution:192dpi) {
    .notification .no-border i,
    .notification .with-border i {
        border-width: 1px
    }
}

@media only screen and (min-width:700px) {
    .notification .graphic {
        display: table-cell;
        vertical-align: middle;
        padding: 0 30px 0 0
    }

        .notification .graphic img {
            max-width: 80px
        }

    .notification .no-border i,
    .notification .with-border i {
        -ms-transform: scale(1);
        transform: scale(1)
    }
}

.notification .no-border {
    border-width: 0
}

.notification .desc {
    border-top: 1px solid #fff;
    margin: 20px 0 0;
    padding-top: 15px
}

@media only screen and (min-width:700px) {
    .notification .desc {
        min-width: 495px;
        min-height: 86px;
        padding-top: 0;
        margin: 30px 0;
        padding-left: 30px;
        border-top: none;
        border-left: 1px solid #fff
    }

    .cookie-notice .notification .desc,
    .no-js .notification .desc {
        min-height: auto
    }

    .media-editorial-tpl .notification .desc {
        min-width: 425px
    }
}

.notification .desc p {
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 0
}

    .notification .desc p a {
        font-weight: 700
    }

.notification.no-devider {
    padding: 20px
}

    .notification.no-devider .graphic {
        min-height: auto
    }

        .notification.no-devider .graphic i {
            -ms-transform: scale(1);
            transform: scale(1)
        }

    .notification.no-devider .desc {
        min-height: auto;
        margin: 0;
        border: none
    }

@media only screen and (min-width:700px) {
    .notification.no-devider .graphic {
        padding: 0 0 0 20px
    }

    .notification.no-devider .desc {
        padding: 10px 20px;
        border: none
    }
}

.notification.with-heading {
    padding: 20px
}

    .notification.with-heading .desc {
        border: none;
        margin: 0
    }

        .notification.with-heading .desc h4 {
            display: block;
            margin-bottom: 20px;
            padding-bottom: 20px;
            border-bottom: 1px solid #424242;
            text-align: center
        }

@media only screen and (min-width:700px) {
    .notification.with-heading {
        padding: 30px 20px
    }

        .notification.with-heading .desc {
            border-left: 1px solid #424242
        }

            .notification.with-heading .desc h4 {
                padding-bottom: 0;
                border: none;
                text-align: left
            }

        .notification.with-heading .graphic {
            padding-left: 10px
        }
}

.notification.dark-copy .desc,
.notification.dark-copy .with-border i,
.notification.dark-copy .with-border img {
    border-color: #424242
}

.notification.white-copy .desc,
.notification.white-copy .desc h4 {
    color: #fff;
    border-color: #fff
}

.notification.yellow .desc,
.notification.yellow .desc h4,
.notification.yellow .with-border i,
.notification.yellow .with-border img {
    border-color: #ffc100
}

.notification.pink .desc,
.notification.pink .desc h4,
.notification.pink .with-border i,
.notification.pink .with-border img {
    border-color: #ea2a74
}

.notification.blue .graphic i,
.notification.blue .graphic img {
    background-color: #4682a1;
    border-color: transparent
}

.notification.blue .with-border i,
.notification.blue .with-border img {
    border-color: #4682a1;
    background-color: transparent
}

.notification.blue .desc,
.notification.blue .desc h4 {
    border-color: #4682a1
}

.notification.light-blue .desc,
.notification.light-blue .desc h4,
.notification.light-blue .with-border i,
.notification.light-blue .with-border img {
    border-color: #2ea9d3
}

.mimic-h1 i,
.mimic-h1 u,
h1 i,
h1 u,
h2 i,
h2 u {
    color: #1b6680
}

.search-item {
    margin-bottom: 25px
}

    .search-item h3,
    .search-item p {
        margin-bottom: 0
    }

        .search-item h3.document-type:before {
            display: block;
            float: left;
            width: auto;
            margin-right: 10px;
            content: "[" attr(title) "]";
            font-size: 10px;
            line-height: 24px;
            margin-bottom: 0;
            font-weight: 700;
            text-transform: uppercase;
            vertical-align: middle
        }

        .search-item h3.document-type.pdf:before {
            color: #e2574c
        }

        .search-item h3.document-type.world:before {
            color: navy
        }

        .search-item h3 a strong {
            color: #1b6680
        }

.accordion .dt a:hover,
.accordion .dt a:visited,
.accordion-open .dt a:hover,
.accordion-open .dt a:visited,
.breadcrumb ul li a:visited {
    color: #2ea9d3
}

.search-item p.tag a,
.search-item span {
    font-size: 14px
}

    .search-item p.tag a:after,
    .search-item span:after {
        display: inline-block;
        content: "-";
        margin: 0 5px
    }

    .search-item p.tag a:last-child:after,
    .search-item span:last-child:after {
        display: none
    }

.filter-mobi-fullscreen {
    position: fixed;
    background-color: #dfe2e4;
    z-index: -1;
    opacity: 0
}

@media only screen and (min-width:700px) {
    .filter-mobi-fullscreen {
        background-color: #c9d6dd
    }
}

@media only screen and (min-width:1000px) {
    .filter-mobi-fullscreen {
        position: relative;
        z-index: 1;
        opacity: 1
    }
}

.filter-mobi-fullscreen.fullscreen-takeover {
    height: 100%;
    width: 100%;
    display: block;
    top: 0;
    left: 0;
    z-index: 99;
    opacity: 1;
    transition: opacity .3s
}

    .filter-mobi-fullscreen.fullscreen-takeover .accordion,
    .filter-mobi-fullscreen.fullscreen-takeover .accordion-open {
        height: 100%;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch
    }

    .filter-mobi-fullscreen.fullscreen-takeover .filter-buttons {
        display: block
    }

.filter-bottom-buttons,
.filter-buttons,
.filter.bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px;
    background: #d0d8de;
    z-index: 3
}

    .filter-bottom-buttons a,
    .filter-bottom-buttons button,
    .filter-buttons a,
    .filter-buttons button,
    .filter.bottom a,
    .filter.bottom button {
        width: 48%;
        margin-bottom: 0
    }

        .filter-bottom-buttons a:first-child,
        .filter-bottom-buttons button:first-child,
        .filter-buttons a:first-child,
        .filter-buttons button:first-child,
        .filter.bottom a:first-child,
        .filter.bottom button:first-child {
            float: left
        }

        .filter-bottom-buttons a:last-child,
        .filter-bottom-buttons button:last-child,
        .filter-buttons a:last-child,
        .filter-buttons button:last-child,
        .filter.bottom a:last-child,
        .filter.bottom button:last-child {
            float: right
        }

.filter-buttons {
    display: none
}

.side-nav-filter .dl {
    padding-bottom: 100px
}

@media only screen and (min-width:1000px) {
    .filter-bottom-buttons a,
    .filter-bottom-buttons button,
    .filter-buttons a,
    .filter-buttons button,
    .filter.bottom a,
    .filter.bottom button {
        width: 100%
    }

        .filter-bottom-buttons a:first-child,
        .filter-bottom-buttons a:last-child,
        .filter-bottom-buttons button:first-child,
        .filter-bottom-buttons button:last-child,
        .filter-buttons a:first-child,
        .filter-buttons a:last-child,
        .filter-buttons button:first-child,
        .filter-buttons button:last-child,
        .filter.bottom a:first-child,
        .filter.bottom a:last-child,
        .filter.bottom button:first-child,
        .filter.bottom button:last-child {
            float: none
        }

    .side-nav-filter .dl {
        padding-bottom: 0
    }
}

.accordion .dt a,
.accordion-open .dt a {
    min-height: 50px;
    padding: 17px 40px 11px 20px;
    display: block;
    background: #fff;
    color: #2ea9d3;
    font-size: 16px;
    line-height: 16px;
    font-weight: 600;
    position: relative;
    cursor: pointer
}

    .accordion .dt a i,
    .accordion-open .dt a i {
        position: absolute;
        top: 50%;
        margin-top: -6px;
        right: 20px
    }

.accordion .dt,
.accordion-open .dt {
    min-height: 50px;
    font-size: 16px;
    line-height: 16px;
    margin-top: 10px;
    position: relative
}

    .accordion .dt:first-child,
    .accordion-open .dt:first-child {
        margin-top: 0
    }

    .accordion .dt.header,
    .accordion-open .dt.header {
        padding: 18px 20px;
        background: #005870;
        color: #fff;
        font-weight: 600;
        position: relative;
        display: none
    }

.file-type,
.link-with-check p a {
    font-weight: 700
}

.accordion .dd,
.accordion-open .dd {
    overflow: hidden;
    margin: 0;
    border-radius: 0 0 5px 5px
}

    .accordion .dd fieldset,
    .accordion-open .dd fieldset {
        padding: 0;
        margin: 0;
        border: none
    }

.side-nav-filter .filter-set {
    position: absolute;
    top: 50%;
    margin-top: -9px;
    right: 20px
}

.filter,
.show-filter {
    position: relative;
    display: block
}

.show-filter {
    margin-bottom: 0
}

.filter {
    width: 100%;
    transition: all .3s;
    background: #eef1f3;
    border-bottom: 1px solid #dfe2e4
}

    .filter:last-child {
        border-bottom: 0
    }

    .filter:hover {
        background: #2ea9d3
    }

    .filter.selectbox,
    .filter.selectbox:hover {
        background: #eef1f3
    }

    .filter:hover label {
        color: #fff
    }

    .filter.icon-left .label-text {
        padding-left: 50px
    }

    .filter.selectbox {
        padding: 20px 20px 15px;
        border-bottom: 1px solid #dfe2e4
    }

        .filter.selectbox .select {
            margin-bottom: 10px
        }

    .filter.bottom .btn {
        margin: 0
    }

@media only screen and (min-width:1000px) {
    .accordion .dt.header,
    .accordion-open .dt.header {
        display: block
    }

    .filter.bottom {
        position: static;
        padding: 10px;
        background-color: #fff;
        border-radius: 0 0 3px 3px
    }

        .filter.bottom .btn:first-child {
            display: none
        }
}

.filter .label-text {
    font-size: 16px;
    line-height: 24px;
    display: block;
    padding: 17px 47px 17px 20px;
    cursor: pointer;
    position: relative
}

    .filter .label-text img {
        position: absolute;
        width: 25px;
        left: 15px;
        top: 17px
    }

.clear-filter {
    overflow: hidden;
    background: #fff;
    padding: 10px;
    display: none
}

    .clear-filter .btn {
        width: 100%;
        margin-bottom: 0
    }

.pagination .pag-next i,
.pagination .pag-prev i {
    background-repeat: no-repeat;
    overflow: hidden;
    width: 12px;
    height: 12px
}

.pagination {
    position: relative;
    margin-bottom: 25px;
    text-align: center
}

    .pagination:after,
    .pagination:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:1000px) {
    .pagination,
    .pagination.calendar {
        margin-bottom: 40px
    }
}

.pagination .pag-prev {
    float: left;
    display: block
}

    .pagination .pag-prev i {
        background-position: -82px -192px;
        display: block
    }

.pagination .pag-next {
    float: right;
    display: block
}

    .pagination .pag-next i {
        background-position: -66px -192px;
        display: block
    }

.pagination .btn,
.pagination .pages,
.pagination .pages .page-numbers a {
    display: inline-block;
    vertical-align: middle
}

.pagination .btn {
    float: none
}

.pagination .pages {
    margin: 0 auto;
    font-size: 0;
    z-index: 1
}

    .pagination .pages .page-numbers a {
        padding: 2px 12px;
        font-size: 16px;
        border-right: 1px solid #c9d6dd
    }

.file-type:before,
table td,
table td i.spatial {
    vertical-align: top
}

.pagination .pages .page-numbers a.active,
.pagination .pages .page-numbers a.active:visited {
    color: #aaa;
    pointer-events: none
}

.pagination .pages .page-numbers a:last-child {
    border-right: none
}

.pagination.long {
    width: 100%;
    padding: 30px 40px 0
}

    .pagination.long:before {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        font-size: 14px;
        content: "Please scroll pagination to view all contents";
        text-align: center;
        line-height: 30px;
        margin-bottom: 0
    }

    .pagination.long .btn {
        position: absolute;
        bottom: 0
    }

        .pagination.long .btn.pag-prev {
            left: 0
        }

        .pagination.long .btn.pag-next {
            right: 0
        }

@media only screen and (min-width:1000px) {
    .pagination .pages .page-numbers a {
        font-size: 14px
    }

    .pagination.long {
        padding: 0
    }

        .pagination.long .btn {
            opacity: 0
        }

            .pagination.long .btn.pag-prev {
                left: -40px
            }

            .pagination.long .btn.pag-next {
                right: -40px
            }

        .pagination.long:hover .btn {
            opacity: 1
        }

            .pagination.long:hover .btn.pag-prev {
                left: 0
            }

            .pagination.long:hover .btn.pag-next {
                right: 0
            }

        .pagination.long:hover .pages .page-numbers a {
            min-width: 20px
        }

        .pagination.long:before {
            display: none
        }
}

.pagination.long .pages {
    width: inherit;
    height: 40px;
    padding-top: 4px;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

    .pagination.long .pages .page-numbers {
        white-space: nowrap
    }

.section-pull .list-figure-item.pinned-notice {
    margin-left: -20px;
    margin-right: -20px
}

.list-figure-item {
    margin-bottom: 25px
}

    .list-figure-item:after,
    .list-figure-item:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:1000px) {
    .pagination.long .pages .page-numbers a {
        min-width: 23px;
        padding: 0 5px
    }

    .section-pull .list-figure-item.pinned-notice {
        margin-left: -40px;
        margin-right: -40px
    }

    .list-figure-item {
        margin-bottom: 40px
    }
}

.list-figure-item figure {
    width: 100%;
    margin: 0 0 30px
}

@media only screen and (min-width:700px) {
    .list-figure-item figure {
        width: 140px;
        margin: 0 20px 0 0;
        float: left
    }
}

@media only screen and (min-width:1000px) {
    .list-figure-item figure a {
        display: block;
        width: 100%;
        min-height: 80px;
        height: auto;
        overflow: hidden
    }

        .list-figure-item figure a img {
            position: relative;
            transition: transform .45s ease
        }

        .list-figure-item figure a:hover img {
            -ms-transform: scale(1.1);
            transform: scale(1.1)
        }
}

.infographic:after,
.infographic:before,
.profile-detail:after,
.profile-detail:before {
    display: table;
    content: " "
}

.list-figure-item h4,
.list-figure-item p {
    margin-bottom: 10px
}

    .list-figure-item p:last-child {
        margin-bottom: 0
    }

.list-figure-item .recreation-icons,
.list-figure-item h4,
.list-figure-item p {
    padding-left: 0
}

@media only screen and (min-width:700px) {
    .list-figure-item .recreation-icons,
    .list-figure-item h4,
    .list-figure-item p {
        padding-left: 160px
    }
}

.list-figure-item.pinned-notice {
    background-color: #d9e2e7;
    padding: 30px 20px
}

.profile-detail {
    position: relative;
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .list-figure-item.pinned-notice {
        padding: 30px 40px
    }

    .profile-detail {
        margin-bottom: 40px
    }

    .section-pull .infographic {
        margin-left: -40px;
        margin-right: 0
    }
}

.profile-detail figure {
    width: 80px;
    height: 80px;
    background-color: #ececec;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 25px
}

    .profile-detail figure img {
        width: 100%
    }

.profile-detail .profile-info {
    padding: 0
}

@media only screen and (min-width:700px) {
    .profile-detail figure {
        margin-bottom: 0;
        float: left
    }

    .profile-detail .profile-info {
        padding-left: 120px
    }
}

.profile-detail p {
    margin-bottom: 20px
}

.profile-detail.with-map figure {
    width: 180px;
    height: 180px;
    border-radius: 0;
    margin-bottom: 75px
}

@media only screen and (min-width:700px) {
    .profile-detail.with-map figure {
        margin-bottom: 40px
    }

    .profile-detail.with-map .profile-info {
        padding-left: 220px
    }

        .profile-detail.with-map .profile-info p:last-child,
        .profile-detail.with-map .profile-info ul:last-child {
            margin-bottom: 0
        }
}

.profile-detail.with-map .btn {
    width: 180px;
    position: absolute;
    top: 180px;
    left: 0;
    border-radius: 0
}

.infographic {
    margin-bottom: 25px;
    padding: 30px 20px
}

@media only screen and (min-width:1000px) {
    .infographic {
        margin-bottom: 40px;
        padding: 30px 40px
    }
}

.infographic figure {
    display: none
}

@media only screen and (min-width:320px) {
    .infographic figure {
        width: 80px;
        display: block;
        float: left;
        margin: 0 20px 20px 0;
        border: 5px solid #fff;
        border-radius: 2px
    }
}

@media only screen and (min-width:320px) and (min-width:700px) {
    .infographic figure {
        width: 100px;
        margin: 0 40px 0 0
    }
}

.infographic figure img {
    display: block
}

.infographic figcaption span {
    display: block;
    font-size: 16px;
    line-height: 16px
}

.infographic p {
    margin-bottom: 25px
}

.infographic .btn {
    margin-bottom: 0
}

.link-with-check {
    margin-bottom: 25px;
    padding: 30px 20px
}

    .link-with-check:after,
    .link-with-check:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:1000px) {
    .section-pull .link-with-check {
        margin-left: -40px;
        margin-right: 0
    }

    .link-with-check {
        margin-bottom: 40px;
        padding: 30px 40px
    }
}

.link-with-check p {
    margin-bottom: 0;
    font-size: 16px
}

    .link-with-check p input {
        left: 0;
        bottom: 8px;
        margin: 0 0 0 3px;
        z-index: 1
    }

    .link-with-check p.error input {
        bottom: 37px
    }

    .link-with-check p .label {
        position: relative;
        font-style: normal
    }

        .link-with-check p .label.required:before {
            position: absolute;
            content: "*";
            display: inline-block;
            font-size: 14px;
            color: #e2574c;
            margin-left: -10px
        }

.link-with-check .btn {
    margin-bottom: 0
}

    .link-with-check .btn i {
        margin: 0 0 0 5px
    }

.contact ul li {
    padding: 0;
    margin: 0 0 20px
}

    .contact ul li:before {
        display: none
    }

.contact ul a {
    word-break: break-all
}

.contact p {
    margin-bottom: 20px
}

ul:after,
ul:before {
    content: " ";
    display: table
}

ul.list-1-2 {
    width: 100%;
    padding: 0;
    margin-bottom: 30px
}

@media only screen and (min-width:1000px) {
    ul.list-1-2 {
        margin-bottom: 40px
    }
}

ul.list-1-2 li {
    display: block;
    padding: 0;
    margin: 0 0 10px
}

    .list-icon li:before,
    ul.list-1-2 li:before {
        display: none
    }

    ul.list-1-2 li:last-child {
        margin-bottom: 0
    }

@media only screen and (min-width:700px) {
    ul.list-1-2 li {
        width: 50%;
        float: left;
        margin-bottom: 25px
    }

        ul.list-1-2 li:nth-child(even) {
            padding-left: 10px
        }

        ul.list-1-2 li:nth-child(odd) {
            padding-right: 10px
        }

            ul.list-1-2 li:nth-child(odd):last-child {
                clear: left
            }
}

.content-links:after,
.header-container:after,
.list-ul:after,
.print-section:after,
.prompt-content:after,
.search-form:after,
.search-inner .header:after,
.themes nav:after,
.useful-links:after,
blockquote:after {
    clear: both
}

.list-icon li {
    padding: 0;
    margin: 0 0 20px
}

.useful-links,
.useful-links ul {
    padding-top: 25px
}

.list-icon i,
blockquote p span {
    margin-right: 20px
}

.useful-links:after,
.useful-links:before {
    content: " ";
    display: table
}

.useful-links ul {
    position: relative
}

    .useful-links ul:before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 1px;
        display: block;
        background-color: #d1d8de
    }

    .useful-links ul li {
        margin-bottom: 10px
    }

@media only screen and (min-width:700px) {
    .useful-links {
        padding: 40px 0 25px
    }

        .useful-links ul {
            padding: 0 0 0 20px
        }

            .useful-links ul:before {
                width: 1px;
                height: 100%;
                left: -15px
            }
}

.list-ul:after,
.list-ul:before {
    content: " ";
    display: table
}

.list-ul ul:last-child,
.list-ul ul:nth-last-of-type(2) {
    width: 100%;
    display: inline-block
}

.list-ul ul:last-child {
    float: right
}

.list-ul ul li {
    padding: 0
}

    .list-ul ul li:before {
        display: none
    }

.list-links {
    margin-bottom: 20px
}

@media only screen and (min-width:700px) {
    .list-ul ul:last-child,
    .list-ul ul:nth-last-of-type(2) {
        width: 50%
    }

    .list-links {
        margin-bottom: 40px
    }
}

.list-links a {
    display: block;
    margin-bottom: 10px
}

.links-row,
.links-row a,
ol.bordered li > b {
    display: inline-block
}

.list-paragraph {
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .list-paragraph {
        margin-bottom: 40px
    }
}

.list-paragraph p:nth-child(odd) {
    margin-bottom: 5px
}

.list-paragraph p:last-child {
    margin-bottom: 0
}

.section-pull .lrg-icon-content,
.section-pull ol {
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .section-pull .lrg-icon-content,
    .section-pull ol {
        margin-bottom: 40px
    }
}

ol li .sml {
    padding-left: 50px
}

ol.bordered li {
    border-top: 1px solid #cdd2d4;
    padding-top: 40px;
    margin-bottom: 40px
}

    ol.bordered li:first-child {
        border-top: none;
        padding-top: 0
    }

    ol.bordered li > b {
        margin-bottom: 20px
    }

    ol.bordered li p {
        position: relative;
        margin-bottom: 10px
    }

    ol.bordered li:last-child {
        margin-bottom: 0
    }

.links-row {
    margin-left: -10px
}

    .links-row a {
        padding: 0 10px;
        border-right: 1px solid #c9d6dd;
        min-width: 39px;
        text-align: center;
        margin-top: 15px
    }

        .links-row a:last-child {
            border: none
        }

.file-type {
    position: absolute;
    left: 0;
    top: -2px;
    color: #424242
}

    .file-type:before {
        content: "[" attr(title) "]";
        font-size: 10px;
        background: 0 0
    }

    .file-type.type-pdf {
        color: #e2574c
    }

.lrg-icon-content {
    margin-bottom: 25px
}

@media only screen and (min-width:700px) {
    .lrg-icon-content {
        padding-left: 90px
    }

        .lrg-icon-content ol {
            min-height: 60px
        }
}

@media only screen and (min-width:1000px) {
    .lrg-icon-content {
        margin-bottom: 40px
    }
}

.lrg-icon-content li a {
    margin-bottom: 8px
}

.lrg-icon-content li .text-grey:nth-of-type(2) {
    margin-bottom: 25px
}

.lrg-icon-content li .text-grey:last-child,
.lrg-icon-content ol:last-child,
.lrg-icon-content.bordered ul {
    margin-bottom: 0
}

.lrg-icon-content ul .lrg-icon {
    padding-left: 0
}

.lrg-icon-content.bordered {
    padding: 20px;
    border: 1px solid #b4bfc7
}

@media only screen and (min-width:700px) {
    .lrg-icon-content.bordered {
        padding: 25px 25px 25px 118px
    }
}

.lrg-icon-content.media-type li,
.lrg-link {
    padding-left: 0
}

.content-accordion .lrg-icon-content.bordered {
    background: #fff
}

.lrg-icon {
    margin-bottom: 25px;
    position: relative
}

@media only screen and (min-width:1000px) {
    .lrg-icon {
        margin-bottom: 40px
    }
}

.lrg-icon:last-child {
    margin-bottom: 0
}

@media only screen and (min-width:700px) {
    .lrg-icon:before {
        text-align: center;
        border-radius: 50%;
        display: inline-block;
        position: absolute;
        top: 0;
        left: -90px
    }
}

.lrg-audio:before,
.lrg-check:before,
.lrg-docs:before,
.lrg-imgs:before,
.lrg-link:before,
.lrg-video:before,
.lrg-zip:before {
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 60px;
    height: 60px
}

.lrg-audio:before {
    background-position: -2px -2px;
    background-color: #ffc100
}

.lrg-check:before {
    background-position: -130px -2px;
    background-color: #bacf00
}

.lrg-docs:before {
    background-position: -66px -2px;
    background-color: #e2574c
}

.lrg-imgs:before {
    background-position: -2px -66px;
    background-color: #3db39e
}

.lrg-link:before {
    background-position: -66px -66px;
    background-color: #324d5b
}

.lrg-video:before {
    background-position: -130px -66px;
    background-color: #cb4e44
}

.lrg-zip:before {
    background-position: -2px -130px;
    background-color: #4682a1
}

.lrg-icon:before {
    display: none
}

@media only screen and (min-width:700px) {
    .lrg-icon:before {
        display: inline-block;
        content: ""
    }
}

.mobile-scroll {
    position: relative;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-top: 40px
}

    .mobile-scroll:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        content: "Please scroll table to view all contents";
        text-align: center;
        font-size: 14px;
        line-height: 40px;
        margin-bottom: 0
    }

blockquote cite,
table {
    font-size: 16px
}

@media only screen and (min-width:700px) {
    .mobile-scroll {
        padding-top: 0
    }

        .mobile-scroll:before {
            display: none
        }
}

.mobile-scroll table {
    min-width: 578px
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    margin-bottom: 25px
}

    table caption,
    table tr th {
        font-weight: 600;
        background: #c9d6dd;
        border-bottom: 1px solid #fff;
        padding: 10px
    }

    table th {
        border-right: 1px solid #fff
    }

        table td:last-child,
        table th:last-child {
            border-right: none
        }

    table td {
        border-right: 1px solid #c9d6dd;
        border-bottom: 1px solid #c9d6dd;
        padding: 10px 15px
    }

    table caption {
        text-align: left;
        text-indent: 10px;
        background-color: #bacad3;
        border-radius: 2px 2px 0 0
    }

@media only screen and (min-width:700px) {
    table caption,
    table tr th {
        padding: 15px
    }

    table caption {
        text-align: center;
        text-indent: 0
    }
}

table.col-3-equal td,
table.col-3-equal th {
    width: 33.33333%
}

table.col-3-equal td {
    padding: 10px 5px 10px 15px
}

blockquote {
    border-left: 1px solid #cdd2d4;
    padding-left: 20px;
    margin: 0 0 25px
}

    blockquote:after,
    blockquote:before {
        content: " ";
        display: table
    }

    blockquote p {
        margin: 0
    }

        blockquote p:first-child {
            float: left
        }

        blockquote p span {
            width: 60px;
            height: 60px;
            overflow: hidden;
            display: block
        }

@media only screen and (min-width:1000px) {
    table {
        margin-bottom: 40px
    }

    blockquote {
        padding: 0;
        border: none;
        display: table;
        margin-bottom: 40px
    }

        blockquote p {
            display: table-cell;
            vertical-align: top
        }

            blockquote p:last-child {
                padding-left: 25px;
                border-left: 1px solid #cdd2d4
            }

            blockquote p span {
                margin-right: 25px
            }
}

blockquote b {
    margin-top: 20px
}

blockquote b,
blockquote cite {
    display: block
}

.pull {
    margin-bottom: 25px;
    border: 1px solid #ea2a74;
    color: #ea2a74;
    font-size: 18px;
    line-height: 25px;
    padding: 15px
}


@media only screen and (min-width:700px) {
    blockquote p span {
        width: 80px;
        height: 80px
    }

    .pull {
        font-size: 26px;
        line-height: 34px;
        padding: 30px
    }
}

@media only screen and (min-width:1000px) {
    .pull {
        margin-bottom: 40px
    }
}

.pull.left,
.pull.right {
    width: 100%;
    margin-bottom: 25px
}

.pull.right {
    margin-left: 0
}

.pull.left {
    margin-right: 0
}

.content-links:after,
.content-links:before {
    content: " ";
    display: table
}

.content-links .col-1-2 {
    padding: 0
}

.content-accordion {
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .pull.left,
    .pull.right {
        width: 50%
    }

    .pull.right {
        margin-left: 25px
    }

    .pull.left {
        margin-right: 25px
    }

    .content-accordion {
        margin-bottom: 40px
    }
}

.content-accordion .content-trigger {
    margin-bottom: 20px
}

@media only screen and (min-width:1000px) {
    .content-accordion .content-trigger {
        margin-bottom: 30px
    }
}

.content-accordion .content-trigger:last-child {
    margin-bottom: 0
}

.content-accordion .content-toggle {
    display: none;
    background: #d9e2e7;
    padding: 0 20px 1px
}

@media only screen and (min-width:1000px) {
    .content-accordion .content-toggle {
        padding: 0 40px 1px
    }
}

.no-js .content-accordion .content-toggle {
    display: block
}

.content-accordion h3,
.content-accordion h4 {
    background: #d9e2e7;
    cursor: pointer;
    position: relative;
    margin-bottom: 0;
    padding: 15px 40px 15px 20px;
    border-radius: 2px
}

    .content-accordion h3 i,
    .content-accordion h4 i {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        right: 20px
    }

.subtopic-fullsize-img {
    margin-bottom: 25px;
    margin-left: 0;
    margin-right: 0
}

@media only screen and (min-width:1000px) {
    .content-accordion h3,
    .content-accordion h4 {
        padding-right: 60px
    }

        .content-accordion h3 i,
        .content-accordion h4 i {
            right: 40px
        }

    .subtopic-fullsize-img {
        margin-bottom: 40px;
        margin-left: -40px;
        margin-right: 0
    }

    .media-editorial-tpl .subtopic-fullsize-img {
        margin-left: 0
    }
}

@keyframes slide-next {
    0% {
        left: 100%;
        opacity: 0
    }

    100% {
        left: 0;
        opacity: 1
    }
}

@keyframes slide-prev {
    0% {
        left: -100%;
        opacity: 0
    }

    100% {
        left: 0;
        opacity: 1
    }
}

.section-pull .image-gallery-slider {
    margin-left: 0;
    margin-right: 0
}

.image-gallery-slider {
    min-height: 300px;
    height: auto;
    position: relative;
    background-color: #d9e2e7;
    margin-bottom: 25px
}

    .image-gallery-slider .image-gallery-content {
        background-color: #fff;
        position: relative;
        top: 0;
        height: 80%;
        width: 100%;
        overflow: hidden
    }

@media only screen and (min-width:700px) {
    .image-gallery-slider {
        margin-bottom: 25px
    }

        .image-gallery-slider .image-gallery-content {
            position: absolute
        }
}

.image-gallery-slider .image-gallery-content figure {
    position: absolute;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0
}

    .image-gallery-slider .image-gallery-content figure.slide-left {
        animation: slide-next .25s ease
    }

    .image-gallery-slider .image-gallery-content figure.slide-right {
        animation: slide-prev .25s ease
    }

    .image-gallery-slider .image-gallery-content figure .image-slide-text {
        display: none
    }

.image-gallery-slider .image-gallery-control .image-gallery-caption:after,
.share-page a,
.tags a {
    display: inline-block
}

.image-gallery-slider .image-gallery-control {
    background-color: #d9e2e7;
    position: relative;
    height: auto;
    width: 100%;
    z-index: 5
}

@media only screen and (min-width:700px) {
    .image-gallery-slider .image-gallery-control {
        position: absolute;
        bottom: 0
    }
}

.image-gallery-slider .image-gallery-control .image-gallery-caption {
    position: relative;
    width: 100%;
    padding: 15px 20px;
    min-height: 80px;
    height: auto;
    float: none
}

@media only screen and (min-width:700px) {
    .image-gallery-slider .image-gallery-control .image-gallery-caption {
        width: 75%
    }
}

@media only screen and (min-width:1000px) {
    .section-pull .image-gallery-slider {
        margin-left: -40px;
        margin-right: 0
    }

    .image-gallery-slider {
        margin-bottom: 40px
    }

        .image-gallery-slider .image-gallery-control .image-gallery-caption {
            padding: 15px 10px 15px 40px
        }
}

.image-gallery-slider .image-gallery-control .image-gallery-caption p {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 0;
    margin-top: 0
}

.image-gallery-slider .image-gallery-control .image-gallery-nav {
    height: 60px;
    width: 100%;
    position: relative;
    right: 0;
    bottom: 0;
    text-align: center
}

@media only screen and (min-width:700px) {
    .image-gallery-slider .image-gallery-control .image-gallery-nav {
        position: absolute;
        height: 100%;
        width: 25%;
        bottom: 0
    }

        .image-gallery-slider .image-gallery-control .image-gallery-nav:hover .nav-info {
            height: 30px;
            top: -30px;
            opacity: 1
        }
}

.image-gallery-slider .image-gallery-control .image-gallery-nav .nav-info {
    position: absolute;
    top: 0;
    padding: 5px 0;
    background-color: #e0e1e5;
    width: 100%;
    font-size: 14px;
    height: 30px;
    opacity: 0;
    transition: top .2s, background-color .2s
}

.image-gallery-slider .image-gallery-control .image-gallery-nav .slide-next,
.image-gallery-slider .image-gallery-control .image-gallery-nav .slide-prev {
    height: 100%;
    width: 50%;
    background-color: #2ea9d3;
    right: 0;
    position: absolute;
    cursor: pointer
}

    .image-gallery-slider .image-gallery-control .image-gallery-nav .slide-next:hover,
    .image-gallery-slider .image-gallery-control .image-gallery-nav .slide-prev:hover {
        background-color: #2488aa
    }

    .image-gallery-slider .image-gallery-control .image-gallery-nav .slide-next i,
    .image-gallery-slider .image-gallery-control .image-gallery-nav .slide-prev i {
        position: absolute;
        top: 50%;
        left: 50%;
        margin: -6px 0 0 -6px
    }

.image-gallery-slider .image-gallery-control .image-gallery-nav .slide-prev {
    right: auto;
    left: 0
}

.figure-credits {
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .figure-credits {
        margin-bottom: 40px
    }
}

.figure-credits figcaption {
    background: #d9e2e7;
    padding: 15px 20px
}

    .figure-credits figcaption p {
        font-size: 14px;
        line-height: 22px;
        margin-bottom: 0
    }

.figure-credits.left,
.figure-credits.right {
    width: 100%;
    margin-bottom: 25px
}

@media only screen and (min-width:700px) {
    .figure-credits.left,
    .figure-credits.right {
        width: 50%
    }
}

.figure-credits.left {
    margin-right: 40px
}

.figure-credits.right {
    margin-left: 40px
}

.info-block h3 {
    margin-bottom: 0
}

    .info-block h3 + p {
        font-size: 16px
    }

.responsive-media {
    position: relative;
    padding-bottom: 56.25%;
    margin-bottom: 0;
    overflow: hidden;
    z-index: 1
}

    .responsive-media embed,
    .responsive-media iframe,
    .responsive-media object {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

.subtopic-tpl .responsive-media {
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .subtopic-tpl .responsive-media {
        margin-bottom: 40px
    }
}

.tags {
    margin-bottom: 25px
}

@media only screen and (min-width:1000px) {
    .tags {
        margin-bottom: 40px
    }
}

.tags a {
    font-size: 12px;
    line-height: 12px;
    color: #424242;
    background: #dcdcdc;
    border-radius: 25px;
    padding: 9px 15px 7px;
    margin: 0 10px 10px 0
}

    .tags a:last-child {
        margin-right: 0
    }

    .tags a:hover {
        color: #fff;
        background: #2ea9d3
    }

    .tags a:visited {
        color: #424242
    }

        .tags a:visited:hover {
            color: #fff
        }

.share-page {
    padding: 20px;
    margin-bottom: 0;
    text-align: center;
    background: #fff;
    border-top: 1px solid #c9d6dd
}

    .share-page p {
        margin-bottom: 15px
    }

    .share-page .links {
        float: none
    }

@media only screen and (min-width:700px) {
    .share-page {
        padding: 30px;
        text-align: left
    }

        .share-page p {
            margin-bottom: 0;
            display: inline-block
        }

        .share-page .links {
            float: right
        }
}

.share-page a {
    width: 30px;
    height: 30px;
    background: #fff;
    margin-right: 10px
}

    .share-page a:last-child {
        margin-right: 0
    }

    .share-page a i {
        border-radius: 50%
    }

        .share-page a i.share-facebook {
            background-color: #3b5a9a
        }

        .share-page a i.share-twitter {
            background-color: #5b90cc
        }

        .share-page a i.share-link {
            background-color: #de392e
        }

    .share-page a:hover i {
        background-color: #4c5053
    }

.share-page.share-sidenav {
    padding: 10px;
    margin-top: 10px;
    margin-bottom: 0;
    text-align: center
}

.hero,
.hero.home {
    padding: 0
}

.sticky-assistant:only-child .share-page.share-sidenav {
    margin-top: 0
}

header {
    -webkit-backface-visibility: hidden;
    position: relative;
    width: 100%;
    background-color: #fff;
    z-index: 4
}

    header.homepage-header {
        position: relative;
        top: 0;
        left: 0;
        margin: auto;
        transition: top .25s .2s
    }

@media only screen and (min-width:1000px) {
    header.homepage-header {
        position: absolute;
        background-color: rgba(255, 255, 255, .9)
    }

    .homepage header.homepage-header {
        top: 100px
    }
}

.header-container,
.hero {
    position: relative
}

.hero {
    width: 100%;
    height: auto;
    overflow: hidden;
    background-color: #fff
}

@media only screen and (min-width:700px) {
    .hero.home {
        padding: 0 0 40px
    }
}

@media only screen and (min-width:1000px) {
    .hero.home {
        padding: 80px 0
    }
}

.hero.themes {
    padding: 0
}

@media only screen and (min-width:320px) {
    .hero.themes {
        /*padding: 150px 0 0;*/
        padding: 0
    }
}

@media only screen and (min-width:700px) {
    .hero.themes {
        padding: 0
    }
}

.hero.global {
    padding: 0
}

@media only screen and (min-width:320px) {
    .hero.global {
        padding: 150px 0 0
    }
}

@media only screen and (min-width:700px) {
    .hero.global {
        min-height: 250px;
        padding: 0
    }
}

.hero.solid {
    padding-bottom: 5px;
    background-color: #543347
}

@media only screen and (min-width:700px) {
    .hero.solid {
        padding-bottom: 10px
    }
}

.hero.solid-default {
    padding-bottom: 5px;
    background-color: #6391a9
}

.header-container {
    z-index: 5
}

    .header-container:after,
    .header-container:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:700px) {
    .hero.solid-default {
        padding-bottom: 10px
    }

    .header-container {
        max-width: 1000px;
        margin: 0 auto
    }
}

.header-container .header-logo {
    float: left;
    display: block;
    margin: 0
}

    .header-container .header-logo a {
        float: left
    }

        .header-container .header-logo a .site-logo {
            display: block;
            width: auto;
            height: 50px;
            margin: 10px;
            float: none
        }

@media only screen and (min-width:700px) {
    .header-container .header-logo a .site-logo {
        height: 60px;
        margin: 10px 20px
    }
}

.help-page {
    text-align: center
}

    .help-page a {
        color: #fff;
        display: inline-block;
        padding: 20px;
        font-size: 16px
    }

@media only screen and (min-width:1000px) {
    .header-container .header-logo a .site-logo {
        height: 70px;
        margin: 10px 25px
    }

    .help-page a {
        padding: 21px 20px;
        font-size: inherit
    }
}

.help-page a:visited {
    color: #e6e6e6
}



.calendar-entries .heading .social-link:hover a:after,
.social-link:hover .calendar-entries .heading a:after,
.social-link:hover .icon:after,
.social-link:hover .ui-selectmenu-button span.ui-icon:after,
.social-link:hover fieldset p.select:after,
.ui-selectmenu-button .social-link:hover span.ui-icon:after,
fieldset .social-link:hover p.select:after {
    display: block
}


.social-link {
    width: 100%
}

    .breadcrumb ul .social-link:hover li:before,
    .calendar tr:first-child td table tr td:first-child .social-link:hover a:before,
    .calendar tr:first-child td table tr td:last-child .social-link:hover a:before,
    .calendar-entries .heading .social-link:hover a:after,
    .social-link:hover .breadcrumb ul li:before,
    .social-link:hover .calendar tr:first-child td table tr td:first-child a:before,
    .social-link:hover .calendar tr:first-child td table tr td:last-child a:before,
    .social-link:hover .calendar-entries .heading a:after,
    .social-link:hover .icon,
    .social-link:hover .icon:after,
    .social-link:hover .ui-selectmenu-button span.ui-icon,
    .social-link:hover fieldset input[type=checkbox]:checked + label:before,
    .social-link:hover fieldset input[type=radio]:checked + label:before,
    .social-link:hover fieldset p.select:after,
    .ui-selectmenu-button .social-link:hover span.ui-icon,
    fieldset .social-link:hover input[type=checkbox]:checked + label:before,
    fieldset .social-link:hover input[type=radio]:checked + label:before,
    fieldset .social-link:hover p.select:after {
        background-color: #2d2f31
    }

    .breadcrumb ul .social-link li:before,
    .calendar tr:first-child td table tr td:first-child .social-link a:before,
    .calendar tr:first-child td table tr td:last-child .social-link a:before,
    .calendar-entries .heading .social-link a:after,
    .social-link .breadcrumb ul li:before,
    .social-link .calendar tr:first-child td table tr td:first-child a:before,
    .social-link .calendar tr:first-child td table tr td:last-child a:before,
    .social-link .calendar-entries .heading a:after,
    .social-link .icon,
    .social-link .icon:after,
    .social-link .ui-selectmenu-button span.ui-icon,
    .social-link fieldset input[type=checkbox]:checked + label:before,
    .social-link fieldset input[type=radio]:checked + label:before,
    .social-link fieldset p.select:after,
    .ui-selectmenu-button .social-link span.ui-icon,
    fieldset .social-link input[type=checkbox]:checked + label:before,
    fieldset .social-link input[type=radio]:checked + label:before,
    fieldset .social-link p.select:after {
        background-color: #9c9ea0;
        border-radius: 50%;
        display: inline-block;
        margin-right: 10px;
        position: relative;
        vertical-align: middle
    }

        .calendar-entries .heading .social-link a:after,
        .social-link .calendar-entries .heading a:after,
        .social-link .icon:after,
        .social-link .ui-selectmenu-button span.ui-icon:after,
        .social-link fieldset p.select:after,
        .ui-selectmenu-button .social-link span.ui-icon:after,
        fieldset .social-link p.select:after {
            content: "";
            position: absolute;
            display: none
        }


.breadcrumb {
    position: relative;
    z-index: 2;
    background: 0 0;
    border-top: 1px solid #cdd2d4
}

    .breadcrumb .toggle-breadcrumb {
        position: absolute;
        top: 9px;
        right: 10px;
        display: block;
        min-width: 60px;
        padding: 5px 0;
        border: 1px solid #2ea9d3;
        border-radius: 2px;
        font-size: 12px;
        line-height: 20px;
        margin-bottom: 0;
        text-align: center;
        background-color: #fff;
        z-index: 10
    }

    .breadcrumb ul li,
    .breadcrumb ul li a {
        position: relative;
        vertical-align: middle
    }

    .breadcrumb .toggle-breadcrumb:hover {
        text-decoration: none
    }

    .breadcrumb .toggle-breadcrumb.disabled {
        display: none
    }

@media only screen and (min-width:700px) {
    .breadcrumb .toggle-breadcrumb {
        display: none
    }
}

.breadcrumb ul {
    min-height: 50px;
    padding-top: 0;
    padding-bottom: 0;
    margin: 0 auto
}

    .breadcrumb ul li {
        float: left;
        display: block;
        width: 100%;
        height: 0;
        margin: 0;
        line-height: 44px;
        padding: 0 40px 0 20px;
        border-top: none;
        overflow: hidden;
        transition: height .35s ease
    }

@media only screen and (min-width:700px) {
    .breadcrumb ul li {
        display: inline-block;
        width: auto;
        height: auto;
        padding: 0 0 0 30px;
        border-top: none
    }
}

.breadcrumb ul li:before {
    content: "";
    top: 50%;
    left: 0;
    margin-top: -6px;
    background-position: -242px -92px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 10px;
    height: 10px;
    opacity: 0
}

.breadcrumb ul li:first-child {
    height: 50px
}

    .breadcrumb ul li:first-child:before {
        opacity: 1
    }

@media only screen and (min-width:700px) {
    .breadcrumb ul li:before {
        left: 10px;
        margin-top: -3px;
        opacity: 1
    }

    .breadcrumb ul li:first-child {
        padding: 0
    }

        .breadcrumb ul li:first-child a:after,
        .breadcrumb ul li:first-child:before {
            display: none
        }
}

.breadcrumb ul li:last-of-type {
    display: none
}

.breadcrumb ul li a,
.breadcrumb ul li:first-of-type {
    display: inline-block
}

.breadcrumb ul li a {
    padding: 5px 0;
    font-size: 16px;
    line-height: 18px;
    margin-bottom: 0
}

    .breadcrumb ul li a:after {
        display: none
    }

@media only screen and (min-width:700px) {
    .breadcrumb ul li a {
        padding: 0;
        font-size: 14px;
        line-height: 18px;
        margin-bottom: 0;
        vertical-align: middle
    }

        .breadcrumb ul li a:after {
            content: "";
            background: #2ea9d3;
            display: block;
            height: 1px;
            width: 100%;
            position: absolute;
            bottom: 0;
            left: 0;
            transition: width .3s ease, background .3s ease, left .3s ease
        }
}

.breadcrumb ul li a:hover {
    text-decoration: none
}

    .breadcrumb ul li a:hover:after {
        width: 0;
        left: 50%;
        background: 0 0;
        opacity: .5
    }

.breadcrumb ul li a.current {
    cursor: default;
    color: #7c8080
}

    .breadcrumb ul li a.current:after {
        display: none
    }

.breadcrumb.active ul li {
    height: 50px;
    border-top: 1px solid #ededed
}

    .breadcrumb.active ul li:first-child {
        border-top: none
    }

    .breadcrumb.active ul li:before {
        opacity: 1
    }

.index-search-wrapper {
    overflow: hidden;
    background: 0 0
}

@media only screen and (min-width:320px) {
    .index-search-wrapper {
        min-height: 180px
    }
}

@media only screen and (min-width:700px) {
    .breadcrumb.active ul li {
        border-top: none
    }

    .index-search-wrapper {
        min-height: 220px;
        padding: 0
    }
}

.header-search-wrapper {
    min-height: 50px
}

    .header-search-wrapper:after,
    .header-search-wrapper:before {
        content: " ";
        display: table
    }

    .header-search-wrapper:after {
        clear: both
    }

    .header-search-wrapper:before,
    .index-search-wrapper:before {
        content: "";
        position: fixed;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, .7);
        top: 0;
        left: 0;
        margin: auto;
        z-index: 0;
        transition: all .3s ease;
        display: none
    }

    .header-search-wrapper.trigger-touch,
    .index-search-wrapper.trigger-touch {
        cursor: pointer
    }

.search-inner {
    position: relative
}

    .search-inner .header {
        float: right
    }

        .search-inner .header:after,
        .search-inner .header:before {
            content: " ";
            display: table
        }

@media only screen and (min-width:320px) {
    .search-inner .header {
        margin-top: 15px
    }
}

.search-inner .close-btn {
    width: 30px;
    height: 30px;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    cursor: pointer;
    z-index: 5;
    transition: background-color .1s ease;
    right: 15px;
    display: none;
    text-align: center
}

    .search-inner .close-btn i {
        margin-top: -1px
    }

@media only screen and (min-width:700px) {
    .search-inner .close-btn {
        right: 40px;
        width: 40px;
        height: 40px
    }

        .search-inner .close-btn i {
            margin-top: 9px
        }
}

.search-inner .close-btn:hover {
    background-color: #2488aa
}

    .search-inner .close-btn:hover i {
        background-position: -199px -140px;
        background-repeat: no-repeat;
        overflow: hidden;
        width: 16px;
        height: 16px;
        display: inline-block
    }

.search {
    width: 100%;
    float: none
}

.search-form {
    position: relative;
    background-color: rgba(255, 255, 255, .9);
    border-radius: 2px;
    overflow: hidden
}

    .search-form:after,
    .search-form:before {
        content: " ";
        display: table
    }

    .search-form .global-label {
        z-index: 4
    }

        .search-form .global-label:hover {
            cursor: text
        }

    .search-form .clear-text-btn,
    .search-form button[type=submit],
    .search-form input[type=text] {
        z-index: 5
    }

    .search-form input[type=text] {
        border: none;
        width: 100%;
        height: 100%;
        padding: 0;
        background-color: transparent;
        outline: 0;
        box-sizing: border-box;
        backface-visibility: hidden
    }

        .search-form input[type=text]::-ms-clear {
            display: none
        }

    .search-form button[type=submit] {
        border: none;
        padding: 0;
        background-color: #2ea9d3;
        outline: 0;
        transition: background-color .2s ease;
        position: absolute;
        right: 0;
        top: 0;
        border-radius: 0 2px 2px 0
    }

        .search-form button[type=submit]:before {
            content: "";
            width: 1px;
            height: 0;
            position: absolute;
            left: -1px;
            top: 0;
            bottom: 0;
            margin: auto;
            background-color: #fff;
            transition: height .1s ease
        }

        .search-form button[type=submit]:hover {
            background-color: #2488aa
        }

        .search-form button[type=submit].in-focus:before {
            height: 0
        }

        .search-form button[type=submit] i {
            margin: auto
        }

    .search-form .clear-text-btn {
        position: absolute;
        top: 0;
        height: 100%;
        display: none;
        cursor: pointer;
        color: rgba(255, 255, 255, .7);
        text-align: center
    }

        .search-form .clear-text-btn i {
            right: 15px;
            position: absolute;
            top: 47%;
            -ms-transform: translateY(-50%);
            transform: translateY(-50%)
        }

        .search-form .clear-text-btn span {
            position: relative;
            font-size: 14px;
            display: none
        }

        .search-form .clear-text-btn.color-change {
            color: #424242
        }

            .search-form .clear-text-btn.color-change i {
                background-position: -132px -168px;
                background-repeat: no-repeat;
                overflow: hidden;
                display: block;
                width: 16px;
                height: 16px
            }

.index .search {
    height: 40px;
    margin: 20px auto;
    position: relative
}

@media only screen and (min-width:320px) {
    .index .search {
        height: 60px;
        margin: 60px auto
    }
}

.index .search .global-label {
    line-height: 40px;
    padding-left: 20px;
    padding-right: 140px
}

@media only screen and (min-width:320px) {
    .index .search .global-label {
        line-height: 60px
    }
}

@media only screen and (min-width:700px) {
    .index .search {
        height: 80px;
        margin: 100px auto
    }

        .index .search .global-label {
            line-height: 80px;
            padding-left: 30px
        }
}

.index .search input[type=text] {
    height: 40px;
    padding-left: 20px;
    padding-right: 140px
}

@media only screen and (min-width:320px) {
    .index .search input[type=text] {
        height: 60px
    }
}

@media only screen and (min-width:700px) {
    .index .search input[type=text] {
        height: 80px;
        padding-left: 30px
    }
}

.index .search button[type=submit] {
    width: 40px;
    height: 40px
}

@media only screen and (min-width:320px) {
    .index .search button[type=submit] {
        width: 60px;
        height: 60px
    }
}

@media only screen and (min-width:700px) {
    .index .search button[type=submit] {
        width: 80px;
        height: 80px
    }
}

.index .search .clear-text-btn {
    width: 60px;
    right: 40px
}

@media only screen and (min-width:320px) {
    .index .search .clear-text-btn {
        right: 60px
    }
}

.index .search .clear-text-btn span {
    line-height: 40px
}

@media only screen and (min-width:320px) {
    .index .search .clear-text-btn span {
        line-height: 60px
    }
}

@media only screen and (min-width:700px) {
    .index .search .clear-text-btn {
        right: 80px;
        padding: 0
    }

        .index .search .clear-text-btn span {
            line-height: 60px
        }
}

.header .search .clear-text-btn span,
.header .search .global-label,
.header .search input[type=text] {
    line-height: 50px
}

.header .search {
    display: none
}

    .header .search .global-label {
        padding-right: 100px
    }

    .header .search input[type=text] {
        min-height: 50px;
        border: 1px solid #b4bfc7;
        border-right: 0;
        padding-left: 20px;
        padding-right: 100px
    }

        .header .search input[type=text]:hover {
            border-color: #2ea9d3
        }

    .header .search button[type=submit] {
        width: 50px
    }

    .header .search button[type=submit],
    .header .search input[type=text] {
        height: 50px
    }

    .header .search .clear-text-btn {
        width: 50px;
        right: 50px
    }

.mobile-search-btn {
    position: absolute;
    top: 16px;
    right: 10px;
    min-width: 40px;
    height: 40px;
    margin: auto;
    padding: 13px;
    text-indent: -99em;
    overflow: hidden
}

    .mobile-search-btn i {
        float: right;
        margin: -2px -2px 0 0
    }

@media only screen and (min-width:320px) {
    .mobile-search-btn {
        top: 4px
    }
}

@media only screen and (min-width:700px) {
    .mobile-search-btn {
        right: 15px;
        width: 50px;
        height: 50px;
        line-height: 24px;
        text-align: center
    }

        .mobile-search-btn i {
            margin: 2px 1px 0 0
        }
}

@media only screen and (min-width:1000px) {
    .mobile-search-btn {
        right: 20px
    }
}

.dock .header-search-wrapper:before,
.dock .index-search-wrapper:before {
    display: block;
    z-index: 4
}

.dock .header {
    float: none;
    margin-top: 0
}

.dock .search-inner {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: initial;
    margin: auto;
    z-index: 5;
    background-color: rgba(46, 169, 211, .9);
    padding: 0
}

@media only screen and (min-width:700px) {
    .dock .search-inner {
        padding: 40px 0
    }
}

.dock .search-inner .close-btn {
    display: block
}

.dock .search {
    display: block;
    height: auto;
    margin: auto
}

.dock .header .search-form,
.dock .index .search-form {
    background-color: transparent;
    overflow: visible;
    border: none
}

.dock .header .global-label,
.dock .index .global-label {
    line-height: 70px;
    font-size: 18px;
    color: #fff;
    padding-left: 0
}

@media only screen and (min-width:700px) {
    .dock .header .global-label,
    .dock .index .global-label {
        font-size: 26px;
        padding-left: 20px;
        padding-right: 120px
    }
}

.dock .header input[type=text],
.dock .index input[type=text] {
    background-color: transparent;
    border: none;
    height: 70px;
    padding-left: 0;
    padding-right: 85px;
    font-size: 18px;
    color: #fff
}

@media only screen and (min-width:700px) {
    .dock .header input[type=text],
    .dock .index input[type=text] {
        font-size: 26px;
        padding-left: 20px;
        padding-right: 150px
    }
}

.dock .header button[type=submit],
.dock .index button[type=submit] {
    right: 0;
    width: 40px;
    height: 70px;
    padding: 0;
    background-color: transparent;
    outline: 0;
    border: none
}

    .dock .header button[type=submit].in-focus:before,
    .dock .index button[type=submit].in-focus:before {
        height: 60%
    }

@media only screen and (min-width:700px) {
    .dock .header button[type=submit],
    .dock .index button[type=submit] {
        width: 60px
    }

        .dock .header button[type=submit].in-focus:before,
        .dock .index button[type=submit].in-focus:before {
            height: 80%
        }
}

.dock .header .clear-text-btn,
.dock .index .clear-text-btn {
    width: 40px;
    right: 40px
}

@media only screen and (min-width:700px) {
    .dock .header .clear-text-btn,
    .dock .index .clear-text-btn {
        width: 60px;
        right: 65px
    }
}

.dock .header .clear-text-btn.color-change,
.dock .index .clear-text-btn.color-change {
    color: #fff
}

    .dock .header .clear-text-btn.color-change i,
    .dock .index .clear-text-btn.color-change i {
        background-position: -199px -140px;
        background-repeat: no-repeat;
        overflow: hidden;
        display: block;
        width: 16px;
        height: 16px
    }

.dock .header .clear-text-btn span,
.dock .index .clear-text-btn span {
    right: 30px;
    display: none
}

@media only screen and (min-width:700px) {
    .dock .header .clear-text-btn span,
    .dock .index .clear-text-btn span {
        display: block;
        line-height: 70px
    }
}

.dock .mobile-search-btn {
    display: none
}

/*Modified for non-dock search box*/

/*.searchable-items {
    width: 100%;
    width: calc(100% - 25px);
    margin: auto;
    background: #fff;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
    z-index: 2;
    display: none
}

@media only screen and (min-width:700px) {
    .searchable-items {
        top: 100px
    }
}
*/

.searchable-items {
    margin: auto;
    left: 0;
    right: 0;
    z-index: 2;
    display: none
}

    .searchable-items ul {
        margin: 0;
        padding: 20px;
        max-height: 400px;
        overflow-y: auto;
        width: auto !important;
        max-width: 100%;
        top: auto !important;
        left: auto !important
    }

    .searchable-items li {
        position: relative;
        font-size: 16px;
        margin-bottom: 0;
        color: #2ea9d3;
        font-weight: 600;
        cursor: pointer;
        line-height: 50px
    }

        .searchable-items li:before {
            content: "";
            background: #ededed;
            position: absolute;
            height: 1px;
            width: 100%;
            left: 0;
            bottom: 0;
            margin: auto
        }

        .searchable-items li.ui-state-focus {
            background-color: #ededed
        }

            .searchable-items li.ui-state-focus:before,
            .searchable-items li:last-child:before {
                background: 0 0
            }

.contextual-search {
    padding-bottom: 25px;
    display: block
}

@media only screen and (min-width:1000px) {
    .contextual-search {
        padding-bottom: 40px
    }
}

.contextual-search .search-form {
    position: relative;
    border-radius: 2px;
    overflow: hidden
}

    .contextual-search .search-form fieldset,
    .contextual-search .search-form p {
        margin: 0;
        padding: 0
    }

    .contextual-search .search-form .global-label {
        width: 100%;
        padding-right: 60px
    }

        .contextual-search .search-form .global-label:hover {
            cursor: text
        }

    .contextual-search .search-form .global-label,
    .contextual-search .search-form input[type=text] {
        height: 40px;
        line-height: 40px
    }

    .contextual-search .search-form input[type=text] {
        float: left;
        width: 100%;
        border: 1px solid #2ea9d3 !important;
        border-right: 0;
        padding-left: 20px;
        padding-right: 60px;
        font-size: 16px;
        transition: background .2s ease
    }

@media only screen and (min-width:700px) {
    .contextual-search .search-form .global-label,
    .contextual-search .search-form input[type=text] {
        height: 50px;
        line-height: 50px
    }

    .contextual-search .search-form input[type=text] {
        padding-right: 120px
    }
}

.contextual-search .search-form button[type=submit] {
    position: absolute;
    top: auto;
    right: 0;
    width: 40px;
    height: 40px;
    border: none;
    padding: 0;
    background-color: #2ea9d3;
    outline: 0;
    transition: background-color .2s ease;
    z-index: 1;
    margin-right: auto
}

@media only screen and (min-width:700px) {
    .contextual-search .search-form button[type=submit] {
        position: absolute;
        top: auto;
        right: 0;
        width: 50px;
        height: 50px;
        border: none;
        padding: 0;
        background-color: #2ea9d3;
        outline: 0;
        transition: background-color .2s ease;
        z-index: 1;
        margin-right: auto
    }
}

.contextual-search .search-form button[type=submit]:hover {
    background-color: #2488aa
}

.contextual-search .search-form button[type=submit]:before {
    content: "";
    width: 1px;
    height: 0;
    position: absolute;
    left: -1px;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #fff;
    transition: height .2s ease
}

.contextual-search .search-form button[type=submit].in-focus:before {
    height: 0
}

.contextual-search .search-form button[type=submit] i {
    background-position: -50px -168px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 20px;
    height: 20px;
    margin: auto
}

.contextual-search .search-form .clear-text-btn,
.contextual-search .search-form .global-label,
.contextual-search .search-form input[type=text] {
    z-index: 0
}

.contextual-search .search-form .clear-text-btn {
    right: 50px
}

    .contextual-search .search-form .clear-text-btn span {
        display: none
    }

.highlight-search .search-form .global-label {
    color: #fff
}

.highlight-search .search-form input[type=text] {
    background-color: #2ea9d3;
    border-color: #2ea9d3;
    color: #fff
}

.print-section,
.themes {
    background-color: #d9e2e7
}

.highlight-search .search-form input[type=text]::-webkit-input-placeholder {
    color: #fff
}

.highlight-search .search-form input[type=text]::-moz-placeholder {
    color: #fff
}

.highlight-search .search-form input[type=text]:-ms-input-placeholder {
    color: #fff
}

.highlight-search .search-form input[type=text]::placeholder {
    color: #fff
}

.highlight-search .search-form button[type=submit].in-focus:before {
    height: 60%
}

@media only screen and (min-width:700px) {
    .contextual-search .search-form .clear-text-btn {
        right: 70px
    }

    .highlight-search .search-form button[type=submit].in-focus:before {
        height: 80%
    }
}

.highlight-search .search-form .clear-text-btn i {
    background-position: -199px -140px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    width: 16px;
    height: 16px
}

.print-section {
    padding: 30px 0;
    text-align: center;
    position: relative;
    width: 100%
}

    .print-section:after,
    .print-section:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:700px) {
    .print-section {
        text-align: left;
        display: table
    }
}

@media only screen and (min-width:1000px) {
    .print-section {
        padding: 30px 0
    }

        .print-section:after {
            background-color: #d9e2e7;
            width: 100%;
            height: 100%;
            display: block;
            position: absolute;
            right: -100%;
            top: 0
        }
}

.print-section.subtopic-print {
    padding-left: 20px;
    padding-right: 20px
}

@media only screen and (min-width:1000px) {
    .print-section.subtopic-print {
        padding-left: 40px;
        padding-right: 40px
    }
}

.boxsizing .print-section {
    width: 100%
}

.print-section p {
    margin-bottom: 20px
}

@media only screen and (min-width:700px) {
    .print-section p {
        display: table-cell;
        vertical-align: middle;
        margin-bottom: 0
    }
}

.print-section a {
    float: right
}

.error-title {
    margin: 20px auto 0;
    padding: 0 20px 20px;
    color: #fff;
    border-bottom: 1px solid #fff
}

@media only screen and (min-width:700px) {
    .error-title {
        margin: 40px auto;
        padding: 0 40px;
        border-bottom: none;
        border-right: 1px solid #fff
    }
}

.error-title h1 {
    color: #fff;
    font-size: 16px;
    line-height: 16px;
    margin-bottom: 10px
}

@media only screen and (min-width:700px) {
    .error-title h1 {
        font-size: 16px;
        line-height: 16px;
        margin-bottom: 0
    }
}

.error-title p {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 0
}

.error-title .headings {
    position: relative;
    width: 100%;
    height: 50px;
    overflow: hidden
}

@media only screen and (min-width:700px) {
    .error-title p {
        font-size: 24px;
        line-height: 35px;
        margin-bottom: 0
    }

    .error-title .headings {
        height: 80px
    }
}

@media only screen and (min-width:1000px) {
    .error-title .headings {
        height: 110px
    }
}

.error-title .headings .slider {
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%
}

    .error-title .headings .slider span {
        display: block;
        font-size: 40px;
        line-height: 50px;
        margin-bottom: 0;
        font-weight: 700;
        color: #F0c75e;
        white-space: nowrap
    }

@media only screen and (min-width:700px) {
    .error-title .headings .slider span {
        font-size: 60px;
        line-height: 80px;
        margin-bottom: 0
    }

    .prompt-image {
        float: left;
        padding: 40px 0 0
    }
}

@media only screen and (min-width:1000px) {
    .error-title .headings .slider span {
        font-size: 90px;
        line-height: 110px;
        margin-bottom: 0
    }

    .prompt-image {
        padding: 0
    }
}

.prompt-image i {
    display: none
}

.prompt-image img {
    max-width: 50%;
    width: 100%;
    height: auto;
    margin: 0 auto
}

.prompt-content {
    padding: 20px 0 0
}

    .prompt-content:after,
    .prompt-content:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:700px) {
    .prompt-image img {
        max-width: 80%
    }

    .prompt-content {
        padding: 40px 0 0
    }
}

.redirect-title {
    margin: 40px auto 0;
    padding: 0 20px
}

    .redirect-title h1 {
        color: #fff
    }

    .redirect-title.dark-copy {
        border-color: #324d5b
    }

        .redirect-title.dark-copy h1 {
            color: #324d5b
        }

@media only screen and (min-width:700px) {
    .redirect-title {
        margin: 80px auto;
        padding: 0 40px;
        border-bottom: none;
        border-right: 1px solid #fff
    }

    .themes {
        background-color: transparent;
        overflow: hidden
    }

    .home .themes {
        overflow: visible
    }
}

.themes nav {
    padding-top: 20px
}

    .themes nav:after,
    .themes nav:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:700px) {
    .themes nav {
        padding-top: 0
    }
}

.themes nav .theme-card {
    position: relative;
    min-height: 70px;
    margin-bottom: 20px
}

    .themes nav .theme-card span {
        position: relative;
        float: left;
        display: table;
        width: 100%;
        background-color: #fff;
        border-radius: 2px 2px 0 0
    }

        .themes nav .theme-card span.pink {
            background-color: #ea2a74;
            background-color: rgba(234, 42, 116, .95)
        }

        .themes nav .theme-card span.blue {
            background-color: #2ea9d3;
            background-color: rgba(46, 169, 211, .95)
        }

        .themes nav .theme-card span.orange {
            background-color: #f90;
            background-color: rgba(255, 153, 0, .95)
        }

        .themes nav .theme-card span.green {
            background-color: #b7cb34;
            background-color: rgba(183, 203, 52, .95)
        }

        .themes nav .theme-card span.purple {
            background-color: #543346
        }

        .themes nav .theme-card span.yellow {
            background-color: #ffc100
        }

        .themes nav .theme-card span .img-holder {
            display: block;
            width: 90px;
            height: 70px;
            text-align: center;
            background-color: transparent
        }

            .themes nav .theme-card span .img-holder img,
            .themes nav .theme-card span .img-holder svg {
                display: inline-block;
                width: 52px;
                height: 52px;
                margin: 10px auto
            }

        .themes nav .theme-card span .title {
            display: table-cell;
            vertical-align: middle;
            width: 100%;
            padding-right: 30px;
            font-size: 18px;
            line-height: 20px;
            text-transform: uppercase;
            color: #fff;
            text-align: left;
            background-color: transparent
        }

            .themes nav .theme-card span .title i {
                background-position: -66px -192px;
                background-repeat: no-repeat;
                overflow: hidden;
                display: block;
                width: 12px;
                height: 12px;
                position: absolute;
                right: 20px;
                top: 28px
            }

    .themes nav .theme-card .copy {
        clear: left;
        min-height: 70px;
        font-size: 14px;
        line-height: 18px;
        padding: 15px 20px;
        color: #424242;
        border-radius: 0 0 2px 2px
    }

.action-portal-menu .menu-cover .btn-container:after,
.page-content:after,
.theme-hub-header:after,
.themes .banner:after,
.themes .tabs:after,
.topic-hub-header:after {
    clear: both
}

@media only screen and (min-width:1000px) {
    .themes nav .theme-card .copy {
        font-size: 16px;
        line-height: 24px
    }
}

.themes.pink {
    background-color: rgba(234, 42, 116, .95)
}

.themes.blue {
    background-color: rgba(46, 169, 211, .95)
}

.themes.orange {
    background-color: rgba(255, 153, 0, .95)
}

.themes.green {
    background-color: rgba(183, 203, 52, .95)
}

.themes .banner {
    padding: 20px 0 0;
    background-color: inherit;
    color: #fff;
    margin-bottom: 0
}

    .themes .banner:after,
    .themes .banner:before {
        content: " ";
        display: table
    }

    .themes .banner .icon-holder {
        float: left;
        width: 40px;
        height: 40px;
        margin: 0 20px 0 0
    }

    .themes .banner h1 {
        font-size: 22px;
        line-height: 22px;
        margin-bottom: 5px;
        text-transform: uppercase;
        color: #fff;
        width: 100%
    }

        .themes .banner h1 br {
            display: none
        }

    .themes .banner p {
        font-size: 16px;
        line-height: 20px;
        margin-bottom: 0
    }

@media only screen and (min-width:700px) {
    .themes .banner {
        padding: 20px 0
    }

        .themes .banner .icon-holder {
            width: 60px;
            height: 60px
        }

        .themes .banner h1 {
            font-size: 26px;
            line-height: 26px;
            margin-bottom: 10px
        }

        .themes .banner p {
            font-size: 20px;
            line-height: 20px;
            margin-bottom: 0;
            padding-left: 80px
        }
}

.themes [class*=theme-menu-] {
    position: relative;
    max-width: 1000px;
    min-height: 400px;
    margin: 0 auto;
    padding: 0 15px
}

    .themes [class*=theme-menu-]:after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        margin: -20px 0 0 -20px;
        z-index: 1000;
        opacity: 0;
        transition: opacity .65s
    }

    .themes [class*=theme-menu-].initial-loading-view:after,
    .themes [class*=theme-menu-].loading-view:after {
        opacity: 1
    }

@media only screen and (min-width:700px) {
    .themes [class*=theme-menu-] {
        padding: 0 30px
    }
}

@media only screen and (min-width:1000px) {
    .themes [class*=theme-menu-] {
        padding: 0 15px
    }
}

.themes [class*=theme-menu-] > .tabs {
    margin-left: -15px;
    margin-right: -15px;
    transition: opacity .65s;
    opacity: 1
}

.themes [class*=theme-menu-].initial-loading-view > .tabs {
    opacity: 0
}

.themes .tabs {
    position: relative;
    min-height: 370px;
    background-color: inherit
}

    .themes .tabs:after,
    .themes .tabs:before {
        content: " ";
        display: table
    }

    .themes .tabs [class*=tabs-centered-] {
        min-height: 300px;
        position: relative
    }

        .themes .tabs [class*=tabs-centered-]:after {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            margin: -20px 0 0 -20px;
            z-index: 1000;
            opacity: 0;
            transition: opacity .65s
        }

        .themes .tabs [class*=tabs-centered-].loading-view:after {
            opacity: 1
        }

@media only screen and (min-width:700px) {
    .themes .tabs {
        background-color: transparent
    }
}

.themes .tabs nav {
    position: relative
}

    .themes .tabs nav a {
        position: relative;
        display: block;
        float: left;
        width: 100%;
        padding: 20px 30px 20px 20px;
        font-weight: 600;
        font-size: 14px;
        line-height: 16px;
        margin-bottom: 10px;
        text-transform: uppercase;
        color: #424242;
        background-color: #fff;
        border-radius: 2px
    }

        .themes .tabs nav a i {
            background-position: -2px -192px;
            background-repeat: no-repeat;
            overflow: hidden;
            display: block;
            width: 12px;
            height: 12px;
            position: absolute;
            right: 15px;
            top: 50%;
            margin-top: -6px
        }

        .themes .tabs nav a:hover {
            background-color: #c9d6dd;
            text-decoration: none
        }

    .themes .tabs nav.tab-landing {
        padding-top: 20px;
        padding-bottom: 20px
    }

        .themes .tabs nav.tab-landing span {
            float: left;
            display: table;
            width: 100%;
            padding: 0 15px
        }

@media only screen and (min-width:700px) {
    .themes .tabs nav.tab-landing {
        padding-top: 40px;
        padding-bottom: 20px
    }

        .themes .tabs nav.tab-landing span {
            width: 33.3333%;
            height: 70px;
            margin-bottom: 20px
        }

            .themes .tabs nav.tab-landing span a {
                float: none;
                display: table-cell;
                vertical-align: middle;
                margin-bottom: 0;
                padding-top: 0;
                padding-bottom: 0
            }

                .themes .tabs nav.tab-landing span a i {
                    top: 29px;
                    margin: 0
                }
}

@media only screen and (min-width:1000px) {
    .themes .tabs nav.tab-landing {
        padding-top: 60px;
        padding-bottom: 40px
    }

        .themes .tabs nav.tab-landing span {
            width: 25%
        }
}

.themes .tabs nav.tab-tier {
    float: left;
    width: 100%;
    min-height: 400px;
    padding: 20px 15px;
    background-color: #c9d6dd;
    z-index: 2;
    transition: opacity .65s
}

    .themes .tabs nav.tab-tier .title {
        height: auto;
        margin-bottom: 20px;
        color: #424242
    }

    .theme-hub-header .hub-banner h1,
    .theme-hub-header .hub-banner p,
    .themes .tabs nav.tab-tier a.active,
    .themes .tabs nav.tab-tier a:hover,
    .themes .tabs nav.tab-tier:nth-child(1) h2,
    .topic-hub-header .hub-banner h1,
    .topic-hub-header .hub-banner p {
        color: #fff
    }

    .themes .tabs nav.tab-tier .title h2 {
        font-weight: 700;
        font-size: 24px;
        line-height: 26px;
        margin-bottom: 0;
        text-transform: uppercase;
        padding-top: 5px
    }

    .themes .tabs nav.tab-tier .title img,
    .themes .tabs nav.tab-tier .title svg {
        float: left;
        width: 60px;
        height: 60px;
        margin-right: 20px
    }

    .themes .tabs nav.tab-tier a.active i,
    .themes .tabs nav.tab-tier a:hover i {
        background-position: -66px -192px;
        background-repeat: no-repeat;
        overflow: hidden;
        display: block;
        width: 12px;
        height: 12px
    }

    .themes .tabs nav.tab-tier a:last-child {
        margin-bottom: 0
    }

    .themes .tabs nav.tab-tier:nth-child(1) {
        z-index: 1
    }

        .themes .tabs nav.tab-tier:nth-child(1) a.active,
        .themes .tabs nav.tab-tier:nth-child(1) a:hover {
            color: #424242;
            background-color: #c9d6dd
        }

        .themes .tabs nav.tab-tier:nth-child(1) a i {
            background-position: -2px -192px;
            background-repeat: no-repeat;
            overflow: hidden;
            display: block;
            width: 12px;
            height: 12px
        }

    .themes .tabs nav.tab-tier:nth-child(3) {
        background-color: #d9e2e7
    }

    .themes .tabs nav.tab-tier.selected {
        display: none
    }

    .themes .tabs nav.tab-tier.current {
        display: block;
        opacity: 1
    }

@media only screen and (min-width:700px) {
    .themes .tabs nav.tab-tier {
        width: 33.3333%;
        padding: 40px 15px
    }

        .themes .tabs nav.tab-tier.current,
        .themes .tabs nav.tab-tier.selected {
            display: block;
            opacity: 1
        }

        .themes .tabs nav.tab-tier .title {
            min-height: 90px;
            margin-bottom: 0
        }

        .themes .tabs nav.tab-tier:after {
            display: block;
            width: 1000%;
            height: 1000%;
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            background-color: inherit;
            border-left: 1px solid #aabec9;
            z-index: -1
        }

        .themes .tabs nav.tab-tier:nth-child(1):after {
            left: auto;
            right: 0
        }

        .themes .tabs nav.tab-tier:nth-child(3) {
            top: auto;
            z-index: 3
        }

            .themes .tabs nav.tab-tier:nth-child(3):after {
                background-color: #d9e2e7
            }
}

@media only screen and (min-width:1000px) {
    .themes .tabs nav.tab-tier {
        padding: 40px 30px
    }
}

.themes .tabs.pink nav a.active,
.themes .tabs.pink nav a:hover,
.themes .tabs.pink nav:nth-child(1) {
    background-color: #ea2a74
}

.themes .tabs.blue nav a.active,
.themes .tabs.blue nav a:hover,
.themes .tabs.blue nav:nth-child(1) {
    background-color: #2ea9d3
}

.themes .tabs.orange nav a.active,
.themes .tabs.orange nav a:hover,
.themes .tabs.orange nav:nth-child(1) {
    background-color: #f90
}

.themes .tabs.green nav a.active,
.themes .tabs.green nav a:hover,
.themes .tabs.green nav:nth-child(1) {
    background-color: #b7cb34
}

.theme-hub-header,
.topic-hub-header {
    min-height: 550px;
    padding-bottom: 35px
}

    .theme-hub-header:after,
    .theme-hub-header:before,
    .topic-hub-header:after,
    .topic-hub-header:before {
        content: " ";
        display: table
    }

    .theme-hub-header .hub-image,
    .topic-hub-header .hub-image {
        display: none;
        width: 100%
    }

    .theme-hub-header .hub-banner,
    .topic-hub-header .hub-banner {
        height: 180px;
        opacity: .95
    }

        .theme-hub-header .hub-banner .hub-banner-outer,
        .topic-hub-header .hub-banner .hub-banner-outer {
            max-width: 960px;
            display: block;
            position: relative;
            margin: auto;
            height: 75%
        }

        .theme-hub-header .hub-banner .hub-banner-inner,
        .topic-hub-header .hub-banner .hub-banner-inner {
            width: 100%;
            padding: 0 5% 0 20px;
            margin: auto;
            display: -ms-flexbox;
            display: flex;
            vertical-align: middle;
            height: 100%
        }

@media only screen and (min-width:700px) {
    .theme-hub-header .hub-banner .hub-banner-outer,
    .topic-hub-header .hub-banner .hub-banner-outer {
        height: 100%
    }

    .theme-hub-header .hub-banner .hub-banner-inner,
    .topic-hub-header .hub-banner .hub-banner-inner {
        padding: 0 10px
    }
}

.theme-hub-header .hub-banner h1,
.topic-hub-header .hub-banner h1 {
    font-size: 34px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 5px;
    line-height: 34px
}

.theme-hub-header .hub-banner p,
.topic-hub-header .hub-banner p {
    font-size: 24px;
    display: block;
    font-weight: 600;
    margin: 0
}

.theme-hub-header .hub-banner .hub-text,
.topic-hub-header .hub-banner .hub-text {
    padding-top: 35px
}

@media only screen and (min-width:700px) {
    .theme-hub-header .hub-banner .hub-text,
    .topic-hub-header .hub-banner .hub-text {
        padding-top: 40px
    }

    .theme-hub-header .hub-banner .mobi-text,
    .topic-hub-header .hub-banner .mobi-text {
        display: none
    }
}

.theme-hub-header .hub-banner .mobi-text,
.topic-hub-header .hub-banner .mobi-text {
    font-size: 20px;
    padding: 0 20px
}

.theme-hub-header .hub-banner .svg,
.topic-hub-header .hub-banner .svg {
    position: relative;
    height: 100%;
    width: 70px;
    margin-right: 10px
}

@media only screen and (min-width:700px) {
    .theme-hub-header .hub-banner .svg,
    .topic-hub-header .hub-banner .svg {
        width: 100px;
        margin-right: 35px
    }
}

.theme-hub-header .hub-banner .svg svg,
.topic-hub-header .hub-banner .svg svg {
    fill: #fff;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto
}

.theme-hub-header .hub-banner .img-container,
.topic-hub-header .hub-banner .img-container {
    float: left;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 150px;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 15px;
    padding-right: 35px
}

    .theme-hub-header .hub-banner .img-container .hub-text,
    .theme-hub-header .hub-banner .img-container img,
    .topic-hub-header .hub-banner .img-container .hub-text,
    .topic-hub-header .hub-banner .img-container img {
        float: left
    }

    .theme-hub-header .hub-banner .img-container img,
    .topic-hub-header .hub-banner .img-container img {
        width: 100%
    }

.theme-hub-header div[class*=tabs-centered],
.theme-hub-header div[class^=tabs-centered],
.topic-hub-header div[class*=tabs-centered],
.topic-hub-header div[class^=tabs-centered] {
    max-width: 960px;
    width: 100%;
    margin: 0 auto -200px;
    padding-top: 50px
}

    .theme-hub-header div[class*=tabs-centered] > div,
    .theme-hub-header div[class^=tabs-centered] > div,
    .topic-hub-header div[class*=tabs-centered] > div,
    .topic-hub-header div[class^=tabs-centered] > div {
        position: relative
    }

        .theme-hub-header div[class*=tabs-centered] > div a,
        .theme-hub-header div[class^=tabs-centered] > div a,
        .topic-hub-header div[class*=tabs-centered] > div a,
        .topic-hub-header div[class^=tabs-centered] > div a {
            position: relative;
            width: 23%;
            float: left;
            margin: 1%;
            border-radius: 2px;
            padding: 5px 45px 5px 20px;
            cursor: pointer;
            font-weight: 700;
            text-transform: uppercase;
            font-size: 14px;
            line-height: 16px;
            min-height: 70px;
            max-height: 70px;
            vertical-align: middle;
            -ms-flex-align: center;
            align-items: center;
            display: -ms-inline-flexbox;
            display: inline-flex;
            color: #000;
            text-decoration: none
        }

@media only screen and (max-width:960px) {
    .theme-hub-header div[class*=tabs-centered] > div a,
    .theme-hub-header div[class^=tabs-centered] > div a,
    .topic-hub-header div[class*=tabs-centered] > div a,
    .topic-hub-header div[class^=tabs-centered] > div a {
        width: 31%
    }
}

@media only screen and (max-width:640px) {
    .theme-hub-header div[class*=tabs-centered] > div a,
    .theme-hub-header div[class^=tabs-centered] > div a,
    .topic-hub-header div[class*=tabs-centered] > div a,
    .topic-hub-header div[class^=tabs-centered] > div a {
        width: 48%
    }
}

@media only screen and (max-width:470px) {
    .theme-hub-header div[class*=tabs-centered] > div a,
    .theme-hub-header div[class^=tabs-centered] > div a,
    .topic-hub-header div[class*=tabs-centered] > div a,
    .topic-hub-header div[class^=tabs-centered] > div a {
        width: 98%;
        margin: 1%
    }
}

.theme-hub-header div[class*=tabs-centered] > div a:hover,
.theme-hub-header div[class^=tabs-centered] > div a:hover,
.topic-hub-header div[class*=tabs-centered] > div a:hover,
.topic-hub-header div[class^=tabs-centered] > div a:hover {
    color: #000;
    text-decoration: none
}

.theme-hub-header div[class*=tabs-centered] > div a span,
.theme-hub-header div[class^=tabs-centered] > div a span,
.topic-hub-header div[class*=tabs-centered] > div a span,
.topic-hub-header div[class^=tabs-centered] > div a span {
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 0;
    -ms-flex-line-pack: center;
    align-content: center;
    display: -ms-inline-flexbox;
    display: inline-flex
}

    .theme-hub-header div[class*=tabs-centered] > div a span i,
    .theme-hub-header div[class^=tabs-centered] > div a span i,
    .topic-hub-header div[class*=tabs-centered] > div a span i,
    .topic-hub-header div[class^=tabs-centered] > div a span i {
        margin: auto
    }

.action-portal-menu {
    background-color: #f0f3f5;
    overflow: hidden
}

    .action-portal-menu .information-cover {
        padding: 40px 0 0
    }

        .action-portal-menu .information-cover h2 i {
            text-indent: -9999px
        }

@media only screen and (min-width:1000px) {
    .action-portal-menu .information-cover {
        padding: 40px 20px 40px 0
    }
}

.action-portal-menu .menu-cover {
    position: relative;
    padding: 30px 0 0;
    background-color: #c9d6dd;
    z-index: 0
}

    .action-portal-menu .menu-cover:after {
        display: block;
        content: "";
        position: absolute;
        left: -30px;
        top: 0;
        width: 1000%;
        height: 1000%;
        z-index: -1;
        background-color: inherit
    }

@media only screen and (min-width:1000px) {
    .action-portal-menu .menu-cover {
        padding: 40px 0 0 40px
    }

        .action-portal-menu .menu-cover:after {
            left: 0;
            border-top: none
        }
}

.action-portal-menu .menu-cover .sub-heading {
    font-weight: 600;
    padding-top: 20px;
    border-top: 1px solid #c2c2c2;
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 20px
}

    .action-portal-menu .menu-cover .sub-heading.active {
        font-size: 16px;
        line-height: 24px;
        margin-bottom: 20px
    }

.action-portal-menu .menu-cover .btn-container {
    display: none;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #c2c2c2
}

    .action-portal-menu .menu-cover .btn-container:after,
    .action-portal-menu .menu-cover .btn-container:before {
        content: " ";
        display: table
    }

    .action-portal-menu .menu-cover .btn-container.active {
        display: block
    }

.action-portal-menu .menu-cover .available-options {
    position: relative;
    min-height: 400px
}

    .action-portal-menu .menu-cover .available-options:after {
        content: "";
        position: absolute;
        top: 180px;
        left: 50%;
        margin: 0 0 0 -20px;
        z-index: 1000;
        opacity: 0;
        transition: opacity .65s
    }

    .action-portal-menu .menu-cover .available-options ul {
        margin-bottom: 20px
    }

        .action-portal-menu .menu-cover .available-options ul li {
            display: block;
            height: 50px;
            padding: 0 40px 0 20px;
            font-size: 14px;
            line-height: 50px;
            margin-bottom: 10px;
            font-weight: 700;
            text-transform: uppercase;
            background-color: #fff;
            border-radius: 3px;
            cursor: pointer;
            overflow: hidden;
            white-space: nowrap;
            text-overflow: ellipsis;
            transition: height .25s ease, background-color .45s
        }

            .action-portal-menu .menu-cover .available-options ul li:before {
                display: none
            }

            .action-portal-menu .menu-cover .available-options ul li a {
                display: block;
                color: #424242;
                text-decoration: none
            }

            .action-portal-menu .menu-cover .available-options ul li:hover {
                background-color: #ffc100
            }

                .action-portal-menu .menu-cover .available-options ul li:hover i:last-child {
                    -ms-transform: translateX(5px);
                    transform: translateX(5px)
                }

            .action-portal-menu .menu-cover .available-options ul li i {
                position: absolute;
                top: 50%;
                margin-top: -6px;
                transition: transform .25s
            }

                .action-portal-menu .menu-cover .available-options ul li i:last-child {
                    right: 20px
                }

            .action-portal-menu .menu-cover .available-options ul li.active {
                height: 40px;
                line-height: 40px;
                margin-bottom: 0
            }

                .action-portal-menu .menu-cover .available-options ul li.active i:last-child {
                    -ms-transform: rotate(90deg);
                    transform: rotate(90deg)
                }

            .action-portal-menu .menu-cover .available-options ul li.level-1.active {
                padding-left: 0;
                background-color: transparent;
                font-size: 22px;
                line-height: 40px;
                margin-bottom: 0
            }

                .action-portal-menu .menu-cover .available-options ul li.level-1.active i:last-child {
                    display: none
                }

            .action-portal-menu .menu-cover .available-options ul li.level-2.active,
            .action-portal-menu .menu-cover .available-options ul li.level-3.active {
                background-color: rgba(255, 255, 255, .25)
            }

                .action-portal-menu .menu-cover .available-options ul li.level-2.active:hover,
                .action-portal-menu .menu-cover .available-options ul li.level-3.active:hover {
                    background-color: rgba(255, 255, 255, .85)
                }

                    .action-portal-menu .menu-cover .available-options ul li.level-2.active:hover i,
                    .action-portal-menu .menu-cover .available-options ul li.level-3.active:hover i {
                        right: 20px
                    }

            .action-portal-menu .menu-cover .available-options ul li.view-all {
                margin: 30px 0 0;
                padding: 0 20px;
                text-align: center;
                background-color: #2ea9d3
            }

                .action-portal-menu .menu-cover .available-options ul li.view-all:hover {
                    background-color: #2488aa
                }

                .action-portal-menu .menu-cover .available-options ul li.view-all a {
                    color: #fff
                }

                .action-portal-menu .menu-cover .available-options ul li.view-all i {
                    left: auto;
                    border: none;
                    background-position: -66px -192px;
                    background-repeat: no-repeat;
                    overflow: hidden;
                    display: block;
                    width: 12px;
                    height: 12px
                }

@media only screen and (min-width:700px) {
    .action-portal-menu .menu-cover .available-options ul li.view-all {
        float: right;
        width: auto;
        height: 40px;
        line-height: 40px;
        margin-top: 20px;
        padding-right: 40px;
        text-align: right
    }

    form fieldset .g-recaptcha {
        max-width: 100%
    }
}

.action-portal-menu .menu-cover .available-options ul.selected li {
    height: 0;
    margin-bottom: 0;
    opacity: 0
}

    .action-portal-menu .menu-cover .available-options ul.selected li.active {
        height: 40px;
        opacity: 1
    }

.action-portal-menu .menu-cover .pulled-content {
    position: relative;
    padding: 40px 0;
    background-color: #fff;
    z-index: 1;
    left: 1px
}

    .action-portal-menu .menu-cover .pulled-content:after {
        display: block;
        content: "";
        position: absolute;
        top: 0;
        left: -40px;
        width: 1000%;
        height: 100%;
        background-color: inherit;
        z-index: -1
    }

    .action-portal-menu .menu-cover .pulled-content h4 {
        color: #2ea9d3;
        margin-bottom: 5px
    }

.action-portal-menu.loading-view .available-options:after {
    opacity: 1
}

.content-feedback {
    margin-top: 20px;
    margin-bottom: 20px
}

@media only screen and (min-width:1000px) {
    .content-feedback {
        margin-top: 0;
        margin-bottom: 0
    }

    .hide-mobile {
        display: none
    }
}

form fieldset p.check label {
    line-height: 60px
}

form fieldset .g-recaptcha {
    overflow: hidden;
    margin-bottom: 25px
}

form fieldset .required-details {
    display: none
}

    form fieldset .required-details#required-name {
        margin-bottom: 10px
    }

    form fieldset .required-details.display {
        display: block
    }

    form fieldset .required-details .input-field {
        display: block;
        position: relative
    }

        form fieldset .required-details .input-field input {
            cursor: pointer;
            padding-right: 40px
        }

            .breadcrumb ul form fieldset .required-details .input-field li:before,
            .calendar tr:first-child td table tr td:first-child form fieldset .required-details .input-field a:before,
            .calendar tr:first-child td table tr td:last-child form fieldset .required-details .input-field a:before,
            .calendar-entries .heading form fieldset .required-details .input-field a:after,
            .social-link form fieldset .required-details .input-field .icon:after,
            .ui-selectmenu-button form fieldset .required-details .input-field span.ui-icon,
            form fieldset .required-details .input-field .breadcrumb ul li:before,
            form fieldset .required-details .input-field .calendar tr:first-child td table tr td:first-child a:before,
            form fieldset .required-details .input-field .calendar tr:first-child td table tr td:last-child a:before,
            form fieldset .required-details .input-field .calendar-entries .heading a:after,
            form fieldset .required-details .input-field .icon,
            form fieldset .required-details .input-field .social-link .icon:after,
            form fieldset .required-details .input-field .ui-selectmenu-button span.ui-icon,
            form fieldset .required-details .input-field input[type=checkbox]:checked + label:before,
            form fieldset .required-details .input-field input[type=radio]:checked + label:before,
            form fieldset .required-details .input-field p.select:after {
                position: absolute;
                top: 0;
                right: 20px;
                bottom: 0;
                margin: auto;
                background-position: -204px -168px;
                background-repeat: no-repeat;
                overflow: hidden;
                display: block;
                width: 12px;
                height: 12px
            }

                .breadcrumb ul form fieldset .required-details .input-field li.open:before,
                .calendar tr:first-child td table tr td:first-child form fieldset .required-details .input-field a.open:before,
                .calendar tr:first-child td table tr td:last-child form fieldset .required-details .input-field a.open:before,
                .calendar-entries .heading form fieldset .required-details .input-field a.open:after,
                .social-link form fieldset .required-details .input-field .open.icon:after,
                .ui-selectmenu-button form fieldset .required-details .input-field span.open.ui-icon,
                form fieldset .required-details .input-field .breadcrumb ul li.open:before,
                form fieldset .required-details .input-field .calendar tr:first-child td table tr td:first-child a.open:before,
                form fieldset .required-details .input-field .calendar tr:first-child td table tr td:last-child a.open:before,
                form fieldset .required-details .input-field .calendar-entries .heading a.open:after,
                form fieldset .required-details .input-field .icon.open,
                form fieldset .required-details .input-field .social-link .open.icon:after,
                form fieldset .required-details .input-field .ui-selectmenu-button span.open.ui-icon,
                form fieldset .required-details .input-field input[type=checkbox]:checked + label.open:before,
                form fieldset .required-details .input-field input[type=radio]:checked + label.open:before,
                form fieldset .required-details .input-field p.open.select:after {
                    background-position: -220px -168px;
                    background-repeat: no-repeat;
                    overflow: hidden;
                    display: block;
                    width: 12px;
                    height: 12px
                }

.breadcrumb ul .no-js form fieldset .required-details .input-field li:before,
.calendar tr:first-child td table tr td:first-child .no-js form fieldset .required-details .input-field a:before,
.calendar tr:first-child td table tr td:last-child .no-js form fieldset .required-details .input-field a:before,
.calendar-entries .heading .no-js form fieldset .required-details .input-field a:after,
.no-js form fieldset .required-details .input-field .breadcrumb ul li:before,
.no-js form fieldset .required-details .input-field .calendar tr:first-child td table tr td:first-child a:before,
.no-js form fieldset .required-details .input-field .calendar tr:first-child td table tr td:last-child a:before,
.no-js form fieldset .required-details .input-field .calendar-entries .heading a:after,
.no-js form fieldset .required-details .input-field .icon,
.no-js form fieldset .required-details .input-field .social-link .icon:after,
.no-js form fieldset .required-details .input-field .ui-selectmenu-button span.ui-icon,
.no-js form fieldset .required-details .input-field input[type=checkbox]:checked + label:before,
.no-js form fieldset .required-details .input-field input[type=radio]:checked + label:before,
.no-js form fieldset .required-details .input-field p.select:after,
.social-link .no-js form fieldset .required-details .input-field .icon:after,
.ui-selectmenu-button .no-js form fieldset .required-details .input-field span.ui-icon {
    display: none
}

.feedback-success {
    background-color: #318F7D
}

    .feedback-success .feedback-wrapper {
        max-width: 980px;
        padding: 30px 50px;
        text-align: center;
        margin: 0 auto
    }

        .feedback-success .feedback-wrapper h1,
        .feedback-success .feedback-wrapper p {
            color: #fff
        }

        .feedback-success .feedback-wrapper .circled-icon {
            padding: 0;
            display: inline-block;
            margin: 25px auto;
            width: auto;
            border-radius: 50%;
            border: 2px solid #fff
        }

@media only screen and (min-width:700px) {
    .feedback-success .feedback-wrapper .circled-icon {
        padding: 10px
    }
}

.feedback-options .feedback-wrapper {
    max-width: 100%;
    padding: 30px 50px;
    text-align: center;
    margin: 0 auto
}

    .feedback-options .feedback-wrapper a {
        display: inline-block
    }

@media only screen and (min-width:1000px) {
    .subtopic-tpl {
        padding-top: 20px
    }
}

.media-editorial-tpl {
    padding-top: 25px
}

@media only screen and (min-width:1000px) {
    .media-editorial-tpl {
        padding-top: 40px
    }
}

.aside-content {
    width: 100%;
    min-height: 1px;
    float: left;
    position: relative
}

@media only screen and (min-width:320px) {
    .aside-content {
        width: 100%;
        padding-top: 20px;
        padding-left: 15px;
        padding-right: 15px
    }
}

@media only screen and (min-width:1000px) {
    .aside-content {
        width: 30%;
        padding-top: 0;
        padding-left: 0;
        padding-right: 0
    }
}

.side-nav {
    width: 100%;
    display: block;
    position: relative;
    top: 0;
    overflow: hidden;
    margin-bottom: 20px
}

    .side-nav .toggle-sticky {
        position: relative;
        display: block;
        margin-bottom: 0
    }

        .side-nav .toggle-sticky i {
            position: absolute;
            right: 15px;
            top: 50%;
            -ms-transform: translateY(-50%);
            transform: translateY(-50%)
        }

        .side-nav .toggle-sticky.active {
            border-radius: 2px 2px 0 0
        }

            .side-nav .toggle-sticky.active i {
                background-position: -239px -140px;
                background-repeat: no-repeat;
                overflow: hidden;
                display: block;
                width: 12px;
                height: 12px
            }

    .side-nav.sticky {
        width: 100%;
        position: fixed;
        left: 0;
        padding-left: 20px;
        padding-right: 0;
        padding-top: 20px
    }

@media only screen and (min-width:1000px) {
    .side-nav .toggle-sticky {
        display: none
    }

    .side-nav.sticky {
        width: 282px;
        left: auto;
        padding-left: 0;
        padding-right: 0
    }
}

.side-nav ul {
    display: none;
    margin: 0
}

.no-js .side-nav ul {
    display: block
}

@media only screen and (min-width:1000px) {
    .side-nav ul {
        display: block
    }
}

.side-nav ul li {
    padding: 0;
    transition: all .3s;
    border-bottom: 1px solid #c9d6dd;
    margin: 0;
    font-size: 16px;
    line-height: 18px
}

    .side-nav ul li:before {
        display: none
    }

    .side-nav ul li:last-child {
        border-bottom: none
    }

.page-content > p:last-of-type,
.section-pull {
    border-bottom: 1px solid #cdd2d4
}

.side-nav ul li a {
    width: 100%;
    background: #fff;
    padding: 16px 20px;
    display: block;
    text-decoration: none;
    color: #424242;
    border-left: none;
    transition: all .3s
}

    .side-nav ul li a:visited {
        color: #424242 !important
    }

    .side-nav ul li a.active,
    .side-nav ul li a:hover {
        background: #f6f6f6
    }

    .side-nav ul li a.active {
        cursor: default;
        border-left: 5px solid #e34d74;
        padding-left: 30px;
        padding-right: 10px
    }

.sticky-assistant {
    padding-right: 0
}

.page-content {
    width: 100%;
    min-height: 1px;
    float: left;
    margin-bottom: 0;
    position: relative
}

    .page-content:after,
    .page-content:before {
        content: " ";
        display: table
    }

@media only screen and (min-width:1000px) {
    .sticky-assistant {
        padding-right: 20px
    }

    .page-content {
        margin-bottom: 40px;
        width: 70%
    }
}

.page-content hr {
    position: relative;
    z-index: 1
}

.page-content > p {
    background: #fff;
    margin-bottom: 0;
    padding: 0 20px 25px;
    position: relative;
    margin-top: -1px
}

    .page-content > p:after {
        display: none
    }

@media only screen and (min-width:1000px) {
    .page-content > p {
        width: 100%;
        float: left;
        padding: 0 40px 25px
    }

        .page-content > p:after {
            content: "";
            width: 100%;
            height: 100%;
            display: block;
            position: absolute;
            right: -100%;
            top: 0;
            background: #fff;
            box-sizing: content-box
        }

        .page-content > p:last-of-type {
            padding-bottom: 40px
        }

            .page-content > p:last-of-type:after {
                border-bottom: 1px solid #cdd2d4
            }
}

.section-pull {
    background: #fff;
    position: relative;
    padding: 25px 15px 0
}

    .section-pull:after {
        display: none
    }

@media only screen and (min-width:1000px) {
    .section-pull {
        width: 100%;
        padding: 40px 0 0 40px
    }

        .section-pull:after {
            content: "";
            width: 100%;
            height: 100%;
            display: block;
            position: absolute;
            right: -100%;
            top: 0;
            background: #fff;
            border-bottom: 1px solid #cdd2d4;
            box-sizing: content-box
        }
}

.section-pull:last-of-type,
.section-pull:last-of-type:after {
    border-bottom: 1px solid #fff
}

.section-pull > a:last-child {
    display: inline-block
}

.section-pull > a:last-child,
.section-pull > p:last-child {
    margin-bottom: 25px
}

.section-pull.section-search {
    padding-top: 0;
    margin-top: -1px;
    border: none
}

@media only screen and (min-width:1000px) {
    .section-pull > a:last-child,
    .section-pull > p:last-child {
        margin-bottom: 40px
    }

    .section-search {
        padding: 0 18px 0 25px
    }
}

@media only screen and (max-width:700px) {
    .section-search {
        padding: 0 10px 0 15px
    }
}

.section-pull.section-search:after {
    border: none
}

.section-pull.section-search .contextual-search {
    padding-bottom: 0
}

@media only screen and (min-width:1000px) {
    .section-pull.section-search .contextual-search {
        padding-bottom: 0
    }
}

* {
    box-sizing: border-box;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
}

@media print {

    .notification.no-devider .desc h4,
    .notification.white-copy .desc h4,
    .notification.with-heading .desc h4,
    .stat.small {
        text-align: left
    }

    .container,
    .container-fluid,
    .container-md,
    .container-sm,
    .dock .index,
    .search-inner .header {
        width: 100%;
        max-width: none
    }

    .awards-details,
    .container,
    .container-fluid,
    .container-md,
    .container-sm,
    .dock .index,
    .search-inner .header,
    .section-search {
        padding: 0
    }

    .lrg-icon {
        padding-left: 0 !important
    }

    .container.collapse-desktop .row,
    .dock .collapse-desktop.index .row,
    .row,
    .search-inner .collapse-desktop.header .row {
        margin-right: 0;
        margin-left: 0
    }

        .container.collapse-desktop .row.invert-mobile,
        .container.collapse-desktop .row.invert-mobile > [class*=col-],
        .dock .collapse-desktop.index .row.invert-mobile,
        .dock .collapse-desktop.index .row.invert-mobile > [class*=col-],
        .row.invert-mobile,
        .row.invert-mobile > [class*=col-],
        .search-inner .collapse-desktop.header .row.invert-mobile,
        .search-inner .collapse-desktop.header .row.invert-mobile > [class*=col-] {
            -ms-transform: rotate(0);
            transform: rotate(0)
        }

    [class*=col-] {
        float: none !important;
        width: 100% !important;
        padding-right: 0;
        padding-left: 0
    }

    html {
        overflow-x: visible
    }

    body {
        width: 100%;
        margin: 0;
        float: none;
        color: #424242;
        background: #fff
    }

    .action-portal-menu .menu-cover .pulled-content h4 a[href]:after,
    .list-1-2 li a[href]:after,
    .list-links a[href]:after,
    .list-ul ul li a[href]:after,
    .useful-links ul li a[href]:after,
    p a[href]:after {
        content: " (" attr(href) ")";
        text-transform: lowercase;
        font-weight: 400;
        white-space: pre-wrap;
        word-wrap: break-word
    }

    a,
    a:visted {
        color: #2ea9d3 !important
    }

    .themes nav .theme-card span.pink .title,
    .themes.pink .banner h1,
    .themes.pink .banner p {
        color: #ea2a74
    }

    .mimic-h1,
    h1 {
        font-size: 30px;
        line-height: 42px;
        margin-bottom: 42px
    }

    h2 {
        font-size: 25px;
        line-height: 34px;
        margin-bottom: 30px
    }

    h3 {
        font-size: 22px;
        line-height: 30px;
        margin-bottom: 24px
    }

    .themes .tabs nav a,
    h2,
    h3,
    h4 {
        text-transform: lowercase !important;
        text-transform: capitalize !important
    }

    blockquote,
    figure,
    img,
    ol,
    p,
    table,
    ul {
        page-break-inside: avoid
    }

    #extend-menu,
    #required-captcha,
    .action-portal-menu .menu-cover .sub-heading,
    .aside-content,
    .banner,
    .breadcrumb,
    .breadcrumb ul li:before,
    .btn,
    .btn-container,
    .calendar tr:first-child td table tr td:first-child a:before,
    .calendar tr:first-child td table tr td:last-child a:before,
    .calendar-entries .heading a:after,
    .error-title .headings,
    .feedback-success .feedback-wrapper .circled-icon,
    .header-search-wrapper,
    .heading.empty.header-level-3,
    .heading.empty.header-level-3.active,
    .help-page,
    .icon,
    .icon-holder,
    .image-gallery-control,
    .index-search-wrapper,
    .info,
    .infographic,
    .lrg-icon:before,
    .media,
    .media-type,
    .mobile-scroll:before,
    .notification .graphic,
    .pagination,
    .print-section,
    .profile-detail.with-map figure,
    .profile-info p br,
    .read-more,
    .recaptcha,
    .responsive-media,
    .search,
    .section-pull:after,
    .share-page,
    .social-link .icon:after,
    .tags,
    .themes .banner h1 br,
    .themes .tabs nav.tab-tier .title img,
    .themes nav .theme-card span .img-holder,
    .title h2 br,
    .toggle-alert,
    .ui-icon,
    .ui-selectmenu-button span.ui-icon,
    fieldset input[type=checkbox]:checked + label:before,
    fieldset input[type=radio]:checked + label:before,
    fieldset p.select:after {
        display: none !important
    }

    .city-connect {
        display: block !important
    }

    .action-portal-menu,
    .action-portal-menu .menu-cover,
    .action-portal-menu .menu-cover .available-options ul li.level-2.active,
    .action-portal-menu .menu-cover .available-options ul li.level-2.active:hover,
    .action-portal-menu .menu-cover .available-options ul li.level-3.active,
    .action-portal-menu .menu-cover .available-options ul li.level-3.active:hover,
    .action-portal-menu .menu-cover .available-options ul li:hover,
    .awards-details,
    .bg-blue,
    .bg-charcoal,
    .bg-citizen-blue,
    .bg-dark-demi-grey,
    .bg-darker-grey,
    .bg-font-adjust-bg,
    .bg-light-demi-grey,
    .bg-light-yellow,
    .bg-navy,
    .bg-pink,
    .bg-teal,
    .card figure,
    .content-accordion h3,
    .content-toggle,
    .feedback-success,
    .list-figure-item.pinned-notice,
    .themes {
        background-color: #fff !important
    }

        .themes nav .theme-card span,
        .themes.hero {
            background-color: transparent !important
        }

    .header-container {
        border-bottom: 1px solid #cdd2d4;
        padding: 30px 0
    }

    .themes .tabs.pink .title h2,
    .themes nav .theme-card span.pink,
    .themes.pink .banner {
        border-bottom: 4px solid #ea2a74
    }

    .header-container:before {
        content: url(https://chart.googleapis.com/chart?cht=qr&chs=100x100&chl=https://www.capetown.gov.za&choe=UTF-8);
        position: absolute;
        right: 0;
        top: 0;
        display: block
    }

    .header-container .header-logo a .site-logo {
        margin: 0
    }

    .cover {
        background-image: none !important
    }

    .themes .tabs.pink .title h2 {
        color: #ea2a74;
        padding-bottom: 20px
    }

    .themes nav .theme-card span.blue .title,
    .themes.blue .banner h1,
    .themes.blue .banner p {
        color: #2ea9d3
    }

    .themes .tabs.blue .title h2,
    .themes nav .theme-card span.blue,
    .themes.blue .banner {
        border-bottom: 4px solid #2ea9d3
    }

    .themes .tabs.blue .title h2 {
        color: #2ea9d3;
        padding-bottom: 20px
    }

    .themes nav .theme-card span.orange .title,
    .themes.orange .banner h1,
    .themes.orange .banner p {
        color: #f90
    }

    .themes nav .theme-card span.orange,
    .themes.orange .banner {
        border-bottom: 4px solid #f90
    }

    .themes .tabs.orange .title h2 {
        color: #f90;
        border-bottom: 4px solid #f90;
        padding-bottom: 20px
    }

    .themes nav .theme-card span.green .title,
    .themes.green .banner h1,
    .themes.green .banner p {
        color: #b7cb34
    }

    .themes .tabs.green .title h2,
    .themes nav .theme-card span.green,
    .themes.green .banner {
        border-bottom: 4px solid #b7cb34
    }

    .themes .tabs.green .title h2 {
        color: #b7cb34;
        padding-bottom: 20px
    }

    .themes .tabs nav a:hover,
    .themes > a.active {
        color: #424242 !important
    }

    .themes nav .theme-card span {
        padding-bottom: 10px;
        margin-bottom: 10px
    }

    .themes nav .theme-card .copy {
        padding: 0;
        min-height: auto
    }

    .themes.hero .banner {
        margin-bottom: 0;
        padding: 20px 0
    }

    .themes > a {
        display: list-item;
        list-style-position: inside;
        padding: 5px 30px 5px 0;
        margin-bottom: 0;
        text-transform: inherit
    }

    .themes .tabs {
        min-height: auto;
        background-color: transparent
    }

        .themes .tabs nav.tab-tier {
            background: 0 0 !important
        }

            .themes .tabs nav.tab-tier.selected {
                display: block !important
            }

        .themes .tabs nav a {
            padding: 5px 30px 5px 5px;
            display: list-item;
            list-style-position: inside
        }

        .themes .tabs .title h2 {
            padding-bottom: 20px
        }

    .action-portal-menu {
        min-height: auto
    }

        .action-portal-menu .menu-cover .available-options ul {
            display: block;
            margin-bottom: 15px
        }

            .action-portal-menu .menu-cover .available-options ul.selected {
                display: inline-block
            }

                .action-portal-menu .menu-cover .available-options ul.selected:after {
                    content: "/";
                    padding: 0 10px;
                    display: inline-block;
                    font-weight: 600
                }

                .action-portal-menu .menu-cover .available-options ul.selected:last-of-type:after {
                    display: none
                }

                .action-portal-menu .menu-cover .available-options ul.selected li,
                .action-portal-menu .menu-cover .available-options ul.selected li.active {
                    display: none;
                    font-size: 16px;
                    height: auto;
                    line-height: 16px;
                    text-overflow: initial;
                    white-space: pre-wrap
                }

                    .action-portal-menu .menu-cover .available-options ul.selected li.active,
                    .action-portal-menu .menu-cover .available-options ul.selected li.active.active {
                        display: inline-block;
                        list-style: none
                    }

            .action-portal-menu .menu-cover .available-options ul.current {
                padding-left: 35px
            }

                .action-portal-menu .menu-cover .available-options ul.current li {
                    display: list-item;
                    list-style-type: disc
                }

            .action-portal-menu .menu-cover .available-options ul li {
                display: inline-block;
                height: auto;
                font-size: 16px;
                padding: 0;
                overflow: visible;
                white-space: initial;
                line-height: 16px;
                text-transform: lowercase !important;
                text-transform: capitalize !important
            }

        .action-portal-menu .menu-cover .pulled-content {
            padding: 0
        }

    .card.dark div > p,
    .card.dark h3 {
        color: #424242
    }

    .card figure > a {
        float: none;
        width: 20%;
        display: inline
    }

        .card figure > a img {
            float: left;
            width: 20%
        }

    .card figure figcaption {
        position: relative;
        display: inline;
        width: 80%;
        padding: 0
    }

    .section-pull {
        border-bottom: none;
        padding-left: 0;
        padding-right: 0
    }

    .page-title {
        margin-bottom: 0
    }

    .section-pull:first-child {
        padding-top: 0
    }

    .figure-credits.left,
    .figure-credits.right {
        width: 300px;
        margin-bottom: 10px
    }

    .content-accordion .content-toggle {
        display: block;
        padding: 0
    }

    .content-accordion h3,
    .content-accordion h4 {
        border-bottom: 1px solid #424242;
        margin: 20px 0;
        padding: 15px 0
    }

    .image-gallery-slider {
        height: auto !important;
        min-height: auto;
        margin: 0 0 35px !important
    }

        .image-gallery-slider .image-gallery-content {
            height: auto !important;
            background-image: none;
            position: relative
        }

            .image-gallery-slider .image-gallery-content figure {
                height: auto;
                background: 0 0 !important;
                display: inline-block;
                position: relative;
                margin-bottom: 10px
            }

                .image-gallery-slider .image-gallery-content figure > img {
                    display: inline-block !important;
                    width: 155px;
                    float: left;
                    margin-right: 20px
                }

                .image-gallery-slider .image-gallery-content figure .image-slide-text {
                    display: inline !important
                }

                    .image-gallery-slider .image-gallery-content figure .image-slide-text a:after {
                        display: none
                    }

    .notification {
        padding: 0 !important;
        background: 0 0 !important
    }

        .notification.toggle {
            padding-bottom: 20px
        }

            .notification.toggle .desc {
                margin: 0;
                color: #424242
            }

        .notification.no-devider,
        .notification.white-copy,
        .notification.with-heading {
            padding: 0 20px;
            background: 0 0 !important;
            color: #424242 !important
        }

            .notification.no-devider .desc p,
            .notification.white-copy .desc p,
            .notification.with-heading .desc p {
                color: #424242 !important
            }

        .notification.yellow .desc h4 {
            color: #ffc100 !important
        }

        .notification.blue .desc h4 {
            color: #4682a1 !important
        }

        .notification.pink .desc h4 {
            color: #ea2a74 !important
        }

        .notification.light-blue .desc h4 {
            color: #2ea9d3 !important
        }

    .mobile-scroll {
        padding-top: 0
    }

    .lrg-icon-content.bordered {
        padding: 0 !important;
        border: none
    }

    .list-figure-item figure,
    .list-figure-item figure > a,
    .list-figure-item figure > img {
        width: 140px !important;
        float: left;
        margin-right: 20px
    }

    .list-figure-item.pinned-notice {
        margin-bottom: 0;
        padding-top: 0;
        padding-bottom: 0
    }

    .calendar tr td {
        border-right-color: #424242;
        border-bottom-color: #424242
    }

    .calendar tr th {
        border: 1px solid #424242
    }

        .calendar tr th:first-child {
            border-left: none
        }

        .calendar tr th:last-child {
            border-right: none
        }

    .calendar tr:first-child td table {
        border-top: 1px solid #000
    }

        .calendar tr td,
        .calendar tr td.other-month,
        .calendar tr th,
        .calendar tr th.other-month,
        .calendar tr:first-child td table tr td:last-child {
            background-color: #fff
        }

    .calendar tr.current {
        background-color: #fff !important;
        color: #bacad3 !important
    }

    .calendar tr.selected {
        background-color: #e34d74;
        color: #e34d74
    }

        .calendar tr.selected a {
            color: #424242 !important
        }

    .calendar-entries .entry {
        border-bottom: 1px solid #424242;
        margin-bottom: 15px
    }

        .calendar-entries .entry:last-child {
            border: none
        }

        .calendar-entries .entry.cancel .heading,
        .calendar-entries .entry.reschedule .heading {
            padding: 0;
            display: inline-block !important
        }

        .calendar-entries .entry.cancel .heading {
            color: #e2574c
        }

        .calendar-entries .entry.reschedule .heading {
            color: #005870
        }

    .calendar-entries .date {
        background: #fff;
        padding-bottom: 0;
        padding-right: 0;
        display: inline-block
    }

        .calendar-entries .date b {
            color: #424242
        }

    .calendar-entries .details,
    .calendar-entries .heading {
        background: #fff !important
    }

    .calendar-entries .heading {
        color: #2ea9d3;
        padding-bottom: 20px
    }

        .calendar-entries .heading:hover {
            background: 0 0
        }

        .calendar-entries .heading a {
            color: #2ea9d3 !important
        }

    .error-title,
    .redirect-title {
        color: #424242;
        padding: 0;
        border: none
    }

        .redirect-title h1 {
            margin-bottom: 0
        }

    .feedback-options .feedback-wrapper,
    .feedback-success .feedback-wrapper {
        padding: 0 !important
    }

        .feedback-success .feedback-wrapper h1,
        .feedback-success .feedback-wrapper p {
            color: #424242
        }

    .stat.small {
        width: auto
    }

        .stat.small + .small {
            margin-left: 20px
        }

        .stat.small .information,
        .stat.small .number {
            padding: 0
        }

    .stat .number {
        float: left;
        padding: 0;
        margin-right: 20px
    }

        .stat .number.bg-teal,
        .stat .number.number.bg-blue,
        .stat .number.number.bg-pink {
            background: 0 0 !important
        }

            .stat .number.bg-teal p {
                color: #3db39e !important
            }

            .stat .number.number.bg-pink p {
                color: #ea2a74 !important
            }

            .stat .number.number.bg-blue p {
                color: #2ea9d3 !important
            }

    .stat .information {
        background: #fff;
        padding: 0
    }
}

/* Website Feedback Enhancements*/

.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

    .inputfile + label {
        font-size: 1.25em;
        font-weight: 700;
        color: white;
        background-color: black;
        display: inline-block;
    }

        .inputfile:focus + label,
        .inputfile + label:hover {
            background-color: red;
        }

.inputTextBox {
    width: 462px;
    height: 45px;
    vertical-align: middle;
}

.btnLabel {
    color: white;
    background-color: #2EA9D3;
    display: inline-block;
    border-radius: 2px;
    text-align: center;
    font-size: 14px;
    line-height: 45px;
    font-weight: 600;
    cursor: pointer;
    width: 150px;
    height: 45px;
    padding: 0px;
    margin: 0px 0px 0px 10px;
}

    .btnLabel:hover {
        background-color: #2488AA;
    }


.hero.thinkwater {
    padding-bottom: 5px;
    background-color: #00243c
}

@media only screen and (min-width:700px) {
    .hero.thinkwater {
        padding-bottom: 10px
    }
}

.hero.thinkwater-default {
    padding-bottom: 5px;
    background-color: #00243c
}


.ThinkWaterBottomPadding {
    padding-bottom: 25px;
}


.councillorbiosquare {
    padding: 20px 0 0
}

.colcouncillorbio {
    float: left;
    padding-right: 0px;
    padding-left: 0px
}

.councillorbiosquareright {
    padding: 20px 0 0
}

.colcouncillorbioright {
    float: left;
    padding-right: 0px;
    padding-left: 10px
}

@media only screen and (min-width:320px) {
    .councillorsbiocol {
        width: 88%;
        margin-left: 0%;
    }

    .colcouncillorbioright {
        padding-left: 0px;
    }
}

@media only screen and (min-width:700px) {
    .councillorsbiocol {
        width: 50%;
        margin-left: 0;
    }

    .colcouncillorbioright {
        padding-left: 0px;
    }


    .colcouncillorbio {
        width: 50%
    }

        .colcouncillorbio.break-1-1-2 {
            width: 100%
        }
}

@media only screen and (min-width:1000px) {
    .councillorsbiocol {
        width: 50%;
        margin-left: 0;
    }

    .councillorsbiocolright {
        width: 50%;
        margin-left: 0;
    }

    .colcouncillorbioright {
        padding-left: 10px;
    }

    .colcouncillorbio,
    .colcouncillorbio.break-1-1-2 {
        width: 50%
    }

    .colcouncillorbioright,
    .colcouncillorbioright.break-1-1-2 {
        width: 50%
    }
}




li.nav-item:before  {
     display:  none !important;
}


li.nav-item.active {
    padding-left: 0 !important;
}
/* ////////// Navbar ////////// */
/*.navbar-light .navbar-nav .nav-link {
    color: #495057;
    font-weight: 500;
}

.navbar-light .navbar-nav .active > .nav-link {
    color: #0098C5;
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
    color: #0098C5;
}
nav.navbar {
    padding: 10px 0 10px 0 !important;
}

@media screen and (max-width: 870px) {
    footer.footer.arts-culture-footer .container-fluid {
        display: flex;
        justify-content: center;
        flex-direction: column-reverse;
        text-align: center;
    }
}

fieldset p .label, fieldset p label {
    margin-bottom: 0 !important;
}*/