html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
dd,
dl,
dt,
div,
hr,
img,
input,
select,
textarea,
ul,
ul li,
ol,
ol li,
blockquote {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 16px;
    font-family: 'Open Sans', sans-serif;
    letter-spacing: 0.03em;
    box-sizing: border-box;
    color: #303030;
}

html:lang(en-SG),
:lang(en-SG) body,
:lang(en-SG) h1,
:lang(en-SG) h2,
:lang(en-SG) h3,
:lang(en-SG) h4,
:lang(en-SG) h5,
:lang(en-SG) h6,
:lang(en-SG) p,
:lang(en-SG) dd,
:lang(en-SG) dl,
:lang(en-SG) dt,
:lang(en-SG) div,
:lang(en-SG) hr,
:lang(en-SG) img,
:lang(en-SG) input,
:lang(en-SG) select,
:lang(en-SG) textarea,
:lang(en-SG) ul,
:lang(en-SG) ul li,
:lang(en-SG) ol,
:lang(en-SG) ol li,
:lang(en-SG) blockquote {
    letter-spacing: normal;
}

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    /*line-height: 1.4;*/
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/*-webkit-transition: all 0.5s ease-in-out;-moz-transition: all 0.5s ease-in-out;-o-transition: all 0.5s ease-in-out;transition: all 0.2s ease-in-out;*/

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
dd,
dl,
dt,
div,
hr,
img,
input,
select,
textarea,
ul,
ul li,
ol,
ol li,
blockquote {
    line-height: 27px;
}

html,
body {
    background-color: #f8f8f8;
}

body {
    padding-top: 65px;
}

body.homemenu {
    padding-top: 120px;
}

.bc {
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
}

a {
    text-decoration: none;
    outline: none !important;
    color: #487091;
}

a:hover {
    color: #000;
}

p {
    margin-bottom: 30px;
}

.clear {
    clear: both;
}

.left {
    float: left;
}

.right {
    float: right;
}

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

.align-left,
.typography .align-left {
    text-align: left;
}

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

.block-center {
    display: block;
    margin: 0 auto;
}

.space20 {
    height: 20px;
}

.space35 {
    height: 35px;
}

.block {
    display: inline-block;
}

h1,
h3 {
    font-family: 'Spectral', "Songti SC", source-han-serif-sc, 宋体, Songti, SimSun, serif;
}

h1 {
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: normal;
    color: #000;
    text-align: center;
}

h2xxx {
    font-size: 23px;
    text-align: center;
    margin-bottom: 10px;
    line-height: normal;
}

h3xxx {
    font-size: 23px;
    text-align: center;
    margin-bottom: 20px;
    line-height: normal;
}

h5 {
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    margin-bottom: 25px;
    color: #505050;
}

h4xxx {
    font-size: 18px;
    margin-bottom: 18px;
    line-height: normal;
}

h2xxx a {
    color: #000;
}

h2xxx a:hover {
    color: #487091;
}

h5xxx a {
    color: #505050;
}

h5xxx a:hover {
    color: #487091;
}

ulxxx,
olxxx {
    padding: 0;
    margin: 0 0 33px 18px;
}

.content {
    padding-top: 20px;
    padding-bottom: 30px;
}

.wrapper {
    width: 79.688%;
    max-width: 1440px;
    margin: 0 auto;
}

.wrapper-2 {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}

.wrapper-inner {
    /* width: 78.431%; */
    margin: 0 auto;
}

.wrapper-inner-2 {
    width: 56.863%;
    margin: 0 auto;
}

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

.full-width-img img,
.full-width-img {
    width: 100%;
    height: auto;
}

hr {
    width: 100%;
    height: 1px;
    border: 0;
    background: #949494;
    margin: 15px auto 38px auto;
}

/*preset layout*/

.typography .btn.download:after {
    content: "";
    background-image: url(../img/treeicons/mini/134.png);
    background-repeat: no-repeat;
    display: inline-block;
    vertical-align: middle;
    width: 16px;
    height: 16px;
    margin-left: 5px;
    margin-top: -2px;
    filter: invert(100%);
}

.call-for-action .btn {
    margin-bottom: 0;
}

.btn.blue2,
.typography .btn.blue2 {
    background: #204d72;
}

.btn.blue2:hover,
.typography .btn.blue2:hover {
    background: #2a6392;
    color: #fff;
}

.btn.green2 {
    background: #006a3e;
}

.btn.green2:hover {
    background: #2b8868;
    color: #fff;
}

.btn.transparent2,
.typography .btn.transparent2 {
    background: rgba(0, 0, 0, 0);
    border: 1px solid #fff;
}

.btn.transparent2:hover,
.typography .btn.transparent2:hover {
    background: #204d72;
    color: #fff;
}

/*preset btn*/

.btn.bluexxx {
    background: #16558f;
    color: #fff;
}

.btn.bluexxx:hover {
    background: #1961a2;
}

.btn.greenxxx {
    background: #267a5d;
    color: #fff;
}

.btn.greenxxx:hover {
    background: #2b8868;
}

.btn.darkgreyxxx {
    background: #555555;
    color: #fff;
}

.btn.darkgreyxxx:hover {
    background: #6f6e6e;
}

.btn.redxxx {
    background: #8f1e1e;
    color: #fff;
}

.btn.redxxx:hover {
    background: #a72323;
}

.btn.whitexxx {
    background: #fff;
    color: #555555;
}

.btn.whitexxx:hover {
    background: #efefef;
}

.btn.lightgreyxxx {
    background: #a9a9a9;
    color: #555555;
}

.btn.lightgreyxxx:hover {
    background: #c3c0c0;
}

.btn.whiteborderxxx {
    background: rgba(110, 110, 110, 0);
    border: 1px solid #fff;
    color: #fff;
}

.btn.whiteborderxxx:hover {
    background: rgba(110, 110, 110, 0.5);
}

.btn.darkgreyborderxxx {
    background: rgba(239, 239, 239, 0);
    border: 1px solid #555;
    color: #555;
}

.btn.darkgreyborderxxx:hover {
    background: rgba(239, 239, 239, 0.5);
}

.btn-footer,
.typography a.btn-footer {
    padding: 4px 15px;
    min-width: 156px;
    border: 1px solid #000;
    color: #000;
    display: inline-block;
    box-sizing: border-box;
    border-radius: 3px;
}

.btn-footer:hover,
.typography a.btn-footer:hover {
    color: #c5c5c5;
    background: #505050;
    border: 1px solid #505050;
}

ul.gallery-thumbnailxxx {
    list-style: none;
    padding: 0;
    margin: 0 0 45px 0;
    font-size: 0;
}

ul.gallery-thumbnail lixxx {
    margin-right: 0.686%;
    margin-bottom: 0.686%;
    width: 24.486%;
    display: inline-block;
    vertical-align: top;
}

ul.gallery-thumbnail lixxx:nth-child(4n+4) {
    margin-right: 0;
}

ul.gallery-thumbnail li axxx {
    display: block;
    width: 100%;
    padding-bottom: 100%;
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
}

.tos-slide>* {
    padding: 20px;
}

.tos-wrapper.tos-fixed {
    background: rgba(0, 0, 0, 0.9);
}

.big-slider {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.gallery-sliderxxx {
    margin-bottom: 30px;
}

.gallery-slider ul li imgxxx {
    width: 100%;
    height: auto;
    z-index: 1;
}

.top {
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
}

.subpage-header {
    background: #fff;
    width: 100%;
    border-bottom: 1px solid #dddddd;
    padding: 6px 0 0 0;
    height: 65px;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    transition: all .3s;
}

a.logo {
    display: inline-block;
    vertical-align: middle;
    background: url(../img/logo-tzuchi.png)no-repeat;
    background-size: 91px 51px;
    width: 97px;
    height: 51px;
    margin-right: 2%;
    float: left;
    -webkit-transition: all .4s;
    -moz-transition: all .4s;
    transition: all .4s;
}

ul.menu {
    list-style: none;
    padding: 0;
    margin: 13px 0 0 0;
    display: inline-block;
    vertical-align: middle;
    float: left;
    font-size: 0;
}

ul.menu>li {
    display: inline-block;
    vertical-align: top;
}

ul.menu li a {
    color: #303030;
    margin-right: 18px;
    cursor: pointer;
    font-size: 16px;
    position: relative;
}

ul.menu li a:hover {
    color: #28608e;
}

ul.menu li a.dropdown-ttl::before {
    content: "";
    width: 0;
    height: 0;
    border-left: 13px solid transparent;
    border-right: 13px solid transparent;
    border-bottom: 13px solid #eee;
    display: block;
    position: absolute;
    top: 30px;
    z-index: 999;
    left: 50%;
    margin-left: -13px;
    display: none;
    cursor: pointer;
}

ul.menu li a.dropdown-ttl::after {
    content: "";
    height: 26px;
    width: 150%;
    background: rgba(238, 238, 238, 0);
    position: absolute;
    top: 18px;
    left: -25%;
    z-index: 999;
    display: none;
}

.dropdown-block {
    position: fixed;
    top: 65px;
    left: 0;
    width: 100%;
    z-index: 999;
    background: rgba(238, 238, 238, 0.92);
    padding: 33px 0 30px 0;
    display: none;
}

.dropdown-block .level-1 {
    background: url(../img/arrow-footer-right.png)no-repeat left center;
    background-size: 7px 12px;
    font-weight: bold;
    padding: 0 0 0 20px;
    margin-bottom: 28px;
}

.dropdown-block .level-1 a {
    color: #303030;
}

ul.submenu-wrapper {
    text-align:right;
    font-size: 0;
    list-style: none;
    padding: 0;
    margin: 0;
}

ul.submenu-wrapper>li {
    text-align:left;
    width: 16%;
    margin: 0 5% 3px 0;
    padding: 0;
    display: inline-block;
    vertical-align: top;
}

ul.submenu-wrapper>li:nth-child(5n+5) {
    margin-right: 0;
}

ul.submenu-wrapper>li:last-child {
    margin-right:0;
}

ul.submenu-wrapper li a {
    display: inline-block;
    font-size: 15px;
    line-height: 20px;
    margin-right: 0;
}

ul.submenu {
    list-style: none;
    padding: 0;
    margin: 0;
}

ul.submenu li a {
    display: inline-block;
    font-size: 15px;
    line-height: 18px;
    margin-right: 0;
}

ul.submenu li.level-2 {
    padding-bottom: 13px;
    margin-bottom: 10px;
    border-bottom: 1px solid #adadad;
    font-size: 15px;
    font-weight: bold;
    line-height: 18px;
}

ul.submenu li {
    margin-bottom: 2px;
}

ul.menu li:hover>div.dropdown-block {
    display: block;
}

ul.menu li:hover>a.dropdown-ttl::before,
ul.menu li:hover>a.dropdown-ttl::after {
    display: block;
}

.right-header {
    float: right;
    color: #adadad;
    padding-top: 2px;
    margin-top: 7px;
    text-align: right;
}

.right-header a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 7px;
    color: #505050;
    font-weight: bold;
}

ul.menu li.mobile-right-header {
    display: none;
    text-align: center;
}

ul.menu li.mobile-right-header a {
    display: inline-block;
    vertical-align: middle;
    margin: 0px;
    color: #505050;
    font-weight: bold;
}

.homemenu .subpage-header {
    height: 120px;
}

.homemenu a.logo {
    background: url(../img/logo-big.png)no-repeat;
    background-size: 132px 100px;
    width: 132px;
    height: 100px;
    float: left;
}

.homemenu ul.menu {
    display: block;
    float: right;
    font-size: 0;
    margin-top:0;
}

.homemenu ul.menu>li {
    padding: 9px 0;
}

.homemenu ul.menu li a.dropdown-ttl::before {
    top:34px;
}

.homemenu ul.menu li a.dropdown-ttl::after {
    height:30px;
}

.homemenu ul.menu li a {
    margin-right:0;
    margin-left:18px;
}

.tagline,
.tagline.typography {
    margin-top: 20px;
    display: none;
}

.tagline *,
.tagline.typography * {
    text-align: right;
    margin: 0;
    width: auto;
}

.homemenu .tagline {
    display: block;
}

.homemenu .dropdown-block {
    top: 120px;
}

.homemenu .right-header {
    width: 70%;
    display: block;
    margin-top: 25px;
}

.homebanner .slides li,
.philosophy-slider .slides li {
    position: relative;
}

.home-slider {
    min-height: 591px;
}

.philosophy-slider,
.philosophy-slider .slides li {
    min-height: 530px;
    text-align:center;
}

.philosophy-slider .slides li > div:first-child {
    position: absolute;
    background-size:cover;
    background-position:center center;
    width:100%;
    height:100%;
    z-index:0;
}

.philosophy-slider .slides li > div:last-child {
    padding-top:100px;
    position:relative;
    z-index:1;
}

.philosophy-slider .slides li > div h1.t1 {
    font-size:26px;
    font-family: 'Spectral', "Songti SC", source-han-serif-sc, 宋体, Songti, SimSun, serif;
    font-weight:normal;
    margin:0 auto 15px auto;
    line-height: 1.4;
}

.philosophy-slider .slides li > div h2.t2 {
    font-size:40px;
    font-family: 'Open Sans', sans-serif;
    font-weight:normal;
    margin:0 auto 20px auto;
    line-height: 1.0;
}

.philosophy-slider .slides li > div hr {
    width:50px;
    border-color:#949494;
    margin:0 auto 40px auto;
}

.philosophy-slider .slides li > div.typography > p {
    max-width:780px;
}

.home-slider .slides,
.philosophy-slider .slides {
    transform: translate3d(0, 0, 0);
    /* force gpu */
}

.philosophy-slider .slides li * {
    color:#fff;
    text-shadow:1px 1px #000;
}

.homeslider-img {
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 0;
    left: 0;
    top: 0;
    background-position: center center;
    overflow: hidden;
}

.homeslider-text {
    position: relative;
    z-index: 1;
    min-height: 591px;
    max-width: 450px;
    width: 450px;
    overflow: hidden;
    display: none;
}

.homeslider-text.pos_Center {
    margin: 0 auto;
    /* padding: 0 20px; */
}

.homeslider-textxxx * {
    /* xxx delete */
    text-align: left;
}

.homeslider-textxxx.center * {
    /* xxx delete */
    text-align: center;
}

.homeslider-text .vc_target {
    margin-top: -100%;
    display: inline-block;
    width: 100%;
    box-sizing:border-box; 
    padding:20px 30px;
    /* text-shadow: 2px 2px #000; */
}

.homeslider-text .vc_target > *:last-child {
    margin-bottom:0;
}

.home-intro {
    padding: 60px 0;
}

.annoucement {
    background: #f0f0f0;
    position: relative;
    font-size: 0;
}

.annoucement.ann-event {
    background: #e7e7e7;
}

h2.announce-label {
    float: left;
    width: 100px;
    padding: 10px 0;
}

ul.annouce {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0;
    width: calc(100% - 100px);
    margin-left: 100px;
}

ul.annouce li {
    width: 32.16%;
    margin-right: 1.76%;
    display: inline-block;
    vertical-align: top;
}

ul.annouce li:first-child {
    padding-left: 1.76%;
    /* xxx also put same height for li js */
}

ul.annouce li:nth-child(3) {
    margin-right: 0;
}

.m_annoucement {
    display: none;
    border-bottom: 1px solid #e7e7e7;
}

.m_annoucement .wrapper {
    padding: 10px 0 10px 30px;
    background: url(../img/icon-info-small-1.png)no-repeat left 15px;
    background-size: 20px 20px;
}

.m_annoucement .wrapper.active {
    background: url(../img/icon-info-small-2.png)no-repeat left 15px;
    background-size: 20px 20px;
}

.m_annoucement a {
    display: block;
    padding: 0px 30px 0px 0px;
    background: url(../img/arrow-footer-down2.png)no-repeat right 10px;
    background-size: 30px 10px;
    color: #505050;
    cursor: pointer;
    font-size: 15px;
}

.m_annoucement a.active {
    color: #487091;
    background: url(../img/arrow-footer-up2.png)no-repeat right center;
    background-size: 30px 10px;
}

.annoucement .tab {
    padding: 10px 0 10px 30px;
    background: url(../img/icon-info-small-1.png)no-repeat left 15px;
    background-size: 20px 20px;
}

.annoucement .tab.active {
    background: url(../img/icon-info-small-2.png)no-repeat left 15px;
    background-size: 20px 20px;
}

.annoucement .tab a {
    display: block;
    padding: 0px 30px 0px 0px;
    background: url(../img/arrow-footer-down2.png)no-repeat right 10px;
    background-size: 30px 10px;
    color: #505050;
    cursor: pointer;
    border-right: 1px solid #bdbdbd;
    font-size: 15px;
}

ul.annouce li:nth-child(3) .tab a {
    border-right: 0;
}

.annoucement .tab a:hover {
    color: #487091;
}

.annoucement .tab a.active {
    color: #487091;
    background: url(../img/arrow-footer-up2.png)no-repeat right 10px;
    background-size: 30px 10px;
}

.close-announcement {
    float: right;
    font-size: 14px;
    cursor: pointer;
    margin-top: 8px;
}

.annoucement .tab-content {
    background: #e7e7e7;
    display: none;
}

.annoucement .event-slider {
    margin-bottom: 75px;
}

.annoucement .event-slider .tab-content {
    display: block;
}

.annoucement .tab-content .wrapper {
    padding: 25px 0 25px 111px;
    background: url(../img/icon-info.png)no-repeat left center;
    background-size: 70px 70px;
}

.annoucement .tab-content .wrapper * {
    text-align: left;
    padding-bottom: 0px;
    margin-bottom: 10px;
}

.annoucement .tab-content .wrapper p:last-child {
    margin-bottom: 0;
}

.annoucement .tab-content .date {
    color: #787878;
    font-size: 14px;
}

.annoucement .tab-content a img {
    margin-top: 8px;
}

.annoucement .event-slider .tab-content a img {
    width: 8px;
    display: inline-block;
}

.home-causes,
.home-impacts,
.latest-news-wrapper {
    padding: 60px 0;
    background: #fff;
    text-align: center;
}

.typography ul.home-causes-list,
.typography ul.home-causes-list li,
.typography ul.home-impacts-list,
.typography ul.home-impacts-list li {
    list-style:none;
    margin:0;
    padding:0;
}

.typography ul.home-causes-list,
.typography ul.home-impacts-list {
    display:flex;
    flex-flow: row;
    flex-wrap: wrap;
    justify-content: center;
}

.typography ul.home-causes-list li {
    flex: 0 0 calc(20% - 20px);
    margin: 10px 10px 30px 10px;
}

.typography ul.home-impacts-list li {
    flex: 0 0 calc(25% - 20px);
    margin: 10px 10px 30px 10px;
}

.typography ul.home-causes-list li img,
.typography ul.home-impacts-list li img {
    display:block;
    margin:0 auto 10px auto;
    max-width:100px;
    width:100%;
    height:auto;
}

.typography ul.home-impacts-list li h2 {
    margin-bottom:0;
}

.latest-news-wrapper .tabs {
    text-align: center;
    margin-bottom: 12px;
    margin-top: 30px;
}

.latest-news-wrapper .tabs a {
    padding: 3px 16px;
    display: inline-block;
    font-size: 15px;
    color: #000;
    text-align: center;
    margin: 0 5px 18px 5px;
    border: 1px solid #e2e2e2;
}

.latest-news-wrapper .tabs a:hover {
    color: #487091;
}

.latest-news-wrapper .tabs a.active {
    color: #fff;
    background: #204d72;
    border: 1px solid #204d72;
}

.latest-news-wrapper .tab-contents .item {
    display: none;
    text-align: left;
}

.latest-news-wrapper .tab-contents div .other-videos li .ttl a {
    margin-bottom: 30px;
}

.story-wrapper {
    padding: 60px 0;
    background: #f8f8f8;
}

.story-wrapper .tabs {
    text-align: center;
    margin-bottom: 17px;
    margin-top: 35px;
}

.story-wrapper .tabs a {
    display: inline-block;
    margin: 5px 30px 18px 30px;
    color: #c1c1c1;
    position: relative;
    cursor: pointer;
}

.story-wrapper .tabs a:hover,
.story-wrapper .tabs a.active {
    color: #487091;
}

.story-wrapper .tabs a img {
    margin-right: 10px;
    -webkit-filter: grayscale(100%) opacity(20%);
    filter: grayscale(100%) opacity(20%);
    display: inline-block;
    vertical-align: middle;
}

.story-wrapper .tabs a span {
    display: inline-block;
    vertical-align: middle;
}

.story-wrapper .tabs a:hover img,
.story-wrapper .tabs a.active img {
    -webkit-filter: opacity(100%);
    filter: opacity(100%);
}

.stories {
    background: #fff;
}

.stories .tab-content {
    position: relative;
    display: none;
}

.stories .tab-content:first-child {
    display: block;
}

.stories .tab-content h3,
.stories .tab-content h2 {
    margin-bottom: 15px;
}

.stories .tab-content .text {
    padding: 35px 33px;
    margin-left: 50%;
    text-align: center;
    min-height: 339px;
    position: relative;
    height: 100%;
}

.stories .tab-content .text span {
    display: block;
}

.stories .tab-content .image {
    position: absolute;
    height: 100%;
    width: 50%;
    text-align: center;
}

.stories .tab-content .text .icon {
    text-align: center;
}

.stories .tab-content .text .icon img {
    width: 50px;
    display: inline-block;
}

.stories .tab-content .text p:last-child {
    margin-bottom: 0;
}

.calltoaction-wrapper {
    min-height: 400px;
    padding: 40px 0px;
    text-align: center;
}

.calltoaction-wrapper .wrapper-inner-2.pos_Left {
    margin-left: 0;
}

.calltoaction-wrapper .wrapper-inner-2.pos_Right {
    margin-right: 0;
}

.calltoaction-wrapper .wrapper-inner-2>p:last-child {
    margin-bottom: 0;
}

.calltoaction-wrapper .btnxxx {
    /* xxx delete */
    margin: 0 10px 18px 0;
}

.latest-happening-wrapper {
    background: #f8f8f8;
    padding: 60px 0;
}

.latest-happening-wrapper h1 {
    margin-bottom: 30px;
}

.more-link,
.typography .more-link {
    color: #505050;
}

.more-link:hover,
.typography .more-link:hover {
    color: #487091;
}

.more-link img {
    margin-top: -3px;
    margin-left: 3px;
}

.latest-happening .item {
    text-align: center;
}

.latest-happening .item .ttl {
    margin-top: 10px;
    display: inline-block;
    color: #000;
}

.latest-happening .item a:hover .ttl {
    color: #487091;
}

.jingshiyu-wrapper {
    text-align: center;
    padding: 5px 0px;
    margin-bottom: 35px;
}

.jingshiyu-wrapper h1 {
    margin-bottom: 20px;
}

.footer-sitemap .jingshiyu-wrapper p {
    margin-bottom: 6px;
    font-size: 16px;
    line-height: normal;
    padding: 0;
}

.footer-sitemap .subscribe-wrapper h3,
.footer-sitemap .subscribe-wrapper p {
    margin-bottom: 5px;
    padding: 0;
}

.footer-sitemap .subscribe-wrapper h3 {
    font-family: 'Open Sans';
    margin-bottom: 0;
}
.footer-sitemap .subscribe-wrapper p {
    font-size:14px;
}
.bymaster-tag {
    font-size: 14px;
    color: #909090;
    line-height: 20px;
    margin: 4px 0;
    font-style: italic;
}

a.backtotop_btn {
    -webkit-transition: all .8s ease-in-out;
    -moz-transition: all .8s ease-in-out;
    -o-transition: all .8s ease-in-out;
    -ms-transition: all .8s ease-in-out;
    transition: all .8s ease-in-out;
    font-size: 16px;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    padding: 5px;
    background-image: url(../img/arrow-footer-up-white.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-color: rgba(0, 0, 0, 0.5);
    background-size: 17px 10px;
    position: fixed;
    right: -100%;
    bottom: 20px;
    z-index: 998;
    opacity: 0;
    -webkit-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
}

a.backtotop_btn.active {
    right: 20px;
    opacity: 1;
}

.breadcrumb {
    margin-top: 17px;
}

.breadcrumb .wrapper,
.breadcrumb a {
    font-size: 14px;
    color: #808080;
}

.breadcrumb .wrapper {
    padding-right: 100px;
    position: relative;
}

.breadcrumb a:hover {
    color: #28608e;
}

a.sharing {
    padding: 2px 15px;
    background: #7a7a7a;
    color: #fff;
    border-radius: 40px;
    -moz-border-radius: 40px;
    -webkit-border-radius: 40px;
    text-align: center;
    font-size: 14px;
    position: absolute;
    top: 0;
    right: 0;
}

a.sharing:hover {
    color: #fff;
    background: #28608e;
}

.banner {
    margin-bottom: 50px;
    margin-top:30px;
}

.banner img {
    width: 100%;
    height: auto;
}

.footer-sitemap {
    text-align: center;
    background: #c5c5c5;
    padding: 49px 0 32px 0;
}

.social {
    margin-bottom: 39px;
}

.social a {
    margin: 0 4px;
}

.footer-sitemap h3 {
    font-size: 20px;
    text-align: center;
    line-height: normal;
    margin-bottom: 16px;
}

.footer-sitemap p {
    padding-bottom: 24px;
    color: #505050;
    line-height:1.8em;
}

.open-sitemap {
    margin-top: 49px;
    line-height: 21px;
}

.open-sitemap span {
    font-size: 15px;
    cursor: pointer;
}

.open-sitemap span:hover {
    color: #616161;
}

.open-sitemap .f_arrow {
    background: url(../img/arrow-footer-down.png)no-repeat;
    background-size: 22px 12px;
    width: 22px;
    height: 12px;
    display: inline-block;
    margin-top: 7px;
}

.open-sitemap .f_arrow.active {
    background: url(../img/arrow-footer-up.png)no-repeat;
    background-size: 22px 12px;
    width: 22px;
    height: 12px;
}

.sitemap {
    font-size: 0;
    margin-top: 49px;
    display: none;
}

.sitemap .left-column {
    width: 22.794%;
    margin-right: 2.941%;
    display: inline-block;
    vertical-align: top;
}

.sitemap .middle-column {
    width: 48.529%;
    margin-right: 2.941%;
    display: inline-block;
    vertical-align: top;
    font-size: 0;
}

.sitemap .right-column {
    width: 22.794%;
    display: inline-block;
    vertical-align: top;
}

.sitemap ul,
.sitemap li {
    list-style: none;
    text-align: left;
    margin: 0;
    padding: 0;
}

.sitemap li {
    margin: 33px 0 0 0;
}

.sitemap p {
    font-size: 15px;
    line-height: 1;
    color: #303030;
    padding: 0;
}

.sitemap>div>ul>li>p {
    font-weight: bold;
    padding: 0 0 9px 18px;
    border-bottom: 1px solid #949494;
    margin-bottom: 25px;
}

.sitemap>div>ul>li>ul>li p,
.sitemap div.col2>ul>li p {
    padding-left: 18px;
    line-height: 20px;
    margin-bottom: 8px;
}

.sitemap>div>ul>li>ul>li>p,
.sitemap div.col2>ul>li>p {
    font-weight: bold;
    background: url(../img/arrow-footer-right.png)no-repeat left center;
    background-size: 7px 12px;
}

.sitemap div li li li,
.sitemap div li:first-child {
    margin-top: 0;
}

.sitemap a {
    color: #303030;
}

.sitemap a:hover {
    color: #28608e;
}

.sitemap .node,
.sitemap .news-node {
    margin-top: 0;
}

.sitemap .node p,
.sitemap .news-node p {
    font-weight: normal;
    background: none;
}

.sitemap .top-node+.top-node {
    /* only on consecutive */
    margin-top: 0;
}

.sitemap .top-node p {
    border: 0;
    margin-bottom: 8px;
}

.sitemap .footer-separator {
    border-bottom: 1px solid #949494;
    padding-bottom: 25px;
    margin-bottom: 33px;
}

.sitemap .middle-column>ul>li {
    font-size: 0;
}

.sitemap .middle-column .col2 {
    width: 50%;
    padding-right: 6.048%;
    display: inline-block;
    vertical-align: top;
}

.sitemap .middle-column .col2.last {
    padding-right: 0;
}

.sitemap hr,
.typography .sitemap hr {
    margin: 0px auto 30px auto;
}

.footer {
    background: #616161;
    padding: 25px 0;
    text-align: center;
}

:lang(en-SG) .footer .wrapper * {
    letter-spacing: 0.05em;
}

.footer .wrapper {
    text-align: left;
}

.footer .wrapper p {
    color: #fff;
    line-height: 22px;
    font-weight: 300;
    font-size: 13px;
    padding: 0;
    margin-bottom: 0;
}

.footer .wrapper a {
    font-size: 15px;
    color: #fff;
    display: inline-block;
    margin: 0 9px;
}

.footer .wrapper a:hover {
    color: #c5c5c5;
}

.footer .wrapper .right p {
    line-height: 40px;
}

.footer .wrapper::after {
    content: '';
    display: block;
    clear: both;
}

.footer .wrapper>.left {
    width: 60%;
}

.footer .wrapper>.right {
    width: 40%;
}

.note,
.typography .note {
    color: #204d72;
    font-size: 14px;
}

.input {
    /* xxx delete??? not in use? why not just target <input>??? */
    width: 84%;
    display: inline-block;
    *display: inline;
    zoom: 1;
    margin-bottom: 10px;
    vertical-align: top;
    text-align: left;
}

.txtfield {
    width: 100%;
    border: 1px solid #adadad;
    font-size: 16px;
    padding: 3px 8px;
}

.overlayobj {
    background-color: #FFF;
    padding: 34px;
    margin: 0 auto;
    width: 95%;
    max-width: 800px;
}

ul.accordion-list {
    list-style: none;
    padding: 0;
    margin: 0 0 45px 0;
}

ul.awards li {
    border-bottom: 1px solid #adadad;
}

.awards .acc-toggle {
    font-size: 0;
    cursor: pointer;
    background: url(../img/arrow-footer-down.png)no-repeat right center;
    background-size: 23px 13px;
    position: relative;
    padding-left: 106px;
}

.awards .acc-toggle.active {
    background: url(../img/arrow-footer-up.png)no-repeat right center;
    background-size: 23px 13px;
}

.awards .acc-toggle .year {
    font-size: 19px;
    font-weight: bold;
    width: /*13.5%*/
    106px;
    display: inline-block;
    vertical-align: top;
    padding: 12px 30px 12px 0;
    position: absolute;
    left: 0;
    top: 0;
}

.awards .acc-toggle .ttl {
    font-size: 19px;
    font-weight: bold;
    width: 86.5%;
    padding: 12px 0;
    display: inline-block;
    vertical-align: top;
}

.acc-content {
    padding: 25px 0 0px 65px;
    display: none;
}

ul.sg-timeline,
.typography ul.sg-timeline {
    list-style: none;
    padding: 0;
    margin: 0 0 33px 0;
}

ul.sg-timeline li {
    font-size: 0;
    position: relative;
    padding-left: 154px;
}

ul.sg-timeline .date {
    width: /* 15.29%*/
    154px;
    display: inline-block;
    vertical-align: top;
    font-size: 18px;
    padding-right: 10px;
    position: absolute;
    top: 0;
    left: 0;
}

ul.sg-timeline .event {
    width: 70.5%;
    display: inline-block;
    vertical-align: top;
    padding: 0 34px 0 50px;
    border-left: 1px solid #505050;
    position: relative;
}

ul.sg-timeline .event:before {
    content: '';
    background: url(../img/icon-timeline-dot.png)no-repeat;
    background-size: 15px 15px;
    width: 15px;
    height: 15px;
    position: absolute;
    left: -8px;
    top: 0;
}

ul.sg-timeline .photo {
    width: /*24.51%*/
    29.5%;
    display: inline-block;
    vertical-align: top;
    padding-bottom: 45px;
}

ul.sg-timeline .photo img {
    width: 100%;
    height: auto;
}

ul.sg-timeline li:last-child .photo {
    padding-bottom: 0px;
}

ul.sg-timeline li:last-child .event:after {
    content: '';
    background: url(../img/icon-timeline-grey-dot.png)no-repeat;
    background-size: 9px 9px;
    width: 9px;
    height: 9px;
    position: absolute;
    left: -5px;
    bottom: 0;
}

.typography ul.master-teaching-videos {
    list-style: none;
    padding: 0;
    margin: 35px 0 0 0;
    width: 100%;
}

.typography ul.master-teaching-videos li {
    font-size: 0;
    margin-bottom: 26px;
}

ul.master-teaching-videos li .video,
ul.master-teaching-videos li iframe {
    width: 48%;
    display: inline-block;
    vertical-align: top;
    position: relative;
    cursor: pointer;
}

ul.master-teaching-videos li div.video {
    position: relative;
    height: 0;
    padding-bottom: 27%;
}

ul.master-teaching-videos li iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

ul.master-teaching-videos li a.video:after {
    content: "";
    background: rgba(0, 0, 0, 0.7) url(../img/icon-play.png)no-repeat center center;
    width: 61px;
    height: 61px;
    background-size: 24px 28px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -30px;
    border-radius: 50%;
}

ul.master-teaching-videos li a.video:hover:after {
    background-color: rgba(204, 24, 30, 0.7);
}

ul.master-teaching-videos li a.video img {
    width: 100%;
    height: auto;
}

ul.master-teaching-videos li .text {
    padding-left: 30px;
    width: 52%;
    display: inline-block;
    vertical-align: top;
}

ul.master-teaching-videos li .text p {
    margin-bottom: 10px;
}

ul.master-teaching-videos li .text h3 {
    text-align: left;
    margin-bottom: 15px;
}

ul.master-teaching-videos li .text a img {
    margin-top: -5px;
}

div.master-articles,
.typography div.three-columns-div.master-articles {
    margin-bottom: 3px;
}

div.master-articles span {
    display: block;
    color: #303030;
    padding: 15px 13px;
    background: #ececec;
    font-size: 18px;
}

div.master-articles a:hover span {
    background: #e4e3e3;
    color: #487091;
}

ul.news-report-list {
    list-style: none;
    padding: 0;
    margin: 0 0 33px 0;
}

.typography ul.media-report-list {
    padding: 0;
}

.typography ul.media-report-list li {
    font-size: 0;
    margin-bottom: 30px;
    position: relative;
    padding-left: 110px;
}

ul.media-report-list li .date {
    width: 16.38%;
    display: inline-block;
    vertical-align: top;
    position: absolute;
    left: 0;
    top: 0;
}

ul.media-report-list li .divider {
    width: 5.797%;
    display: inline-block;
    vertical-align: top;
}

ul.media-report-list li .text {
    width: 94.203%;
    display: inline-block;
    vertical-align: top;
    padding-left: 15px;
    color: #505050;
    font-size: 14px;
}

ul.media-report-list li .text .ttl {
    color: #000000;
    font-size: 16px;
    display: block;
    font-weight: bold;
    margin-bottom: 8px;
}

ul.media-report-list li .text a {
    display: inline-block;
    vertical-align: middle;
    padding: 4px 10px;
    border: 1px solid #adadad;
    font-size: 13px;
    line-height: 1;
    text-align: center;
    color: #505050;
}

ul.media-report-list li .text a:hover {
    background: #ebeaea;
}

ul.media-report-list li .divider hr {
    margin: 13px auto 13px auto;
}

.job-list li,
.faq-list li {
    margin-bottom: 13px;
    font-weight: bold;
}

.job-list li a,
.faq-list li a {
    font-size: 18px;
    color: #000;
    font-weight: bold;
}

.job-list li a:hover,
.faq-list li a:hover {
    color: #204d72;
}

.tbl {
    width: 78.431%;
    margin: 0 auto 43px auto;
}

.tbl td,
.jobs tr th,
.faq tr th {
    text-align: left;
    background: #ececec;
    border-bottom: 2px solid #fff;
    border-collapse: collapse;
    padding: 15px 20px;
}

.jobs tr th {
    position: relative;
}

.jobs tr th div {
    font-size: 14px;
    font-weight: normal;
    padding-right: 120px;
    width: 100%;
}

.jobs tr th .ttl,
.faq tr th .ttl {
    font-weight: bold;
    font-size: 18px;
    display: block;
}

.jobs tr th a {
    float: right;
    margin-top: 10px;
    font-weight: normal;
    position: absolute;
    top: 15px;
    right: 20px;
}

.jobs tr td:first-child {
    width: 25.88%;
    background: #d5d5d5;
    font-weight: bold;
}

.jobs tr td ul:last-child,
.faq tr td ul:last-child,
.faq tr td p:last-child {
    margin-bottom: 0;
}

.jobs tr td ul li,
.faq tr td ul li {
    margin-bottom: 8px;
}

.jobs tr td ul li:last-child,
.faq tr td ul li:last-child {
    margin-bottom: 0;
}

ul.related-news li .ttl a {
    font-size: 18px;
    font-weight: bold;
    display: block;
    margin-bottom: 8px;
}

ul.column-5 {
    list-style: none;
    padding: 0;
    font-size: 0;
    margin: 0 -0.704% 33px -0.704%;
    width: 101.408%;
}

ul.column-5 li {
    width: 18.592%;
    display: inline-block;
    vertical-align: top;
    margin: 0 0.704% 1.408% 0.704%;
}

ul.projects li a {
    display: block;
    position: relative;
    text-align: center;
    width: 100%;
    overflow: hidden;
}

ul.projects li a:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.2);
    width: 100%;
    height: 100%;
    z-index: 1;
}

/*ul.projects li a:hover:after{background:rgba(0,0,0,0);}*/

ul.projects li a .thumbnail {
    overflow: hidden;
}

ul.projects li a img {
    width: 100%;
    height: auto;
    z-index: 0;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

ul.projects li a span {
    position: absolute;
    z-index: 2;
    left: 0;
    top: 45%;
    width: 100%;
    display: block;
    text-align: center;
    color: #fff;
    font-weight: bold;
}

ul.projects li a:hover img {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1 1.1);
}

.bar {
    height: 13px;
    width: 4px;
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    margin-top: -3px;
}

.bar.grey {
    background: #909090;
}

.bar.white {
    background: #fff;
}

.sepbar {
    vertical-align: text-bottom;
}

.featured_album {
    font-size: 0;
    margin-bottom: 40px;
}

.featured_album .cover {
    width: 64.71%;
    display: inline-block;
    vertical-align: top;
    min-height: 440px;
    cursor: pointer;
}

.featured_album .info {
    width: 35.29%;
    display: inline-block;
    vertical-align: top;
    background: #444444;
    padding: 52px 30px 30px 30px;
}

.featured_album .info *,
.typography .featured_album .info * {
    color: #fff;
    text-align: left;
}

.featured_album h2 a:hover,
.typography .featured_album h2 a:hover {
    color: #60a0d5;
}

.tag,
.typography .tag {
    font-size: 13px !important;
    color: #909090;
    line-height: 20px !important;
    margin: 4px 0;
}

.tag a,
.typography .tag a {
    color: #909090;
}

.medium-tag {
    font-size: 15px;
    font-weight: 400;
    text-align: center;
    margin-bottom: 25px;
    color: #505050;
}

.paging,
.search-paging {
    padding: 0;
    margin-bottom: 25px;
    font-size: 0;
    border-bottom: 1px solid #adadad;
    text-align: right;
}

.paging *,
.search-paging * {
    font-size: 13px;
}

.paging .page,
.paging .navigation,
.search-paging .page,
.search-paging .navigation {
    display: inline-block;
    vertical-align: top;
}

.paging .page,
.search-paging .page {
    display: inline-block;
    vertical-align: bottom;
    border: 1px solid #adadad;
    padding: 4px 8px 5px 8px;
    font-size: 13px;
    line-height: 1;
    color: #505050;
    border-bottom: 0;
    border-right: 0;
}

@-moz-document url-prefix() {
    .paging .page,
    .search-paging .page {
        padding: 5px 8px 5px 8px;
    }
}

.paging .navigation,
.search-paging .navigation {
    text-align: right;
    font-size: 0;
}

.navigation a {
    display: inline-block;
    vertical-align: bottom;
    border: 1px solid #adadad;
    padding: 5px 8px;
    font-size: 13px;
    line-height: 1;
    color: #505050;
    font-size: 12px;
    border-bottom: 0;
}

.navigation .prev-btn {
    border-right: 0;
}

.navigation a:hover,
.navigation a.disabled {
    background: #ebebeb;
}

.typography p.singlecell {
    text-align: center;
    padding: 100px 0;
    min-height: 400px;
}

ul.album {
    /* xxx delete */
    margin: 0;
}

div.album .cover a {
    display: block;
    padding: 0 6px 2px 0;
    margin-bottom: 8px;
    position: relative;
}

div.album .cover a img {
    border: 1px solid #707070;
    z-index: 2;
    position: relative;
}

div.album .cover a:after {
    content: "";
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 0;
    border: 0;
    background: url(../img/album.png)no-repeat right bottom;
    width: 100%;
    height: 0;
    padding-bottom: 68.376%;
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
}

ul.album p {
    /* xxx delete */
    padding-bottom: 13px !important;
}

ul.album li {
    /* xxx delete */
    margin-bottom: 20px;
}

ul.album li .ttl a {
    /* xxx delete */
    font-size: 18px;
    font-weight: bold;
    display: block;
}

.video-wrapper h2 {
    /* xxx delete */
    margin-bottom: 0px;
    text-align: left;
}

.series-ttl,
.typography .series-ttl {
    font-size: 14px;
}

.video-info {
    font-size: 0;
    width: 78.431%;
    margin: 0 auto 30px auto;
}

.typography .video-info p {
    display: inline-block;
    vertical-align: top;
    margin: 0 30px 0 0;
    font-size: 14px;
}

.video-info>p:last-child {
    margin-right: 0;
}

.video-wrapper>p:first-child {
    margin-bottom: 18px;
}

.video-wrapper .more-description {
    display: none;
}

.video-wrapper h2.align-left {
    margin-bottom: 0;
}

.video-wrapper .more-description p {
    margin-bottom: 30px;
}

.video-wrapper .read-more {
    cursor: pointer;
    display: block;
    background: #ececec;
    color: #909090;
    text-align: center;
    font-size: 13px;
    width: 78.431%;
    margin: 0 auto 30px auto;
}

.video-wrapper .read-more:hover {
    background: #e4e3e3;
    color: #487091;
}

.video-wrapper a.category,
.video-wrapper a.organiser,
.video-wrapper .series-ttl a {
    color: #303030;
}

.video-wrapper a.category:hover,
.video-wrapper a.organiser:hover,
.video-wrapper .series-ttl a:hover {
    color: #487091;
}

.other-video-wrapper h3,
.other-series-wrapper h3 {
    /* xxx ddelete */
    text-align: left;
}

div.other-videos .type {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    display: inline-block;
    background: rgba(22, 85, 143, 0.8);
    color: #fff;
    padding: 7px 13px;
    line-height: 1;
    font-size: 13px;
}

.typography div.three-columns-div.other-videos p,
.typography div.four-columns-div.other-videos p {
    position: relative;
    margin: 0;
}

.typography div.other-videos p.cover {
    margin-bottom: 10px;
}

div.other-videos .ttl {
    margin-bottom: 8px;
}

div.other-videos p .playbtn {
    position: absolute;
    z-index: 1;
    right: 10px;
    bottom: 10px;
    display: inline-block;
    color: #fff;
    line-height: 1;
    font-size: 13px;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    padding: 5px;
    text-align: center;
    background: url(../img/icon-play.png)no-repeat 14px center;
    background-color: rgba(0, 0, 0, 0.7);
    background-size: 11px 13px;
}

ul.other-videos p .duration img {
    width: 8px;
    height: auto;
    margin-top: -2px;
}

ul.other-videos .tag {
    margin: 0;
}

.video-series .ttl {
    display: block;
    background: #ececec;
    padding: 20px 15px;
    width: 100%;
    box-sizing: border-box;
}

.video-series .item a:hover .ttl {
    background: #e4e3e3;
}

.video-series .item a:hover .ttl h4 {
    color: #487091;
}

.video-series .ttl h4 {
    margin-bottom: 0;
}

.video-series div img {
    width: 100%;
    height: auto;
}

.featured-slider {
    margin-bottom: 75px;
    min-height: 372px;
}

.featured-slider .slides {
    transform: translate3d(0, 0, 0);
    /* force gpu */
}

.featured-slider .slider-img {
    position: relative;
    min-height: 372px;
}

.slider-img {
    width: 100%;
}

.slider-text *,
.typography .slider-text * {
    color: #fff;
    text-align: left;
}

.slider-text {
    margin-left: 60.98%;
    padding: 30px 50px 30px 20px;
    z-index: 1;
    min-height: 372px;
}

.slider-text div {
    margin-top: -100%;
}

/* forms */

.filter {
    text-align: center;
    margin-bottom: 37px;
}

.filter div,
.filter label {
    display: inline-block;
    font-size: 15px;
    line-height: 31px;
    vertical-align: middle;
}

.filter>div.field {
    width: 15%;
    min-width: 120px
}

.filter>div.field#Form_FilterForm_Month_Holder,
.filter>div.field#Form_FilterForm_Year_Holder {
    width: 5%;
    min-width: 100px;
}

.filter label {
    display: none;
}

.filter label.readonly {
    display: inline-block;
    font-weight: bold;
    margin-right: 20px;
}

.filter .dropdown>.middleColumn {
    width: 100%;
    background: #fff;
    border: 1px solid #adadad;
    position: relative;
}

.filter select {
    width: 100%;
    background: none;
    font-size: 15px;
    border: 0;
    outline: 0;
    padding: 2px 8px;
    cursor: pointer;
    height: 31px;
    line-height: normal;
    -webkit-appearance: none;
}

.filter .dropdown>.middleColumn:after {
    content: '';
    background: #fff url(../img/arrow-footer-down2.png) no-repeat right center;
    background-size: 33px 11px;
    display: block;
    position: absolute;
    width: 35px;
    height: 31px;
    right: 0;
    top: 0;
    pointer-events: none;
}

.typography .filter input.action {
    padding: 7px 15px;
    background: #7a7a7a;
    min-width: 60px;
    font-size: 15px;
    color: #fff;
    margin-bottom: 0;
}

.typography .filter .action:hover {
    background: #979696;
}

#Form_ContactForm {
    width: 78.431%;
    margin: 0 auto;
}

#Form_ContactForm label {
    line-height: 35px;
    width: 16%;
    display: inline-block;
    *display: inline;
    zoom: 1;
    font-weight: bold;
    text-align: left;
}

#Form_ContactForm .middleColumn {
    width: 84%;
    display: inline-block;
    zoom: 1;
    margin-bottom: 10px;
    vertical-align: top;
    text-align: left;
}

#Form_ContactForm input.text,
#Form_ContactForm textarea {
    width: 100%;
    border: 1px solid #adadad;
    font-size: 16px;
    padding: 3px 8px;
}

#Form_ContactForm .dropdown .middleColumn {
    background: #fff;
    border: 1px solid #adadad;
    position: relative;
    line-height: 33px;
}

#Form_ContactForm select {
    width: 100%;
    background: none;
    font-size: 16px;
    border: 0;
    outline: 0;
    padding: 3px 8px;
    cursor: pointer;
}

#Form_ContactForm .dropdown>.middleColumn:after {
    content: '';
    background: #fff url(../img/arrow-footer-down2.png) no-repeat right center;
    background-size: 33px 11px;
    display: block;
    position: absolute;
    width: 35px;
    height: 31px;
    right: 0;
    top: 0;
    pointer-events: none;
}

#Form_ContactForm .Actions {
    padding-left: 16%;
}

#Form_ContactForm div.recaptcha {
    padding-left: 16%;
    margin-bottom: 10px;
}

body.page_EventSectionPage #Form_FilterForm .Actions {
    display: none;
}

#calendarfilter .ui-datepicker {
    width: 100%;
    padding: .8em;
}

form.userform .left {
    margin-bottom: 0;
}

#MemberLoginForm_LoginForm,
#MemberLoginForm_LostPasswordForm,
form.userform,
#Form_VolunteerForm {
    width: 78.431%;
    margin: 0 auto 20px auto;
}

#Form_VolunteerForm p.note {
    margin-bottom: 10px;
}

#MemberLoginForm_LoginForm div.field,
#MemberLoginForm_LostPasswordForm div.field,
form.userform div.field,
form.userform fieldset.field,
#Form_VolunteerForm div.field,
#Form_VolunteerForm fieldset.field {
    margin-bottom: 10px;
    font-size: 0;
}

#Form_VolunteerForm div.field.optionset {
    margin-bottom: 0;
}

form.userform .right-title {
    font-size: 16px;
}

#MemberLoginForm_LoginForm label,
#MemberLoginForm_LostPasswordForm label {
    font-weight: bold;
    font-size: 16px;
    float: none;
    display: inline-block;
}

#MemberLoginForm_LoginForm label.left,
#MemberLoginForm_LostPasswordForm label.left {
    width: 110px;
}

form.userform label,
form.userform legend,
#Form_VolunteerForm label {
    font-size: 16px;
    float: none;
    display: inline-block;
}

form.userform label.left,
form.userform legend.left,
#Form_VolunteerForm label.left {
    display: block;
    vertical-align: middle;
    font-weight: bold;
}

form.userform .textarea label.left,
#Form_VolunteerForm .textarea label.left {
    vertical-align: top;
    padding-top: 3px;
}

form.userform .checkbox label.left {
    width: auto;
    font-size: 13px;
}

form.userform .field.hiddentitle label.left {
    display: none;
}

form.userform legend.left {
    /* browsers cant style legend as inline-block; if require left-positioned, use float left instead of inline-block */
    margin-bottom: 0;
}

#Form_VolunteerForm div.field.required label.left:after {
    content: "*";
}

#MemberLoginForm_LoginForm .middleColumn,
#MemberLoginForm_LostPasswordForm .middleColumn {
    font-size: 16px;
    display: inline-block;
    width: 80%;
}

form.userform .middleColumn,
#Form_VolunteerForm .middleColumn,
#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn .fieldholder-small {
    display: block;
    line-height: 31px;
    vertical-align: middle;
}

form.userform fieldset.CompositeField>.middleColumn {
    display: block;
}

#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn {
    font-size:0;
}

form.userform fieldset.optionset .middleColumn>div,
#Form_VolunteerForm fieldset.optionset .middleColumn>div {
    display: inline-block;
    margin-right: 20px;
}

form.userform fieldset.checkboxset .middleColumn>div,
#Form_VolunteerForm fieldset.checkboxset .middleColumn>div {
    margin-top: 6px;
}

form.userform .dropdown>.middleColumn,
#Form_VolunteerForm .dropdown>.middleColumn,
#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn .fieldholder-small {
    background: #fff;
    border: 1px solid #adadad;
    position: relative;
    display: inline-block;
}

#Form_VolunteerForm ul.optionset,
#Form_VolunteerForm ul.optionset li {
    list-style: none;
    margin: 0;
    padding: 0;
}

form.userform fieldset.optionset .middleColumn label,
#Form_VolunteerForm .field.optionset .middleColumn label {
    font-size: 13px;
    cursor: pointer;
}

#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn .fieldholder-small label {
    display:none;
}

form.userform fieldset.optionset input.radio,
#Form_VolunteerForm fieldset.optionset input.radio {
    margin-right: 5px;
    vertical-align: middle;
    cursor: pointer;
}

form.userform select,
#Form_VolunteerForm select {
    width: 100%;
    background: none;
    font-size: 15px;
    border: 0;
    outline: 0;
    padding: 2px 25px 2px 8px;
    cursor: pointer;
}

form.userform .dropdown>.middleColumn:after,
#Form_VolunteerForm .dropdown>.middleColumn:after,
#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn .fieldholder-small:after {
    content: '';
    background: #fff url(../img/arrow-footer-down2.png) no-repeat right center;
    background-size: 33px 11px;
    display: block;
    position: absolute;
    width: 35px;
    height: 31px;
    right: 0;
    top: 0;
    pointer-events: none;
}

#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn > .fieldgroup-field {
    display:inline-block;
    margin-right:10px;
    width:calc((100% - 20px) / 3);
}

#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn > .fieldgroup-field.last {
    margin-right:0;
}

#Form_VolunteerForm .fieldgroup.volopp-group > .middleColumn > .fieldgroup-field .fieldholder-small {
    width:100%;
    overflow:hidden;
}

#MemberLoginForm_LoginForm input[type='checkbox']+label {
    font-size: 13px;
}

#MemberLoginForm_LoginForm input.text,
#MemberLoginForm_LostPasswordForm input.text,
form.userform input.text,
form.userform textarea.textarea,
#Form_VolunteerForm input.text,
#Form_VolunteerForm input.postalcode,
#Form_VolunteerForm textarea.textarea,
#Form_SubscribeForm input.text {
    padding: 2px 8px;
    background: #fff;
    border: 1px solid #adadad;
    width: 250px;
}

form.userform input.text,
form.userform textarea.textarea,
#Form_VolunteerForm input.text,
#Form_VolunteerForm textarea.textarea {
    width: 100%;
}

#MemberLoginForm_LoginForm div.checkbox,
#MemberLoginForm_LoginForm .Actions,
#MemberLoginForm_LostPasswordForm .Actions {
    margin-left: 110px;
}

form.userform .Actions,
#Form_VolunteerForm .Actions {
    width: 100%;
}

#Form_VolunteerForm #Form_VolunteerForm_Agreement_Holder {
    margin-top: 30px;
}

#Form_VolunteerForm .fieldgroup.spokenlang-group > .middleColumn .first label.fieldholder-small-label {
    display:none;
}

#Form_VolunteerForm .fieldgroup.spokenlang-group > .middleColumn .last > .fieldholder-small {
    font-size:0;
}

#Form_VolunteerForm .fieldgroup.spokenlang-group > .middleColumn .last > .fieldholder-small label {
    width:80px;
    padding-left:20px;
}

#Form_VolunteerForm .fieldgroup.spokenlang-group > .middleColumn .last > .fieldholder-small input {
    width: 400px;
    display: inline-block;
    min-width: 200px;
}

#MemberLoginForm_LoginForm .Actions input,
#MemberLoginForm_LostPasswordForm .Actions input,
form.userform .Actions input {
    display: inline-block;
    text-align: center;
    line-height: 1;
    color: #fff;
    border: 0;
    box-sizing: border-box;
    border-radius: 3px;
    -webkit-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
    min-width: 90px;
    text-decoration: none;
    padding: 7px 15px;
    background: #7a7a7a;
    min-width: 60px;
    font-size: 15px;
}

#MemberLoginForm_LoginForm .Actions input:hover,
#MemberLoginForm_LostPasswordForm .Actions input:hover,
form.userform .Actions input:hover {
    background: #979696;
}

form.userform .Actions>input {
    margin-left: 10px;
}

form.userform .Actions>input:first-child {
    margin-left: 0;
}

#MemberLoginForm_LoginForm #ForgotPassword {
    font-size: 80%;
}

.subscribe_o {
    text-align: center;
}

.subscribe_o .typography>p {
    width: auto;
}

#Form_SubscribeForm {
    text-align: center;
}

#Form_SubscribeForm>fieldset {
    max-width: 530px;
    margin: 0 auto;
    font-size: 0;
    letter-spacing: 0;
}

#Form_SubscribeForm * {
    font-size: 14px;
}

#Form_SubscribeForm>fieldset>div.field:first-child,
#Form_SubscribeForm>fieldset>div.field:nth-child(2) {
    display: inline-block;
    width: 40%;
}

#Form_SubscribeForm>fieldset>div.field:nth-child(2) {
    width: 58%;
    margin-left: 2%;
}

#Form_SubscribeForm>fieldset>div.field:nth-child(3) {
    text-align: center;
}

#Form_SubscribeForm label.left {
    display: none;
}

#Form_SubscribeForm label.right {
    float: none;
}

/*
xxx todo footer:
    split footer into left/right
    responsive form

*/

#Form_SubscribeForm input.text {
    padding: 3px 8px;
    width: 100%;
}

#Form_SubscribeForm input[type='checkbox']+label,
#Form_SubscribeForm input[type='checkbox']:checked+label {
    width: auto;
    display: inline-block;
    background-position: left 7px;
}

#Form_SubscribeForm div.Actions {
    text-align: center;
}

#Form_SubscribeForm div.Actions .btn-footer {
    background: transparent;
    color: #505050;
    text-transform: uppercase;
}

#Form_SubscribeForm div.Actions .btn-footer:disabled {
    color: #a0a0a0;
    border-color: #a0a0a0;
    cursor: not-allowed;
}

#Form_SubscribeForm div.Actions .btn-footer:not(:disabled):hover {
    background: #505050;
    color: #c5c5c5;
}

#Form_SubscribeForm_error {
    color: red;
    text-align: center;
    margin: 0;
}

#Form_SubscribeForm ::-webkit-input-placeholder {
    font-style: italic;
}

#Form_SubscribeForm :-moz-placeholder {
    font-style: italic;
}

#Form_SubscribeForm ::-moz-placeholder {
    font-style: italic;
}

#Form_SubscribeForm :-ms-input-placeholder {
    font-style: italic;
}

#SearchForm_SearchForm {
    width: 532px;
    position: relative;
    background: #fff;
    text-align: left;
    margin-top: -100%;
    font-size: 0;
}

#SearchForm_SearchForm fieldset,
#SearchForm_SearchForm div,
#Form_CustomSearchForm fieldset,
#Form_CustomSearchForm div {
    display: inline-block;
}

#Form_CustomSearchForm .field.text,
#Form_CustomSearchForm .field.text > .middleColumn {
    display: block;
}

#SearchForm_SearchForm label.left,
#Form_CustomSearchForm label.left {
    display: none;
}

#SearchForm_SearchForm input.text {
    padding: 12px 15px 12px 15px;
    background-color: #fff;
    border: 0;
    font-size: 20px;
    width: 479px;
    display: inline-block;
    zoom: 1;
    vertical-align: top;
    outline: none;
}

#SearchForm_SearchForm input.action {
    display: inline-block;
    zoom: 1;
    vertical-align: top;
    width: 52px;
    height: 51px;
    font-size: 0;
    border: 0;
    background: url(../img/icon-search2.png)no-repeat center center #fff;
    background-size: 25px 27px;
}

form .error.message,
form .bad.message,
form .validation.message {
    color: red;
    font-size: 14px;
    padding-left: 10px;
}

form div.recaptcha .validation.message {
    display: block;
    margin-top: -5px;
    margin-bottom: 10px;
}

form input[type=reset] {
    background-color: transparent !important;
    background-image: url(../img/reset.png) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    min-width: auto !important;
    box-shadow: none !important;
    text-indent: -1000px;
}

form.eventfilter input[type=reset] {
    float: right !important;
    background-size: 14px 14px !important;
    padding: 4px 10px !important;
}

/* forms end */

/* search results */

.searchResults .search-paging {
    width: 78.431%;
    margin-left: auto;
    margin-right: auto;
}

.typography ul#SearchResults {
    list-style: none;
    padding: 0;
    font-size: 0;
}

.typography ul#SearchResults li {
    display: block;
    font-size: 16px;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #cdcdcd;
}

.typography ul#SearchResults li:last-child {
    border:0;
}

.typography ul#SearchResults h4 {
    text-align: left;
}

.typography ul#SearchResults li p {
    margin-bottom:10px;
}

.typography ul#SearchResults li p:last-child {
    line-height: 1.2em;
}

.typography ul#SearchResults li p + a {
    font-size:14px;
}

/* search results end */

.featured-local-news {
    background: #fff;
    font-size: 0;
    margin-bottom: 30px;
    position: relative;
    display: table;
    border-collapse: collapse;
    min-height: 339px;
    height: 339px;
    width: 100%;
}

.featured-local-news a.pic {
    width: 50%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
}

.featured-local-news .text {
    display: table-cell;
    vertical-align: middle;
    padding: 22px 27px 22px 27px;
}

.featured-local-news .text h6 {
    background: #487091;
    color: #fff;
    display: inline-block;
    line-height: 16px;
    padding: 4px 8px;
    margin-bottom: 8px;
    font-weight: normal;
}

.featured-local-news .text p,
.featured-local-news .text h2 {
    padding-bottom: 0;
    margin-bottom: 5px;
    text-align: left;
}

.featured-local-news .text p:last-child {
    margin-bottom: 0px;
}

.featured-local-news .text .date,
ul.local-news li .date {
    font-size: 13px;
    color: #487091;
}

ul.local-news .ttl a {
    font-size: 18px;
    font-weight: bold;
    display: block;
    margin-bottom: 8px;
}

ul.local-news li p {
    padding: 0 0 0 0;
}

.typography div.three-columns-div.local-news>div>p:nth-child(3) {
    margin: 0;
}

ul.local-news li .cover,
div.local-news li .cover {
    margin-bottom: 18px;
}

.layout-with-side {
    font-size: 0;
}

.flex-layout {
    display:flex;
    flex-flow: row;
}

.layout-with-side .main {
    width: 64.71%;
    display: inline-block;
    vertical-align: top;
}

.flex-layout .main {
    flex-basis: 64.71%;
    order:-1;
}

.layout-with-side .side {
    width: 35.29%;
    display: inline-block;
    vertical-align: top;
    padding-left: 5%;
}

.flex-layout .side {
    flex-basis: 30.29%;
    margin-left:5%;
}

.flex-layout>.poster {
    display:none;
}

.flex-layout>.main>img.poster,
.flex-layout>.poster>img {
    display:block;
    width:100%;
    max-width:100%;
    height:auto;
    margin-bottom:30px;
}

.layout-with-side .side .box,
.flex-layout .side .box {
    background: #ececec;
    padding: 28px;
    margin-bottom: 10px;
}

.layout-with-side .side .box:last-child,
.flex-layout .side .box:last-child {
    margin-bottom: 0;
}

.layout-with-side .side .box.white,
.flex-layout .side .box.white {
    background: #fff;
}

.layout-with-side .side p,
.flex-layout .side p {
    margin-bottom: 18px;
}

.event .layout-with-side .side hr, 
.event .flex-layout .side hr {
    margin: 23px auto 30px auto;
    display: block;
}

.event .layout-with-side .side .box .event-date,
.event .flex-layout .side .box .event-date {
    background: url(../img/icon-calendar.png)no-repeat left 4px;
    background-size: 18px 18px;
    padding-left: 29px;
}

.event .layout-with-side .side .box .event-time,
.event .flex-layout .side .box .event-time {
    background: url(../img/icon-time.png)no-repeat left 4px;
    background-size: 18px 18px;
    padding-left: 29px;
}

.event .layout-with-side .side .box .event-venue,
.event .flex-layout .side .box .event-venue {
    background: url(../img/icon-location.png)no-repeat left 4px;
    background-size: 18px 26px;
    padding-left: 29px;
}

.event .layout-with-side .side .box .event-detail .ttl,
.event .flex-layout .side .box .event-detail .ttl {
    font-size: 13px;
    font-weight: bold;
}

.event .layout-with-side .side .box .event-detail span,
.event .flex-layout .side .box .event-detail span {
    display: block;
}

.news-article h4 {
    margin-bottom: 35px;
}

.news-article h5,
.news-article h1 {
    margin-bottom: 7px;
}

.news-article .news-intro {
    margin-bottom: 25px;
    width: 80%;
}

.article-info {
    font-size: 14px;
    color: #505050;
    margin-bottom: 0
}

.article-info span {
    display: inline-block;
}

.photo-captionxxx {
    font-size: 13px;
    font-style: italic;
    color: #808080;
    display: block;
    line-height: 22px;
    padding: 4px 0;
}

.share_wrap {
    position: absolute;
    right: 0;
    top: 40px;
    display: none;
    z-index: 100;
}

.share {
    margin-top: 5px;
}

.share .share_mobile {
    display: none;
}

.share a,
.share_wrap a {
    display: inline-block;
    vertical-align: middle;
    margin-left: 8px;
    position: relative;
}

.share .share_wechat,
.share_wrap .share_wechat {
    display: none;
    position: absolute;
    width: 90px;
    height: 90px;
    left: -31px;
    top: 41px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
}

.share .share_wechat:before,
.share_wrap .share_wechat:before {
    content: "";
    border-style: solid;
    border-width: 0 10px 15px 10px;
    border-color: transparent transparent #fff transparent;
    position: absolute;
    top: -15px;
    left: 38px;
}

.layout-with-side .side .inner {
    border-left: 1px solid #d9d9d9;
    padding-left: 40px;
}

.layout-with-side .side .s-ttl {
    font-weight: bold;
    margin-bottom: 30px;
}

ul.latest-article,
.typography ul.latest-article {
    margin: 0 0 18px 0;
    list-style: none;
    padding: 0;
}

ul.latest-article li,
.typography ul.latest-article li {
    margin-bottom: 20px;
    padding: 0 0 0 19px;
    background: url(../img/arrow-footer-right.png)no-repeat left 8px;
    background-size: 7px 13px;
}

ul.latest-article li:last-child,
.typography ul.latest-article li:last-child {
    margin-bottom: 0;
}

ul.latest-article li a,
.typography ul.latest-article li a {
    color: #000;
    font-size: 15px;
}

ul.latest-article li a:hover,
.typography ul.latest-article li a:hover {
    color: #487091;
}

.layout-with-side-left {
    font-size: 0;
}

.layout-with-side-left .side {
    margin-right: 1.96%;
    width: 23.53%;
    display: inline-block;
    vertical-align: top;
}

.layout-with-side-left .main {
    width: 74.51%;
    display: inline-block;
    vertical-align: top;
}

.layout-with-side-left .side .box {
    background: #ececec;
    padding: 17px;
    margin-bottom: 13px;
}

.m_filter {
    width: 50%;
    margin-left: 50%;
    background: #fff url(../img/arrow-footer-down2.png) no-repeat right center;
    background-size: 33px 11px;
    border: 1px solid #adadad;
    padding: 4px 8px;
    cursor: pointer;
}

.typography div.three-columns-div.event-list div p {
    margin-bottom: 7px;
}

.typography div.three-columns-div.event-list div p.cover {
    margin-bottom: 12px;
}

.typography div.three-columns-div.event-list div .ttl {
    margin-bottom: 7px;
    text-align: left;
}

.typography div.three-columns-div.event-list div .event-info * {
    font-size: 13px;
    color: #487091;
    display: block;
    line-height: 18px;
}

.eventfilter label.left,
.event-filter-wrapper .s-ttl {
    float: none;
    display: block;
    font-size: 16px;
    font-weight: bold;
    border-bottom: 1px solid #adadad;
    padding-bottom: 7px;
    margin-bottom: 16px;
}

.eventfilter ul.checkboxset {
    padding: 0;
    list-style: none;
    margin-bottom: 18px;
}

.eventfilter ul.checkboxset li {
    overflow: hidden;
}

.eventfilter ul.checkboxset li input[type='checkbox']+label {
    font-size: 14px;
}

.typography ul.event-filter {
    list-style: none;
    padding: 0;
    margin: 0 0 18px 0;
}

ul.event-filter li {
    font-size: 0;
    line-height: 0;
    margin-bottom: 7px;
}

.m_filter {
    display: none;
}

.calendar-wrapper * {
    font-size: 14px;
}

.checkbox {
    position: relative;
    text-align: left;
}

input[type="checkbox"]:disabled+label:after {
    font-family: "";
}

input[type='checkbox'] {
    opacity: 0;
    width: 12px;
    min-height: 20px;
    cursor: pointer;
    position: absolute;
}

input[type='checkbox']+label {
    margin: 0;
    clear: none;
    cursor: pointer;
    background: url("../img/checkbox.jpg") left 3px no-repeat;
    background-size: 12px 12px;
    /*width: 100%;*/
    min-height: 20px;
    font-size: 13px;
    display: inline-block;
    vertical-align: top;
    padding: 0px 0px 0px 20px;
    line-height: normal;
}

input[type='checkbox']:checked+label {
    background: url("../img/checkbox-select.jpg") left 3px no-repeat;
    background-size: 12px 12px;
    width: 100%;
    /* min-height:  */
    display:inline-block;
    vertical-align: top;
    padding: 0px 0px 0px 20px;
    line-height: normal;
}

input[type="checkbox"]:disabled:not(:checked)+label,
input[type="checkbox"]:disabled:checked+label {
    color: #b6b6b6;
    background: url("../img/checkbox-disabled.png") left 3px no-repeat;
    background-size: 12px 12px;
    cursor: default;
}

.subscribe_o input[type='checkbox']+label {
    width: auto;
    font-size: 15px;
    text-align: left;
    padding: 0px 0px 0px 25px;
    margin-top: 15px;
    margin-left: 10px;
    line-height: 24px;
    background-position: left 7px;
}

.timeline-wrapper {
    background: #efefef;
}

#slider video {
    position: absolute;
    top: 0px;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    background-size: cover;
    transition: 1s opacity;
    left: 50%;
    transform: translateX(-50%);
}

.preset-tblxxx {
    width: 100%;
    padding: 0;
    margin: 0 0 30px 0;
    border-collapse: collapse;
}

.preset-tbl tr tdxxx {
    padding: 20px 15px;
    background: #ededed;
    border: 3px solid #f8f8f8;
}

.preset-tbl tr tdxxx:first-child {
    background: #dfdcdc;
    width: 40%;
}

.ss-inpagetimelinewrap-horizontal {
    background: #efefef;
    padding: 45px 0 30px 0;
}

.timeline-horizontal {
    width: 79.688%;
    max-width: 1440px;
    margin: 0 auto;
}

.grey-background {
    background: #efefef;
    padding-top: 45px;
}

.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .9);
    top: 0;
    left: 0;
    z-index: 999;
    display: none
}

a.closebtn {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 9999;
    cursor: pointer;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    background: url(../img/close_btn.jpg) no-repeat;
    width: 40px;
    height: 40px;
    display: block;
    opacity: .5;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    transition: all .5s ease
}

a.closebtn:hover {
    opacity: 1
}

.search,
.subscribe {
    cursor: pointer;
}

.navicon {
    display: none;
    float: right;
    width: 50px;
    height: 50px;
    text-indent: -9999em;
    overflow: hidden;
    cursor: pointer;
    position: relative;
    z-index: 999;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.navicon .inner {
    display: block;
    width: 28px;
    height: 24px;
    margin: 18px 16px;
    padding: 0;
    position: relative;
}

.navicon .bar {
    display: block;
    position: absolute;
    width: 100%;
    height: 4px;
    left: 0;
    background: rgba(0, 0, 0, 0.7);
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    padding: 0;
}

.navicon .bar.topm {
    top: 0;
}

.navicon .bar.mid {
    top: 50%;
    margin-top: -5px;
}

.navicon .bar.btm {
    top: 100%;
    margin-top: -7px;
}

.navicon.is-active .bar.topm,
.navicon.is-active .bar.mid,
.navicon.is-active .bar.btm {
    top: 50%;
    margin-top: -2px;
}

/** xxx delete */

.mobilexxx,
ul.menu li.mobilexxx {
    display: none;
}

.upper {
    text-transform: uppercase;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after,
.clear {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

.tos-caption {
    /* horizontal center on wide screens */
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
}

.banner-text .wrapper.pos_Right {
    text-align:right;
}
.banner-text .wrapper.pos_Center {
    text-align: center;
}

.content-element__content {
    padding:60px 0;
}