div#content.column *, header#header, footer#footer, div#stick-header, nav#footer-nav, aside.sidebars {
    font-family: 'Open Sans', Verdana, Geneva, sans-serif;
    color: #000;
}

h1, h2, h3, h4, h5, h6, h1 a, h2 a {
    font-weight: normal;
}

div#content.column a, div#content.column a b, div#content.column a strong, div#content.column a i, div#content.column a em {
    color: #3458ad !important;
}

div#content.column a:link, a:visited, a:active {
    text-decoration: none !important;
}

div#content.column a:hover {
    text-decoration: underline !important;
}

div#content.column  {
    font-size: 100%;
    line-height: 150%;
    border-right: 1px solid #333;
}

div#content.column h1 {
    font-size: 187.5%;
    margin: 0 0 0 0;
}

div#content.column .field-name-body h1:first-of-type {
    display: none;
}

ul.tabs-primary {
    margin-top: -48px;
}

body.logged-in article.view-mode-full, body.logged-in div.profile, body.logged-in ul.action-links {
    position: relative;
    margin-top: 72px;
}

div.messages--status {
    position: relative;
    top: -60px;
}

div#content.column div.messages {
    margin-top: -28px;
    margin-bottom: -30px;
}

div#content.column h2 {
    font-size: 131.25%;
    margin: 20px 0 12px 0;
    line-height: 1.25em;
    clear: both;

}

div#content.column p {
    margin: 0 0 16px 0;
}

div#content.column article img {
    display: block;
    border: 1px solid #333;
    max-width: calc( 100% - 2px );
}

nav#main-menu, nav#secondary-menu, p.submitted {
    display: none;
}

/*
 * Header
 */
 
div#capo {
    margin: 10px auto;
    height: 90px;
}

div.region-capo {
    max-width: 1200px;
    margin: 0 auto;
}

div.region-capo div.block-block {
    padding: 0 80px 0 20px;
    border-right: 1px solid #fff;
}

div#google-capo, div#google-body {
    width: 728px;
    height: 90px;
    margin: 0;
    box-sizing: border-box;
}

div#google-body {
    margin: 1em 0;
}

div#google-mobile-body, div#google-footer {
    width: 320px;
    height: 50px;
    margin: 0;
    box-sizing: border-box;
    display: none;
}

div#google-footer {
    margin-left: 20px;
}

div.region-bottom div.block-block {
    margin-bottom: 10px;
    display: none;
}

div#google-body, div#google-mobile-body {
    position: relative;
    top: -63px;
}

body.logged-in div#google-body, body.logged-in div#google-mobile-body, body.section-user div#google-body, body.section-user div#google-mobile-body {
    top: 0px;
}

#stick-header {
    position: relative;
    height: 100px;
    background-color: #cc2929;
    width: 100%;
    z-index: 10;
    -webkit-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.3);
    box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.3);
}

#stick-header.scroll {
    position: fixed;
    top: 0;
}

#nav-header {
    max-width: 1200px;
    height: 100px;
    margin: 0 auto;
    box-sizing: border-box;
}

header#header {
    background-color: #cc2929;
    color: #fff;
    padding: 0;
    position: relative;
    height: 410px;
}

header#header.scroll {
    margin-top: 110px;
}

div#outer-header {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100px;
    background-color: #cc2929;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    -webkit-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.3);
    box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.3);
}

div#inner-header {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
    z-index: 20;
}

a.header__logo {
    margin: 21px 0 0 -11px;
}

.header__logo-image {
    max-width: 257px;
}

div.region-hero-image {
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: 360px;
    width: 100%;
    margin: 0 auto;
    position: absolute;
    top: 0;
    z-index: auto;
}

div#menu-background {
    position: relative;
    top: -410px;
    height: 280px;
    z-index: 15;
    background-color: #fff;
    display: none;
}

div#header-top, div#header-bottom {
    width: 100%;
}

div#header-top {
    height: 100px;
}

div#header-bottom {
    margin: 360px auto 0;
    height: 50px;
    max-width: 1200px;
    
}

div#sharethis {
    float: left;
    margin-left: 0%;
    box-sizing: border-box;
    padding-left: 20px;
}

div#hero-caption {
    text-align: right;
    text-transform: uppercase;
  float: left;
    font-size: 131.25%;
    padding-right: 20px;
    box-sizing: border-box;
    line-height: 225%;
    background: url(../images/caption_hero_bg_img.png) 0 16px no-repeat;
}

div#stick-header, div#stick-header img.header__logo-image {
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

/*
 * Main menu
 */

div#header-logo {
    float: left;
    margin-left: 0%;

}

div.region-header-menu {
    float: right;
    box-sizing: border-box;
    width: calc(100% - 356px);
}

div#header-search {
  float: left;
    box-sizing: border-box;
}

div#mobile-search, div#pad-search {
    float: right;
    display: none;
    position: absolute;
    top: 52px;
    right: 20px;
}

div#mobile-search a, div#pad-search a {
    display: block;
    width: 19px;
    height: 19px;
    background: url(../images/mobile_search_white.svg) no-repeat;
}

div#block-menu-menu-mobile-menu {
    position: relative;
    z-index: 20;
    overflow: visible;
}

div#block-menu-menu-mobile-menu h2, 
html.js div#block-menu-menu-mobile-menu div.contextual-links-wrapper, 
nav#footer-nav div.block-menu-block h2, 
nav#footer-nav div.contextual-links-wrapper {
    display: none;
}

div#block-menu-menu-mobile-menu ul, nav#footer-nav ul {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

@media all and (max-width: 767px) {
    div#block-menu-menu-mobile-menu ul.menu {
        display: none;
    }
}

div#block-menu-menu-mobile-menu ul {
    margin: 49px 0 0 17%;
    position: relative;
}

div#block-menu-menu-mobile-menu ul li, nav#footer-nav ul li {
    list-style-type: none;
    list-style-image: none;
    font-size: 100%;
    flex: 0 0 auto;
}

div#block-menu-menu-mobile-menu ul li a, nav#footer-nav ul li a {
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 87.5%;
}

div#block-menu-menu-mobile-menu ul ul  {
    position: absolute;
    left: -352px;
    top: 48px;
    margin: 0;
    display: none;
}

div#block-menu-menu-mobile-menu ul ul li a {
    color: #333;
    font-size: 100%;
    line-height: 2em;
}

div.region-header-search > div {
    margin: 51px 20px 0 0;
    text-align: right;
    color: #ababab;
    font-size: 13px;
    position: relative;
}

#cse-search-box input[type=search] {
    background: none;
    border: 0;
    position: relative;
    top: -30px;
    left: -24px;
    width: 136px;
    height: 18px;
    outline: none;
}

/*
 * Styles for hamburgering the menu
 */

div#block-menu-menu-mobile-menu ul.hamburger-slide {
    display: block;
    position: fixed;
    top: -48px;
    left: -300px;
    z-index: 200;
    width: 300px;
    height: calc(100vh - 80px);
    margin-left: 0;
    margin-right: 0;
    padding-top: 80px;
    box-shadow: 30px 0px 30px 0px rgba(0,0,0,.5);
    background:  #cc2929;
    background-attachment: local;
    overflow-y: auto;
}

div#block-menu-menu-mobile-menu ul.hamburger-slide li {
    float: left;
    margin: 0 0 16px 20px;
}

.hamburger-slide li {
    clear: both;
}

div#block-menu-menu-mobile-menu ul.hamburger-slide li a {
    color: #fff;
    font-size: 87.5%;
    text-transform: uppercase;
}

.menu-is-active {
    /* prevent scrolling when the hamburger is activated */
    height: 100vh;
    overflow-y: hidden;
}



div#hamburger-header {
    position: fixed;
    top: 0;
    left: -300px;
    z-index: 300;
    width: 300px;
    height: 89px;
}

div#hamburger-logo {
    position: relative;
    top: 0;
    left: 0;
    z-index: 350;
    width: 300px;
    height: 75px;
    background:  #cc2929 url(../../../../default/files/logo.svgz) 4px 20px no-repeat;
    background-size: 150px 46px;
}

div#hamburger-logo-shade {
    position: relative;
    top: 0;
    left: 0;
    z-index: 350;
    background-image: linear-gradient(to top, rgba(204,41,41,0), rgba(204,41,41,1));
    width: 300px;
    height: 12px;
}

a#hamburger-closer {
    display: block;
    width: 36px;
    height: 18px;
    position: relative;
    z-index: 400;
    top: 34px;
    left: 254px;
    background:  #cc2929 url(../images/close_button.svgz) no-repeat;
    background-size: 36px 18px;
}

div#hamburger-closer a {
    cursor: pointer;
    color: #fff;
}

/*
 * ShareThis icons for header
 */


div#header-bottom div.region-share-this {
    margin-top: -8px;
}

div#header-bottom div.sharethis-wrapper span {
    display: block;
    height: 20px;
    float: left;
    margin: 0 20px 0 0;
    background-repeat: no-repeat;
    background-size: 90%;
    cursor: pointer;
}


div#header-bottom span.st_email_custom {
    width: 23px;
    background-image: url(../images/sm_email.svg);
}

div#header-bottom span.st_facebook_custom {
    width: 9px;
    background-image: url(../images/sm_fb.svg);
}

div#header-bottom span.st_googleplus_custom {
    width: 18px;
    background-image: url(../images/sm_g_plus.svg);
}

div#header-bottom span.st_linkedin_custom {
    width: 18px;
    background-image: url(../images/sm_linkedin.svg);
}

div#header-bottom span.st_pinterest_custom {
    width: 16px;
    background-image: url(../images/sm_pinterest.svg);
}

div#header-bottom span.st_reddit_custom {
    width: 24px;
    background-image: url(../images/sm_reddit.svg);
}

div#header-bottom span.st_sharethis_custom {
    width: 19px;
    background-image: url(../images/sm_share_this.svg);
}

div#header-bottom span.st_twitter_custom {
    width: 19px;
    background-image: url(../images/sm_twitter.svg);
}

/*
 * Content
 */

h1#page-title {
    position: relative;
    /* top: 108px; */
}

body.logged-in h1#page-title {
    /* top: 158px; */
  top: 50px;
}

body.section-user h1#page-title {
    top: 148px;
}

form#user-login {
    margin-top: 68px;
}

/*
 * Reveal for mobile
 */

div#text-reveal {
    position: relative;
    height: 127px;
    top: -120px;
    background-image: linear-gradient(to bottom, rgba(255,255,255,.5), rgba(255,255,255,1));
}

a#reveal-link {
    display: block;
    width: 100%;
    height: 24px;
    padding-top: 2px;
    font-size: 87.5%;
    color: #000;
    background-color: #fff;
    text-align: center;
    border: 1px solid #000;
    position: relative;
    top: 99px;
}

/*
 * Override Zen column padding
 */
 
.region-sidebar-second {
    padding-left: 0;
    padding-right: 20px;
}

.region-sidebar-second .block-block.first, .region-sidebar-second .block-block.last {
    box-sizing: border-box;
}

.region-sidebar-second .block-block.first {
    margin-bottom: 20px;
}

.region-sidebar-second .block-block.last {
    margin-bottom: 0;
}

.region-sidebar-second .block-block > div {
    margin-left: 38px;
    border: 1px solid #333;
    padding: 0;
}

.region-sidebar-second .block-block img {
    display: block;
    margin: 0 auto;
}

.region-sidebar-second .block-block.first {
    position: relative;
    overflow: auto;
    padding-left: 39px;
    height: 87px;
}

div#sidebar-facebook {
    box-sizing: border-box;
    position: absolute;
    bottom: 0;
    right: 0;
    margin: 0 0 0 39px;
    width: calc(100% - 39px);
    border: 0;
}

.region-sidebar-second .block-block.last > div {
    width: calc(100% - 41px);
    margin-bottom: 20px;
}

.region-sidebar-second .block-block.last > div:last-of-type {
    margin-bottom: 0;
}

#content {
    padding-left: 20px;
    padding-right: 80px;
}

div.field-name-field-continuation-link {
    display: none;
}

div#content.column > div.block-block.last {
    min-height: 100%;
    overflow: auto;
    margin-bottom: 1px;
}

div#content.column > article.node-page.view-mode-full {
    margin-bottom: -112px;
}

/*
 * Category panels
 */


div#content.column nav.cat-panels h2 {
    margin-bottom: -38px;
}

div#content.column nav.cat-panels figure {
    width: 198px;
    height: 0;
    padding: 0 0 150px;
    margin: 50px 0 0;
    float: left;
    position: relative;
    border: 1px solid #333;
}

div#content.column nav.cat-panels figure img {
    display: block;
    width: 200px;
    height: 150px;
    position: absolute;
    left: 0;
}

div#content.column nav.cat-panels figcaption {
    background-color: rgba(204, 41, 41, 1);
    text-align: right;
    padding-right: 20px;
    position: absolute;
    width: calc(100% - 20px);
    bottom: 0;
        font-size: 87.5%;
}

div#content.column nav.cat-panels figcaption a {
    display: block;
    height: 24px;
    color: #fff !important;
}

/*
 * ShareThis icons for content
 */

div#content.column div.sharethis-buttons {
    position: relative;
    top: 433px;
}

div#content.column > article div.sharethis-wrapper span {
    position: relative;
    z-index: 1;
    text-decoration: none;
    color: #000;
    display: inline-block;
    cursor: pointer;
    margin-right: 3px;
    margin-left: 3px;
    font-size: 11px;
    line-height: 16px;
    background-size: cover;
    height: 32px;
    width: 32px;
}

div#content.column > article div.sharethis-wrapper span.st_facebook_custom {
    background-image: url(../images/facebook_32.png);
}

div#content.column > article div.sharethis-wrapper span.st_twitter_custom {
    background-image: url(../images/twitter_32.png);
}

div#content.column > article div.sharethis-wrapper span.st_linkedin_custom {
    background-image: url(../images/linkedin_32.png);
}

div#content.column > article div.sharethis-wrapper span.st_pinterest_custom {
    background-image: url(../images/pinterest_32.png);
}

div#content.column > article div.sharethis-wrapper span.st_googleplus_custom {
    background-image: url(../images/googleplus_32.png);
}

div#content.column > article div.sharethis-wrapper span.st_reddit_custom {
    background-image: url(../images/reddit_32.png);
}

div#content.column > article div.sharethis-wrapper span.st_email_custom {
    background-image: url(../images/email_32.png);
}

div#content.column > article div.sharethis-wrapper span.st_sharethis_custom {
    background-image: url(../images/sharethis_32.png);
}

/*
 * Figures, captions, asides
 */

/* Clear the summary */
div#content.column div.field-name-body.field-type-text-with-summary {
    clear: both;
}

div#content.column article figure {
    display: table;
    margin-top: 16px;
    margin-bottom: 16px;
}

div#content.column article figure img {
    display: block;
    max-width: 100%;
    box-sizing: border-box;
}

div#content.column article figure figcaption {
    display: table-caption;
    caption-side: bottom;
    font-weight: bold;
    font-size: 87.5%;
    margin-top: .25em;
    line-height: 1.25em;
    background-color: #dedede;
    padding: .25em 1em;
}

div#content.column article figure.left {
    float: left;
    margin: 8px 24px 16px 0;
}

div#content.column article figure.right {
    float: right;
    margin: 8px 0 16px 24px;
}

div#block-system-user-menu {
    margin: 250px 0 24px 40px;
}

div#block-system-user-menu h2 {
    font-size: 1.17em;
    line-height: 1.28205em;
    margin-top: 1.28205em;
    margin-bottom: 1.28205em;
}

div#block-system-user-menu ul {
    margin: 1em 0;
    padding: 0;
}

div#block-system-user-menu li {
    list-style-image: none;
    list-style-type: none;
    font-size: 87.5%;
}

/*
 * Maps
 */

.map-frame  {
    /* position: relative;
    padding-bottom: 65.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden; */
    border: 1px solid #333;
}

.map-frame iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    margin: 0;
}

.map-caption {
    font-size: 87.5%;
}

/*
 * Lists and navs
 */

article menu, article ol, article ul {
    padding: 0;
}

nav.intrapage, nav.intrapage, nav.external {
  height: auto !important;
}

nav.intrapage ul, nav.intrapage ul, nav.external ul {
  list-style: none;
  text-align: left;
  margin: 0;
  padding: 0;
}

nav.intrapage li, nav.intrapage li, nav.external li {
  list-style-type: none;
  list-style-image: none;
  margin-right: 10px;
  border-right: 1px solid #666;
  padding: 0 10px 0 0;
  line-height: 140%;
  margin-bottom: 3px;
  text-align: left;
    display: inline;
}

nav.intrapage li:last-of-type, nav.intrapage li:last-of-type, nav.external li:last-of-type {
   margin-right: 0;
   padding-right: 0;
   border-right: 0;
}

nav.intrapage li > a, nav.intrapage li > a, nav.external li > a {
    white-space: nowrap;
}

nav.vertical {
  padding-bottom: 1em;
}

nav.vertical ul {
    padding-left: 1em;
}

nav.vertical ul > li {
    display: list-item;
    list-style-type: disc;
    margin: 0;
    padding: 0;
    border: 0;
}

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

.whats-new > li {
    margin-bottom: 1.25em;
    padding-left: 2px;
}

.whats-new ul {
    margin-left: 1em;
}

.whats-new ul li {
    list-style-type: disc;
}

/*
 * Tables
 */

div#content.column thead {
    background-color: #cc2929;
}

div#content.column thead th {
    color: #fff;
    text-align: left;
}

div#content.column th, div#content.column td {
    padding: .0625em .25em;
}

td.heading {
    font-weight: bold;
}

table.alternate tbody tr:nth-child(even) {
    background-color: #ccc;
}

/*
 * Footer menu
 */

.menu-name-menu-footer-meu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.menu-name-menu-footer-meu > ul {
    display: flex;
    justify-content: space-between;
}

div#content.column .menu-name-menu-footer-meu > ul > li > a {
    color: #cc2929 !important;
}

.menu-name-menu-footer-meu .menu__item.is-expanded, .menu-name-menu-footer-meu .menu__item.is-leaf {
    list-style-image: none;
    list-style-type: none;
}

.menu-name-menu-footer-meu ul ul li {
    font-size: 87.5%;
}

.region-footer-menu-supra {
  position: relative;
    top: 52px;
}

#block-menu-menu-footer-menu-abbreviated- ul {
    box-sizing: border-box;
    list-style: none;
    width: 78.33333%;
    margin-left: 0;
    margin-right: 78.33333%;
    display: flex;
    padding: 0 20px;
    justify-content: space-between;
}

#block-menu-menu-footer-menu-abbreviated- ul li {
    list-style-image: none !important;
    list-style-type: none;
}

#block-menu-menu-footer-menu-abbreviated- ul a {
    color: #cc2929;
    text-decoration: none;
}

#block-menu-menu-footer-menu-abbreviated- ul a:hover {
  text-decoration: underline;
}
/*
 * Footer
 */

div#footer-wrapper {
    position: relative;
    background-color: #cc2929;
    color: #fff;
    margin-top: 214px;
    padding-top: 42px;
    height: 110px;
    box-sizing: border-box;
}

div#footer-wrapper > div {
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px;
}

div#footer-nav-logo {
    position: relative;
}

nav#footer-nav, div#footer-logo {
    box-sizing: border-box;
}

nav#footer-nav, div#footer-logo {
    float: left;
}

nav#footer-nav {
    padding: 0 8.5% 0 20px;
}

div#footer-logo {
    padding: 3px 20px 0 0;
}

nav#footer-nav ul {
    margin: 0;
}

div#footer-logo {
    min-height: 100%;
    overflow: auto;
}

nav#footer-nav ul {
    margin-right: 10.6383%;
    box-sizing: border-box;
}

footer#footer {
    margin: 36px auto 0;
    padding: 0 20px;
    height: 50px;
    max-width: 1200px;
}

footer#footer div div {
    float: left;
    margin-top: 0;
}

footer#footer div#block-block-1 {
    margin: 0;
    width: 100%;
}

p#footer-copyright {
    float: left;
}

p#footer-copyright {
    color: #cc2929;
    font-size: 12px;
    margin: 12px 0 0;
}

a.footer__site-link {
    display: block;
    float: right;
    width: 173px;
    height: 29px;
    background: url(../images/footer_japanvisitor_words.svgz) no-repeat;
    background-size: 173px 29px;
}

div.field-type-text-with-summary.reveal {
    /* max-height: 50000px !important; // Used for Continue Reading link */
}

div#content.column > div:last-of-type.reveal {
    margin-top: 0;
}

/*
 * Styles from previous site elements
 */


.youtube {}

.flexrow {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
    margin: .5em 0;
    padding: .5em 0;
    clear: both;
}

.flexrow figure {
    margin-bottom: .5em;
    flex-grow: 1
}

.flexrow figure:last-of-type {
    margin-right: 0;
}

div#content.column article .flexrow figure figcaption {
    padding-left: 0;
    padding-right: 0;
}

.flex20 figure {
    margin-right: calc( 20% - 100px );
}

.flex25 figure {
    margin-right: calc( 25% - 100px );
}

.flex33 figure {
    margin-right: calc( 33.3333% - 120px );
}

.flexrow figure img {
    margin-left: auto;
    margin-right: auto;
}

div#content.column article .flexrow figcaption {
    background-color: transparent;
    text-align: left;
}

.side_ad {
    margin-bottom: 1.125em;
}

img.goods-from-japan {
    display: block;
    margin: .5em 0 2em;
}

/*
 * Newsletter
 */

#visitor-newsletter {
    margin: 0 0 0 38px;
    position: relative;
    text-align: left;
    border: 0;
}

div#visitor-newsletter form {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding-left: 7%;
    padding-bottom: 100%;
    background: url(../images/newsletter_background.jpg) no-repeat;
    background-size: cover;
    border: 1px solid #333;
}

div#visitor-newsletter input[type=text] {
    border: 1px solid #ccc;
    width: 86%;
    height: 24px;
    font-size: 12px;
    margin: 68% 0 6px;
    padding-left: 10px;
}

div#visitor-newsletter input[type=submit] {
    width: 106px;
    padding: 0;
    height: 24px;
    float: left;
    font-size: 13px;
}

/*
 * Inter and intrapage menus
 */

#content.column div.block-menu, #content.column article ul.menu, ul.alpha-links  {
  overflow: auto;
  height: auto !important;
}

#content.column div.block-menu ul, #content.column article ul.menu, ul.alpha-links {
  list-style: none;
  text-align: left;
  margin: 0;
  padding: 0;
}

#content.column div.block-menu li.leaf, #content.column article ul.menu li {
  display: inline-block;
  list-style-type: none;
  list-style-image: none;
  margin-right: 6px;
  border-right: 1px solid #666;
  padding: 0 10px 0 0;
  line-height: 140%;
  margin-bottom: 3px;
  text-align: center;
}

ul.alpha-links li {
    display: inline-block;
    list-style-type: none;
    list-style-image: none;
    margin: 0 1px 3px 0;
    line-height: 140%;
}

#content.column div.block-menu li.leaf:last-of-type, #content.column article ul.menu li:last-of-type {
   margin-right: 0;
   padding-right: 0;
   border-right: 0;
}

ul.alpha-links li:last-of:type {
    margin-right: 0;
}

ul.alpha-links a {
    display: inline-block;
    background-color: #0096bf;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    color: #fff !important;
    width: 20px;
    padding: 0;
    border: 0;
}

ul.alpha-links a[href] {
    background-color: #006c8a;
}

ul.alpha-links li:hover a[href] {
    background-color: #a5bf3d;
}

/* menus of related pages at bottom */


#block-menu-menu-manhole-covers-sub {
    margin-top: 12px;
    border-top: 2px solid #666;
    text-align: right
}

#block-menu-menu-manhole-covers-sub div.contextual-links-wrapper {
    display: none !important;
}

#block-menu-menu-manhole-covers-sub h2, #block-menu-menu-manhole-covers-sub ul {
    display: inline-block;
}

#block-menu-menu-manhole-covers-sub ul a {
    display: block;
    width: 18px;
}


#content.column div.block-menu li a.active {
  color: #cc2929 !important;
}

/*
 * Asides
 */

aside.inner-column {
    margin-top: 1.25em;
}

aside.inner-column.right {
    float: right;
    margin-left: 1.25em;
}

aside.inner-column figure {
    margin: 0 auto .375em;
}

aside.inner-column figure img {
    margin: 0 auto;
    border: 1px solid #000;
}

aside.inner-column figcaption {
    text-align: left;
    font-weight: normal;
    font-size: 75%;
    font-style: normal;
    word-wrap: normal;
}

.book-author, .publisher, .reviewer {
    font-weight: bold;
}

.book-title {
    font-style: italic;
}

.buy-amazon {
    font-weight: bold;
    margin: .5em 0 1em;
    padding-bottom: .25em;
    border-bottom: 1px solid #333;
}

.buy-amazon p, .buy-amazon ul {
    display: inline;
}

.buy-amazon a {
    font-weight: normal;
}

.buy-amazon ul {
    list-style: none;
}

.buy-amazon li {
    display: inline-block;
    padding: 0 .5em;
    border-right: 1px solid #333;
}

.buy-amazon li:last-of-type {
    padding-right: 0;
    border: 0;
}

/*
 * Adverts
 */

div.amazon {
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}

div#content.column div.amazon div#amzn-native-ad-0 div.amzn-native-products-list div.amzn-native-product .amzn-native-product-title-container a, 
div#content.column div.amazon div#amzn-native-ad-0 div.amzn-native-products-list div.amzn-native-product .amzn-native-product-title-container a .amzn-native-product-title-text, 
div#content.column h3.amazon a {
    color: #cc2929 !important;
}



div.amazon div#amzn-native-ad-0 .amzn-native-search-bar .amzn-native-search-bar-content {
    float: none;
}

.google-inline {
    margin: 2em;
}

.google-inline.bare {
    overflow: hidden;
}

/*
 * Attraction lists
 */

h3.attraction-list {
    color: #ff721a;
    margin-bottom: 0;
}

ul.attraction-list {
    margin: 0 0 20px;
    padding: 0;
    font-weight: bold;
    list-style: none;
}

.attraction-list p {
    font-weight: normal;
}

a.attraction {
    font-weight: bold;
}

div.attraction-list {
    font-weight: normal;
    border-top: 2px solid #333;
    padding: 6px 0 9px;
    height: 100% !important;
    overflow: auto;
}

div.attraction-list strong {
    font-weight: bold;
    color: #ff721a;
}

/*
 * Callout styles
 */

.image-callout figcaption {
    font-weight: bold;
    font-style: italic;
    text-align: center;
}

.image-callout img, figure.callout img {
    display: block;
    float: left;
}

figure.callout {
    height: 100% !important;
    overflow: auto;
    margin-bottom: 1em;
}

.callout-center {
    margin: 4px auto;
    clear: both;
}

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

div.callout.center figure {
    display: inline-block;
    padding: 0 4px;
}

div.callout p {
    font-weight: bold;
    font-style: italic;
}

figure.callout.center.single img {
    margin: 4px auto;
    float: none;
}

.callout-center-single img {
    margin: 4px auto;
    clear: both;
    float: none;
}

.callout-right, figure.callout.right {
    float: right;
    margin: 4px 0 4px 4px;
}

.callout-left, figure.callout.left {
    float: left;
    margin: 4px 4px 4px 0;
}

.callout-center img {
    margin-left: 2px;
    margin-right: 2px;
}

.callout-right img {
    margin-left: 4px;
}

.callout-left img {
    margin-right: 4px;
}

/*
 * Media queries for added elements
 */
 
@media only screen {
    html, body {
        overflow-x: hidden;
    }
}

@media all and (min-width: 1024px) {
    div#footer-logo {
        width: 21.66667%;
        margin-left: 78.33333%;
        margin-right: -100%;
    }
    div#header-bottom.scroll {
        margin-top: 460px;
    }
}

/* Drop-down menu sizing */

@media all and (min-width: 768px) {
    div#block-menu-menu-mobile-menu ul li {
        padding-bottom: 25px;
    }
    /* div#block-menu-menu-mobile-menu ul li.menu__item:hover, */
    div#block-menu-menu-mobile-menu ul li.menu__item.hover {
        border-bottom: 6px #676664 solid;
    }
    /* div#block-menu-menu-mobile-menu li.menu__item:hover ul, */
    div#block-menu-menu-mobile-menu li.menu__item.hover ul {
        display: block;
        background-color: #fff;
        height: 224px;
        position: absolute;
        left: 0;
        right: 0;
        top: 51px;
        z-index: -5;
        width: calc( 100% - 17px );
        padding: 22px 20px 0 46px;
        column-count: 3;
        box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.3);
    }
    div#block-menu-menu-mobile-menu ul li.menu__item ul li:nth-of-type(1n + 22) {
        display: none;
    }
    div#block-menu-menu-mobile-menu ul li.menu__item ul li.menu__item {
        padding-bottom: 0;
    }
    div#block-menu-menu-mobile-menu ul li.menu__item ul li.menu__item:hover {
        border-bottom: none;
    }

    div#block-menu-menu-mobile-menu ul ul li a { font-size: 78.57143%; }

    div#block-menu-menu-mobile-menu li.menu__item:hover ul a {
        text-transform: none;
        color: #3458ad;
    }
    div#block-menu-menu-mobile-menu li.menu__item:hover ul a:hover {
        text-decoration: underline;
    }
    div.more-link {
        position: absolute;
        top: 247px;
        right: -30px;
        display: none;
    }
    /* div#block-menu-menu-mobile-menu li.menu__item:hover div.more-link, */
    div#block-menu-menu-mobile-menu li.menu__item.hover div.more-link {
        display: block;
    }
    div.more-link a {
        display: block;
        height: 24px;
        width: 72px;
        background: url(../images/arrow_more.png) no-repeat 50px;
        text-align: left;
        color: #3458ad !important;
    }
    div.more-link a:hover {
        text-decoration: underline !important;
    }
}

@media all and (min-width: 800px) {
    div#block-menu-menu-mobile-menu ul ul li a { font-size: 85.71429%; }
    div#block-menu-menu-mobile-menu li.menu__item:hover ul { padding-left: 55px; height: 227px; }
    div.more-link { top: 250px; }
}

@media all and (min-width: 850px) {
    div#block-menu-menu-mobile-menu ul ul li a { font-size: 92.85714%; }
    div#block-menu-menu-mobile-menu li.menu__item:hover ul { padding-left: 55px; height: 236px; }
    div.more-link { top: 260px; }
}

@media all and (min-width: 960px) {
    div#block-menu-menu-mobile-menu ul li div.more-link a { font-size: 87.5%; }
    div#block-menu-menu-mobile-menu li.menu__item:hover ul { padding-left: 70px; height: 262px; }
    div.more-link { top: 285px; }
}

@media all and (min-width: 1024px) {
    div#block-menu-menu-mobile-menu li.menu__item:hover ul {
        width: calc( 100% - 66px );
        height: 211px;
        padding-left: 66px;
    }

    div#block-menu-menu-mobile-menu ul ul li a, 
    div#block-menu-menu-mobile-menu ul li div.more-link a { font-size: 81.25%; }
    div.more-link { top: 235px; right: -188px }
}

@media all and (min-width: 1024px) and (max-width: 1179px) {
    div#block-menu-menu-mobile-menu li.menu__item:hover ul {
        padding-right: calc( 240px - ( 1180px - 100vw ) *.24358 );
    }
}

@media all and (min-width: 1040px) {
    div#block-menu-menu-mobile-menu ul ul li a { font-size: 87.5%; }
    div#block-menu-menu-mobile-menu li.menu__item:hover ul { height: 220px; }
    div.more-link { top: 243px; }
}

@media all and (min-width: 1070px) {
    div#block-menu-menu-mobile-menu ul ul li a { font-size: 93.75%; }
    div#block-menu-menu-mobile-menu li.menu__item:hover ul { height: 234px; }
    div.more-link { top: 258px; }
}

@media all and (min-width: 1140px) {
    div#block-menu-menu-mobile-menu ul ul li a { font-size: 100%; }
    div#block-menu-menu-mobile-menu li.menu__item:hover ul { height: 248px; }
    div.more-link { top: 272px; }
}

@media all and (min-width: 1180px) {
    div#block-menu-menu-mobile-menu li.menu__item:hover ul { padding-right: 240px; }
}

/* End drop-down menu sizing */

@media all and (min-width: 960px) {
    /* Column widths and panels for larger screens */
    .sidebar-second #content, div#sharethis, div#header-logo, nav#footer-nav, div.region-capo div.block-block {
        width: 78.33333%;
        margin-right: -78.33333%;
    }
    
    .sidebar-second .region-sidebar-second, div#hero-caption, div#header-search {
        width: 21.66667%;
        margin-left: 78.33333%;
        margin-right: -100%;
    }
    
    div#content.column nav.cat-panels figure {
            margin-right: calc((100% - 600px) / 4);
    }

    div#content.column nav.cat-panels figure:nth-of-type(3n+2) {
            margin: 50px calc((100% - 600px) / 4) 0;
    }

    div#content.column nav.cat-panels figure:nth-of-type(3n+3) {
            margin: 50px 0 0 calc((100% - 600px) / 4);
    }

    .flex20 figure:nth-of-type(5n) {
        margin-right: 0;
    }

    .flex25 figure:nth-of-type(4n) {
        margin-right: 0;
    }

}

@media (max-width: 1220px) {
    div#google-capo {
        margin-left: 0;
    }
    div#block-menu-menu-mobile-menu ul {
        margin-left: 10%;
    }

}

@media (max-width: 1104px) {
    div#footer-wrapper div.sharethis-wrapper span {
        margin-right: 4%;
    }
    div#block-menu-menu-mobile-menu ul {
        margin-left: 5%;
    }
}

@media (min-width: 1218px) and (max-width: 1337px) {
    /* Bring logo into frame */
    a.header__logo {
        margin-left: calc( ( (-100vw + 1200px) / 2 ) + 9px );
    }
}

@media (max-width: 1217px) {
    /* Bring logo into frame */
    a.header__logo {
        margin-left: 4px;
    }
}

@media (max-width: 1024px) {
    div.field-name-field-continuation-link {
        display: block;
    }
    div.field-type-text-with-summary {
        /* -webkit-transition: max-height 1s;
        transition: max-height 1s;
        max-height: 120px !important;
        overflow: hidden; // Used for Continue Reading link */
    }
    
    div#content.column > div:last-of-type {
        /* -webkit-transition: margin-top 1s;
        transition: margin-top 1s;
        margin-top: -213px; // Used for Continue Reading link */
        margin-top: -113px;
    }

    div#content.column > div:last-of-type.reveal {
        /* margin-top: -113px; // Used for Continue Reading link */
    }
  
  div#content.column h1 + div.block-menu {
    margin-top: 60px;
  }
    
    div#content.column div.sharethis-buttons {
        /* top: 333px; // Used for Continue Reading link */
        top: 433px;
    }

    div#content.column div.sharethis-buttons.reveal {
        /* top: 433px; // Used for Continue Reading link */
    }

}

@media (max-width: 1023px) {
    /* Drop the search, add padding for menu */
    
    #stick-header {
        position: fixed;
        top: 0;
    }

    #header.header {
        margin-top: 100px;
    }

    div#outer-header {
        display: none;
    }

    div#header-bottom {
        position: relative;
        margin-top: 360px;
    }

    div#header-logo, div#footer-logo {
        width: 100%;
        margin-right: -100%
    }
    
    a.footer__site-link {
        float: left;
        margin-left: 20px;
    }

    div.region-header-search > div {
        margin-top: 24px;
    }
    div.region-header-menu {
        width: calc(100% - 395px);
        margin-right: 39px;
    }
    div#block-menu-menu-mobile-menu ul {
        margin-right: 10px;
    }
    p#footer-copyright {
        font-size: 87.5%;
        line-height: 1.25em;
        margin-top: 8px;
    }
    div#google-body, nav#footer-nav {
        display: none;
    }
    div.region-bottom div.block-block, div#google-mobile-body, div#google-footer {
        display: block;
    }
    div#block-block-15 {
        height: 16px;
    }
    div#capo {
        display: none;
    }
    div#pad-search {
        display: block;
    }
    
    div#footer-wrapper {
        height: 50px;
    }
    div#footer-logo {
        margin-top: -25px;
    }
    a.footer__site-link {
        width: 77.55px;
        height: 13px;
        background-size: 77.55px 13px;
    }

    .region-footer-menu-supra {
        top: 0;
    }
    
    div#content.column article figure.left, div#content.column article figure.right {
        float: none;
        margin: 16px 0;
    }

    div#stick-header.scroll {
        height: 50px;
    }
    
    div#stick-header.scroll img.header__logo-image {
        height: 46px;
    }

}

@media (max-width: 959px) {
    
    div#content.column div.sharethis-buttons {
        /* top: 534px; // Used for Continue Reading link */
        top: 634px;
    }

    div#content.column div.sharethis-buttons.reveal {
        /* top: 634px; // Used for Continue Reading link */
    }

}

@media (min-width: 480px) and (max-width: 959px) {
    /* Drop the top Google ad, reduce hero size, adjust sharethis/caption ratios, flex menu spacing */
    div#capo {
        display: none;
    }
    
    #header.header {
        height: 330px;
    }

    #stick-header.scroll, #nav-header.scroll {
        height: 50px;
    }

    div.region-hero-image {
        height: 280px;
    }

    div#header-bottom {
        position: relative;
        margin-top: 280px;
    }
    /* div#sharethis, nav#footer-nav { */
    div#header-logo {
        font-size: 87.5%;
    }
    div#block-menu-menu-mobile-menu ul {
        margin-left: 5%;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
    }
    
    .sidebar-second .region-sidebar-second {
        margin-bottom: 160px;
    }

}

@media (min-width: 768px) and (max-width: 1023px) {

    div#header-top {
        position: fixed;
        top: 0;
        background-color: #cc2929;
        z-index: 50;
    }

}

@media (max-width: 1023px) {

    div#header-search {
        width: 100%;
        height: 38px;
        margin: 0;
        background-color: #e4e7e9;
        border-bottom: 1px solid #3e3e3e;
        position: absolute;
        top: 0px;
        z-index: -10;
        -webkit-transition: all 0.4s ease;
        transition: all 0.4s ease;
    }
    
    div#header-search.reveal {
        top: 100px;
    }
    
    div.region-header-search > div {
        margin-top: 6px;
    }
    
    #cse-search-box {
        position: relative;
    }
    
    #cse-search-box input[type=search] {
        position: absolute;
        z-index: 20;
        top: 0;
        left: auto;
        right: 36px;
        width: 158px;
        height: 20px;
        font-size: 16px;
    }
    
    #cse-search-button {
        position: absolute;
        z-index: 10;
        right: 0;
        top: -2px;
        height: 27px;
        width: 212px;
        right-margin: 0;
    }

    div#nav-header {
        background-color: #cc2929;
    }
    
    #block-sharethis-sharethis-block.share {
        position: fixed;
        left: 0;
        z-index: 5;
        top: 0;
        width: 100%;
        height: 44px;
        background-color: #e4e7e9;
        border-bottom: 1px solid #3e3e3e;
        padding: 10px 0 0 8px;
        -webkit-transition: top 400ms ease;
        transition: top 400ms ease;
    }
    
    #block-sharethis-sharethis-block.share.reveal {
        top: 75px;
    }

    #block-sharethis-sharethis-block.share.reveal.scroll {
        top: 50px;
    }

}

@media (min-width: 800px) and (max-width: 959px) {

    .flex20 figure {
        margin-right: calc( 25% - 100px );
    }
    
    .flex20 figure:nth-of-type(4n) {
        margin-right: 0;
    }

}

@media (min-width: 768px) and (max-width: 799px) {

    .flex20 figure {
        margin-right: calc( 33% - 100px );
    }
    
    .flex20 figure:nth-of-type(3n) {
        margin-right: 0;
    }

}

@media (min-width: 768px) and (max-width: 959px) {

    div#hero-caption {
        width: 33.33333%;
        margin-left: 66.66667%
    }

    div#sharethis {
        width: 66.66667%;
        margin-right: -66.66667%
    }

    .flex25 figure {
        margin-right: calc( 33% - 100px );
    }
    
    .flex25 figure:nth-of-type(3n) {
        margin-right: 0;
    }

    #block-menu-menu-footer-menu-abbreviated- ul {
        width: 66.66667%;
        margin-right: 66.66667%;
    }

}

@media (min-width: 768px) {

    div#mobile-search-share { display: none; }

}

@media (max-width: 767px) {
    /* No share this div. Switch to hamburger menu, drop side column, show search and share icons in header */
    .region-sidebar-second, div#mobile-search, div#pad-search {
        display: none;
    }

    div#content.column, div#hero-caption, nav#footer-nav {
        width: 100%;
        margin-right: 100%;
        padding-right: 20px;
    }
    
    div#content.column {
        border: 0;
    }
    
    div#hero-caption {
        background-image: none;
    }

    div.region-header-menu {
        width: 25px;
        height: 50px;
        background: url(../images/hamburger_menu.svgz) no-repeat;
        margin: 15px 20px 0 0;
        cursor: pointer;
    }
    
    div#block-menu-menu-mobile-menu li.menu__item ul {
        display: none;
    }

    div#header-logo {
        position: relative;
    }
    
    a.header__logo {
        margin-top: 4px;
    }

    div#mobile-search-share {
        display: block;
        position: absolute;
        right: 45px;
        top: 15px;
    }
    
    a#mobile-search, a#mobile-share {
        display: inline-block;
        width: 19px;
        margin-right: 18px;
        background-repeat: no-repeat;
    }
    
    a#mobile-search {
        height: 19px;
        background-image: url(../images/mobile_search.svgz);
    }

    a#mobile-share {
        height: 20px;
        background-image: url(../images/mobile_share_this.svgz);
    }

    div#content.column div.sharethis-buttons {
        /* top: 333px; // Used for Continue Reading link */
        top: 433px;
    }

    div#content.column div.sharethis-buttons.reveal {
        /* top: 433px; // Used for Continue Reading link */
    }
    
    div#content.column > article.node-page.view-mode-full {
        margin-top: 80px;
    }

    div#sharethis {
        position: absolute;
        top: 50px;
        width: 100%;
        margin-right: 0;
    }

    div#sharethis div.sharethis-wrapper span {
        position: relative;
        z-index: 1;
        text-decoration: none;
        color: #000;
        display: inline-block;
        cursor: pointer;
        margin-right: 3px;
        margin-left: 3px;
        font-size: 11px;
        line-height: 16px;
        background-size: cover;
        height: 32px;
        width: 32px;
    }
    
    div#sharethis div.sharethis-wrapper span.st_facebook_custom {
        background-image: url(../images/facebook_32.png);
    }
    
    div#sharethis div.sharethis-wrapper span.st_twitter_custom {
        background-image: url(../images/twitter_32.png);
    }
    
    div#sharethis div.sharethis-wrapper span.st_linkedin_custom {
        background-image: url(../images/linkedin_32.png);
    }
    
    div#sharethis div.sharethis-wrapper span.st_pinterest_custom {
        background-image: url(../images/pinterest_32.png);
    }
    
    div#sharethis div.sharethis-wrapper span.st_googleplus_custom {
        background-image: url(../images/googleplus_32.png);
    }
    
    div#sharethis div.sharethis-wrapper span.st_reddit_custom {
        background-image: url(../images/reddit_32.png);
    }
    
    div#sharethis div.sharethis-wrapper span.st_email_custom {
        background-image: url(../images/email_32.png);
    }
    
    div#sharethis div.sharethis-wrapper span.st_sharethis_custom {
        background-image: url(../images/sharethis_32.png);
    }
    
    div#header-search.reveal {
        top: 50px;
    }
    
    aside.inner-column.right {
        float: none;
    }

    div#google-mobile-body {
        top: -72px;
    }

    h1#page-title {
        top: 76px;
    }

    div#block-block-19 {
        height: 74px;
    }
    
    #main {
        padding-top: 0;
    }

    #block-menu-menu-footer-menu-abbreviated- ul {
        width: 100%;
        margin-right: 0;
    }

}

@media all and (min-width: 768px) and (max-width: 959px) {
    /* Two panels at these sizes */
    div#content.column nav.cat-panels figure:nth-of-type(odd) {
            margin: 50px calc(100% - 400px) 0 0;
    }
}

@media all and (max-width: 666px) {
    /* a.footer__site-link { display: none; } */
    footer#footer div#block-block-1 { width: 100%; }

}

@media all and (min-width: 660px) and (max-width: 767px) {
    /* back to three panels because we've lost the sidebar */
    div#content.column nav.cat-panels figure {
            margin-right: calc((100% - 600px) / 4);
    }

    div#content.column nav.cat-panels figure:nth-of-type(3n+2) {
            margin: 50px calc((100% - 600px) / 4) 0;
    }

    div#content.column nav.cat-panels figure:nth-of-type(3n+3) {
            margin: 50px 0 0 calc((100% - 600px) / 4);
    }

}

@media all and (max-width: 659px) {

    div#content.column div.sharethis-buttons {
        top: 680px;
    }

}

@media all and (min-width: 461px) and (max-width: 659px) {
    /* Once again, two panels, evenly spaced */
    div#content.column nav.cat-panels figure:nth-of-type(odd) {
            margin: 50px calc(100% - 400px) 0 0;
    }

    div#content.column div.sharethis-buttons {
        /* top: 535px; // Used for Continue Reading link */
        top: 635px;
    }

    div#content.column div.sharethis-buttons.reveal {
        /* top: 635px; // Used for Continue Reading link */
    }

}

@media all and (max-width: 570px) {

    nav#footer-nav ul { display: none; }

    #block-menu-menu-footer-menu-abbreviated- ul {
        font-size: 75%;
    }

}

@media all and (max-width: 460px) {
        /* Keep two panels but scale them with width */
    div#content.column nav.cat-panels figure {
        width: calc(50% - 12px);
        padding: 0 0 36%;
    }
    
    div#content.column nav.cat-panels figure:nth-of-type(odd) {
        margin: 50px 20px 0 0;
    }

    div#content.column nav.cat-panels figure img {
        width: 100%;
        height: 100%;
    }

    div#content.column > article.node-page.view-mode-full {
        margin-top: 4px;
    }

    div#content.column > article div.sharethis-wrapper span, div#sharethis div.sharethis-wrapper span {
        position: relative;
        z-index: 1;
        text-decoration: none;
        color: #000;
        display: inline-block;
        cursor: pointer;
        margin-right: 3px;
        margin-left: 3px;
        line-height: 16px;
        background-repeat: no-repeat;
        background-size: contain;
        padding-left: 20px;
        padding-right: 0;
        white-space: nowrap;
        font-size: 10px;
        height: 16px;
        width: auto;
    }

    div#content.column > article div.sharethis-wrapper span.st_facebook_custom, div#sharethis div.sharethis-wrapper span.st_facebook_custom {
        background-image: url(../images/facebook_16.png);
    }
    
    div#content.column > article div.sharethis-wrapper span.st_twitter_custom, div#sharethis div.sharethis-wrapper span.st_twitter_custom {
        background-image: url(../images/twitter_16.png);
    }
    
    div#content.column > article div.sharethis-wrapper span.st_linkedin_custom, div#sharethis div.sharethis-wrapper span.st_linkedin_custom {
        background-image: url(../images/linkedin_16.png);
    }
    
    div#content.column > article div.sharethis-wrapper span.st_pinterest_custom, div#sharethis div.sharethis-wrapper span.st_pinterest_custom {
        background-image: url(../images/pinterest_16.png);
    }
    
    div#content.column > article div.sharethis-wrapper span.st_googleplus_custom, div#sharethis div.sharethis-wrapper span.st_googleplus_custom {
        background-image: url(../images/googleplus_16.png);
    }
    
    div#content.column > article div.sharethis-wrapper span.st_reddit_custom, div#sharethis div.sharethis-wrapper span.st_reddit_custom {
        background-image: url(../images/reddit_16.png);
    }
    
    div#content.column > article div.sharethis-wrapper span.st_email_custom, div#sharethis div.sharethis-wrapper span.st_email_custom {
        background-image: url(../images/email_16.png);
    }
    
    div#content.column > article div.sharethis-wrapper span.st_sharethis_custom, div#sharethis div.sharethis-wrapper span.st_sharethis_custom {
        background-image: url(../images/sharethis_16.png);
    }

    div#content.column div.sharethis-buttons {
        /* top: calc( 100vw + 64px ); // Used for Continue Reading link */
        top: calc( 100vw + 164px );
    }

    div#content.column div.sharethis-buttons.reveal {
        /* top: calc( 100vw + 164px ); // Used for Continue Reading link */
    }

    h1#page-title {
        top: 26px;
    }

}

@media (min-width: 480px) and (max-width: 767px) {
    /* Further reduce hero size. Reduce logo and caption height */
    div#header-top {
        position: fixed;
        top: 0;
        background-color: #cc2929;
        z-index: 50;
    }

    #stick-header, #nav-header {
        height: 75px;
    }
    
    div#header-search.reveal {
        top: 75px;
    }
    
    div#header-search.reveal.scroll {
        top: 50px;
    }
    
    #header.header {
        height: 294px;
        margin-top: 0;
    }

    div#header-top {
        height: 75px;
        position: fixed;
        top: 0;
        background-color: #cc2929;
        z-index: 50;
    }
    
    img.header__logo-image {
        height: 71px;
    }
    
    div#mobile-search-share {
        top: 30px;
    }
    
    div#stick-header.scroll div#mobile-search-share {
        top: 18px;
    }
    
    div.region-header-menu {
        margin-top: 30px;
        cursor: pointer;
    }
    
    div#stick-header.scroll div.region-header-menu {
        margin-top: 18px;
    }
    
    div.region-hero-image {
        height: 185px;
        top: 75px;
    }
    div#header-bottom {
        position: relative;
        margin-top: 260px;
        height: 34px;
    }
    div#hero-caption {
        font-size: 100%;
        height: 34px;
        line-height: 200%;
    }
    div#header-logo {
        width: 100%;
        margin-right: -100%
    }
    
    #cse-search-box {
        height: 30px;
    }
    
    .flex20 figure {
        margin-right: calc( 25% - 100px );
    }
    
    .flex25 figure:nth-of-type(4n), .flex20 figure:nth-of-type(4n) {
        margin-right: 0;
    }

}

@media (min-width: 480px) {
    .flex33 figure:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media (max-width: 479px) {
    /* Drop Google capo, search. Further reduce hero size. Reduce logo and caption height */

    #stick-header, #nav-header {
        height: 50px;
    }
    
    a.header__logo {
        margin: 4px 0 0 4px;
    }
    
    .header__logo-image {
        max-width: 150px;
    }
    
    #block-sharethis-sharethis-block.share {
        height: 25px;
    }
    
    #block-sharethis-sharethis-block.share.reveal {
        top: 50px;
    }

    #header.header {
        height: 246px;
        margin-top: 0;
    }

    div#header-top {
        height: 50px;
        position: fixed;
        top: 0;
        background-color: #cc2929;
        z-index: 50;
    }
    
    img.header__logo-image {
        height: 46px;
    }
    
    div.region-hero-image {
        height: 160px;
        top: 50px;
    }
    div#header-bottom {
        position: relative;
        margin-top: 210px;
        height: 25px;
    }
    div#hero-caption {
        font-size: 100%;
    }
    div#header-logo {
        width: 100%;
        margin-right: -100%
    }
    div.region-header-menu {
        height: 32px;
    }
    div#capo {
        display: none;
    }
    #content {
        padding-right: 20px;
    }

    .flex25 figure, .flex20 figure {
        margin-right: calc( 33% - 100px );
    }
    
    .flex25 figure:nth-of-type(3n), .flex20 figure:nth-of-type(3n) {
        margin-right: 0;
    }

    .flex33 figure {
        margin-right: calc( 50% - 120px );
    }
    
    .flex33 figure:nth-of-type(2n) {
        margin-right: 0;
    }

}

@media (max-width: 359px) {
    div#google-mobile-body {
        margin-left: -20px;
    }
    div#google-footer {
        margin-left: 0;
    }

    .flex25 figure, .flex25 figure:nth-of-type(3n), .flex20 figure, .flex20 figure:nth-of-type(3n) {
        margin-right: calc( 50% - 100px );
    }
    
    .flex25 figure:nth-of-type(2n), .flex20 figure:nth-of-type(2n)  {
        margin-right: 0;
    }

    #block-menu-menu-footer-menu-abbreviated- ul {
        font-size: 62.5%;
    }

}

div#navigation {
    display: none;
}

#contact-site-form {
    overflow: auto;
    margin-bottom: 120px;
}