/*
Theme Name: Neighbourhood 2017
Theme URI: http://funkhaus.us
Description: A theme for WordPress.
Author: Funkhaus
Author URI: http://www.funkhaus.us
Version: 1.0

/*-------------------------------------------------------------- */

/*
 * Globals
 */
html {
    height: 100%;
}
body {
    font-family: 'Baskerville', 'baskerville-urw', Helvetica, Arial, sans-serif;
    font-size: 11px;
    color: #333333;
    margin: 0;
    overflow-x: hidden;
    min-height: 100%;

    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}
#tagline {
    display: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0;
    line-height: 1;
    font-weight: normal;
}
::selection {
    color: #ebebe3;
    background: #222;
}
::-moz-selection {
    color: #ebebe3;
    background: #222;
}

/*
 * Links
 */
a {
    color: #333;
    text-decoration: none;
    outline: none;
}
.not-mobile a:not(.block):hover {
    color: #666;
    text-decoration: none;
}
a img {
    border: none;
}

/*
 * Page Structure
 */
#container {
    padding-top: 195px;
    background-color: #f5f4f4;

    -webkit-flex: 1;
    flex: 1;
}
#content {
    max-width: 1150px;
    margin: 10px auto 0;
    position: relative;
}
#footer {
    background-color: #f5f4f4;
}
/*
 * Ads
 */
.ad {
    box-sizing: border-box;
    /*display: none !important;*/

    -webkit-flex: 1;
    flex: 1;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.ad div {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.mrec div {
    min-width: 300px;
    min-height: 250px;
}
.halfpage,
.halfpage_top {
    position: absolute;
    width: 100%;
    right: 0;
    margin: 10px 0 0;
}
.archive-wrap .halfpage,
.archive-wrap .halfpage_top {
    width: 33%;
}
.halfpage div,
.halfpage_top div {
    max-width: 300px;
    width: 100%;
    height: 600px;
}
.fluid_top {
    margin-top: 20px;
    width: 100%;
}
.fluid-top div {
    width: 320px;
    height: 100px;
}
.fluid-bottom {
    width: 100%;
    position: fixed;
    bottom: 0;
    z-index: 10;
}
.flui-bottom div {
    width: 320px;
    height: 50px;
}

/*
 * Utilities
 */
/* Responsive image containers */
.responsive-container {
    height: 0;
    position: relative;
}
.fluid-width-image-wrapper img,
.fluid-width-image-wrapper iframe {
    width: 100%;
    height: 100%;
    position: absolute;
}
.overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000000;
    opacity: 0.4;
    z-index: 5;
}

/* 404 */
.not-found {
    text-align: center;
    margin: 90px 0;
    font-size: 16px;
}
.not-found h2 {
    font-size: 54px;
    margin-bottom: 20px;
}
.not-found p {
    font-style: italic;
    font-size: 28px;
    margin: auto;
    line-height: 1.7;
}
.not-found a {
    text-decoration: underline;
}
.not-mobile .not-found a:hover {
    text-decoration: underline;
    color: #999999;
}
.not-found + .home-suggested h4 {
    display: none;
}

/*
 * Header
 */
#header {
    position: fixed;
    z-index: 150;
    width: 100%;
    text-align: center;
    top: 0;
    box-sizing: border-box;
    background-color: #f5f4f4;
}
#header .date-top {
    font-size: 16px;
    padding: 10px 0;
    margin-bottom: 0;
    height: 20px;
}
#header .fixed-meta {
    width: 100%;
    padding: 0 25px;
    box-sizing: border-box;
    max-width: 1150px;
    margin: 0 auto;

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#header .social-wrap {
    width: 170px;
}
#header .social-wrap .svg {
    padding: 0 2px;
}
#header .info-wrap {
    position: relative;
    z-index: 20;
}
#header #logo {
    width: 70%;
    height: 60px;
}
#header #logo .svg {
    width: 100%;
    height: 100%;
}
#header .divider {
    display: none;
}
#sub-headline-menu {
    list-style-type: none;
    padding: 0;
    font-size: 0;
    padding: 15px 0;
    position: relative;
    z-index: 15;
    margin: 0 180px;
}
#sub-headline-menu li {
    display: inline;
    font-size: 18px;
    padding: 0 30px;
}
.not-mobile #sub-headline-menu:hover li a {
    color: #cccccc;
}
.not-mobile #sub-headline-menu:hover li a:hover {
    color: #000000;
}

/* Main menu */
.full-header-wrap {
    background-color: #000000;
    color: #ffffff;
    box-shadow: 0px 1px 5px 0px #777777;
    font-size: 0;
    box-sizing: border-box;
    position: relative;
    z-index: 10;
}
.main-menu-wrap {
    padding: 10px 30px 10px 90px;
    box-sizing: border-box;
    max-width: 1150px;
    margin: 0 auto;
    position: relative;
}
.main-menu-wrap .logo {
    display: none;
}
.main-menu {
    list-style-type: none;
    padding: 0;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.main-menu li {
    display: inline;
    padding: 0 10px;
}
.main-menu li a {
    font-size: 21px;
    color: #ffffff;
}
body:not(.home) .main-menu li.current-post-ancestor a,
body:not(.home) .main-menu li.current-menu-item a,
.not-mobile #main-menu:hover li a:hover {
    color: #ffffff;
}

/* Main menu hover and current-menu-item states */
body:not(.home) .main-menu li a,
.not-mobile #main-menu:hover li a {
    color: #737373;
}

/* Weather widget */
.widget:not(.loaded) {
    opacity: 0;
}
.weather-wrap {
    position: relative;
    width: 170px;
}
.weather-wrap .widget {
    position: absolute;
    font-family: sans-serif;
    font-weight: 700;
    letter-spacing: 0.5px;
    top: 50%;
    right: 24px;
    text-align: right;

    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.weather-wrap .icon {
    position: absolute;
    height: 100%;
}
.weather-wrap .icon img {
    display: none;
}
.weather-wrap .icon .svg {
    width: 35px;
    height: 100%;
}
.weather-wrap .city {
    font-size: 13px;
    margin-left: 45px;
    margin-bottom: 3px;
}
.weather-wrap .temperature {
    display: block;
    font-size: 20px;
    margin-left: 45px;
    text-align: left;
}
.weather-wrap .temperature .units {
    font-size: 17px;
}
.weather-wrap .date {
    opacity: 0;
    font-size: 16px;
}

/* Patreon link */
.patreon-link {
    display: block;
    margin-top: 30px;
    width: 150px;
    transform: translateX(33px);
    position: absolute;

    transition: opacity 0.4s;
}
.patreon-link img {
    width: 100%;
    height: auto;
}
.scrolled-down .patreon-link,
.menu-opened .patreon-link {
    opacity: 0;
    pointer-events: none;
}

/* Hamburger */
#hamburger {
    top: -4px;
    bottom: 0;
    left: 20px;
    width: 25px;
    height: 18px;
    padding: 15px;
    position: absolute;
    cursor: pointer;
    text-align: center;
}
#hamburger span {
    right: 0;
    bottom: 8px;
    left: 15px;
    background-color: #ffffff;
    position: absolute;
    height: 2px;
    border-radius: 10%;
    width: 25px;
    top: 50%;
}
#hamburger span:first-child {
    top: 16px;
}
#hamburger span:last-child {
    top: 32px;
}

/* Hamburger hover */
.not-mobile:not(.menu-opened) #hamburger:hover span:nth-child(1),
.not-mobile:not(.menu-opened) #hamburger:hover span:nth-child(4) {
    left: 20px;
    width: 15px;
}

/* Hamburger activated */
.menu-opened #hamburger span:nth-child(1) {
    opacity: 0;
    left: 15px;
    right: 5px;
    top: 50%;
}
.menu-opened #hamburger span:nth-child(4) {
    opacity: 0;
    left: 15px;
    right: 5px;
    top: 50%;
}
.menu-opened #hamburger span:nth-child(2) {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.menu-opened #hamburger span:nth-child(3) {
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

/* Scrolled-down header */
.scrolled-down:not(.menu-opened) #header #logo {
    height: 20px;
    width: 220px;
}
.scrolled-down:not(.menu-opened) #header .date-top,
.scrolled-down:not(.menu-opened) #sub-headline-menu {
    opacity: 0;
    height: 0;
    padding: 0;
    margin-bottom: 15px;
}
.scrolled-down:not(.menu-opened) #logo .svg {
    width: 220px;
    height: 20px;
}
.scrolled-down:not(.menu-opened) .weather-wrap .widget {
    opacity: 0;
}
.scrolled-down:not(.menu-opened) .weather-wrap .date {
    opacity: 1;
}

/* Extended header */
.full-header {
    height: 0;
    position: relative;
    margin-top: 0;
    margin-right: -15px;
    overflow-x: hidden;
    overflow-y: auto;
    min-height: 0;

    -webkit-overflow-scrolling: touch;
}
.menu-opened .full-header {
    min-height: calc(100vh - 180px);
}

/* Search */
.search-wrap {
    background-color: #2e2e2e;
}
.search {
    position: relative;
    max-width: 1150px;
    margin: 0 auto;
}
.full-header h4 {
    max-width: 1150px;
    font-weight: 600;
    font-size: 19px;
    text-align: left;
    margin: 60px auto 30px;
    position: relative;
    left: 80px;
}
.search form {
    position: relative;
    background-color: #2e2e2e;
}
.search input {
    max-width: 1150px;
    box-sizing: border-box;
    background-color: #2e2e2e;
    border: none;
    width: 100%;
    padding: 0 90px 0 130px;
    height: 45px;
    color: #ffffff;
    font-size: 19px;
    font-family: 'Baskerville';
}
.search input:focus {
    outline: none;
}
.search img.svg {
    display: none;
}
.search .svg {
    position: absolute;
    top: 8px;
    left: 80px;
}

/* Search results */
.search-results-grid.standard-row {
    position: absolute;
    background-color: transparent;
    right: 0;
    left: 0;
    margin: 0 auto;
    width: 100%;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}
.search-results-grid.results-displayed {
    background-color: #000000;
}
.search-results-grid .no-results {
    width: 100vw;
    height: 100px;
    color: #ffffff;
    font-size: 22px;
    margin-top: 30px;
}
.search-results-grid .block {
    padding: 20px;
    max-width: 260px;
    background-color: transparent !important;
    color: #ffffff !important;
}
.search-results-grid .block-standard {
    width: calc(33% - 40px);
}
.search-results-grid .block-standard .meta {
    margin-bottom: 0;
    font-size: 14px;
}

/* Expanded menu */
.expanded-wrap {
    display: -webkit-flex;
    display: flex;
}
#expanded-menu {
    font-size: 19px;
    list-style-type: none;
    padding: 0 0 0 80px;
    box-sizing: border-box;
    text-align: left;
    margin: 60px auto 90px;
    right: 50%;
    max-width: 1150px;

    display: -webkit-flex;
    display: flex;
}
#expanded-menu > li:first-of-type {
    margin-right: 240px;
}
#expanded-menu > li {
    margin-right: 80px;
}
#expanded-menu > li > span {
    font-weight: 600;
}
#expanded-menu .sub-menu {
    list-style-type: none;
    font-size: 18px;
    padding: 0;
    font-weight: 400;
    margin-top: 35px;
}
#expanded-menu .sub-menu li {
    margin-bottom: 15px;
}
.not-mobile #expanded-menu .sub-menu:hover a {
    color: #4d4d4d;
}
#expanded-menu a,
.not-mobile #expanded-menu .sub-menu:hover a:hover {
    color: #ffffff;
}
.expanded-patreon-link {
    margin-top: 60px;
    margin-right: 40px;
}
.expanded-patreon-link img {
    width: 150px;
    height: auto;
}

/* Menu opened */
.menu-opened,
.roadblock-opened {
    overflow: hidden;
}

/*
 * Blocks
 */
.block {
    background-color: #e5e5e5;
    margin: 10px;
    padding: 10px;
    display: inline-block;
    position: relative;
    font-size: 16px;
    text-align: left;
}
.block:not(.element-in-view) {
    opacity: 0;
}
.block .meta {
    font-size: 18px;
    margin-bottom: 10px;
    position: relative;
    z-index: 10;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.block .category-label {
    text-transform: uppercase;
}
.block .category-label .secondary-category {
    position: absolute;
    margin-top: 5px;
    font-size: 0.75em;
}
.featured-home .block-standard .secondary-category {
    position: relative;
}
.block .image-wrap img {
    display: none;
}
.block .image-wrap {
    overflow: hidden;
}
.block .image-wrap .image {
    width: 100%;
    background-size: cover;
    /*background-position: center;*/

    -webkit-transform: scale(1);
    transform: scale(1);
}
.not-mobile .block:hover .image {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
.block img {
    width: 100%;
    height: auto;
    margin-bottom: 15px;
}
.block .title {
    margin-bottom: 20px;
    text-align: left;
}
.block .title .line-1 {
    font-size: 26px;
    display: block;
}
.block .title .line-2 {
    font-size: 20px;
    font-style: italic;
}
.block .title .author-name {
    margin-top: 20px;
}
.block .teaser {
    display: none;
}
.block .excerpt {
    text-align: left;
    line-height: 1.4;
    font-size: 18px;
}

/* standard block */
.block-standard {
    width: calc(33% - 30px);
    margin: 10px 0;
}
.block-standard .meta-wrap {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}
.block-standard .meta {
    margin-bottom: 80px;
}
.block-standard .image-wrap {
    overflow: hidden;
    margin-bottom: 15px;

    -webkit-order: -1;
    order: -1;
}
.block-standard .image {
    padding-bottom: 80%;
}
.block-standard .overlay {
    display: none;
}
.block-standard img {
    margin: 0;

    -webkit-transform: scale(1);
    transform: scale(1);
}
.not-mobile .block:hover img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

/* landscape block */
.block-landscape {
    width: 60%;
}
.block-landscape .meta-wrap {
    width: 50%;
}
.block-landscape img {
    display: none;
}
.block-landscape .overlay {
    display: none;
}
.block-landscape .image-wrap {
    position: absolute;
    width: calc(50% - 30px);
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 0;
}
.block-landscape .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    background-size: cover;
    background-repeat: no-repeat;
}

/* fullbleed block */
.block-fullbleed {
    width: 60%;
    max-width: 760px;
    color: #ffffff;
}
.block-fullbleed .meta-wrap {
    text-align: center;
    margin: 0;
    height: 100%;

    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.block-fullbleed .meta {
    font-size: 16px;
    margin-bottom: 70px;
}
.block-fullbleed .image-wrap {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
}
.block-fullbleed .image-wrap .image {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
}
.block-fullbleed img {
    display: none;
}
.block-fullbleed .title,
.block-fullbleed .excerpt,
.block-fullbleed .teaser {
    z-index: 5;
    text-align: center;
}
.block-fullbleed .title {
    margin-bottom: 0;
}
.block-fullbleed .title .line-1 {
    font-size: 38px;
    padding: 0 40px;
}
.block-fullbleed .title .line-2 {
    display: block;
    text-align: center;
}
.block-fullbleed .category-label {
    display: none;
}
.block-fullbleed .excerpt {
    margin: 60px auto 70px;
    padding: 0 45px;
    font-size: 16px;
    font-style: italic;
    max-width: 450px;
    line-height: 1.4;
    text-align: center;
}
.block-fullbleed .teaser {
    font-size: 16px;
    font-style: italic;
    text-decoration: underline;
    display: block;
    color: #ffffff;
    margin-bottom: 15px;
}

/* Block-fullbleed hover */
.not-mobile .block-fullbleed:hover .overlay {
    background-color: #333333;
}

/* Next Door block-fullbleed */
.category-next-door .featured-wrap .block-fullbleed {
    padding-top: 100px;
}
.category-next-door .block-fullbleed .meta-wrap {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}
.category-next-door .featured-wrap .block-fullbleed .meta-wrap {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}
.category-next-door .block-fullbleed .meta {
    display: none;
}
.category-next-door .block-fullbleed .excerpt {
    margin: 30px auto 40px;
}
.category-next-door .block-fullbleed .teaser {
    display: none;
}

/* Headline block */
.block-headline {
    width: calc(100% - 40px);
    background-color: transparent;
    min-height: 380px;
    margin: 0;

    display: -webkit-flex;
    display: flex;
}
.block-headline .image-wrap {
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 10px;
    width: calc(60% - 20px);
}
.block-headline .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-size: cover;
}
.block-headline .overlay,
.block-headline img {
    display: none;
}
.block-headline .meta-wrap {
    width: calc(40% - 10px);
    margin-left: calc(60% + 30px);
    text-align: center;

    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
}
.block-headline .meta {
    display: none;
}
.block-headline .title {
    text-align: left;
}
.block-headline .title .line-1 {
    font-size: 40px;
}
.block-headline .title .line-2 {
    font-size: 28px;
}
.block-headline .excerpt {
    margin-bottom: 40px;
    max-width: 360px;
}
.block-headline .teaser {
    display: inline;
    text-align: left;
    font-style: italic;
    text-decoration: underline;
    font-size: 18px;
}

/* Video blocks */
.video-block-wrap {
    width: 50%;
}
.block.video {
    padding: 0 0 56.25%;
    width: calc(100% - 20px);
    max-width: initial;
    height: 0;
}
.block.video .meta-wrap {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    -webkit-justify-content: center;
    justify-content: center;
}
.block.video .meta,
.block.video .teaser,
.featured-wrap .block.video .excerpt {
    display: none;
}
.block.video .svg {
    margin-bottom: 20px;
}
.block.video:first-of-type .title {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
}
#content > .block.video:first-of-type .svg {
    margin: 30px auto 10px;

    -webkit-order: 1;
    order: 1;
}
.block.video:first-of-type .excerpt {
    margin: 0 auto;
}
.featured-wrap .block.video {
    display: block;
}
.featured-wrap .block.video .meta-wrap {
    -webkit-justify-content: center;
    justify-content: center;
}
.featured-wrap .block.video .title {
    margin-top: 40px;

    -webkit-order: 1;
    order: 1;
}

/*
 * Front Page
 */
#content.home {
    text-align: center;
}
.featured-home {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-content: flex-start;
    align-content: flex-start;
}
.ad + .featured-home {
    margin-top: 10px;
}
.featured-home .block-fullbleed {
    margin-bottom: 20px;
}
.featured-home .block-standard {
    padding: 10px;
    width: calc(40% - 70px);
    margin-bottom: 20px;
}
.featured-home .block-standard .meta {
    margin-bottom: 5px;

    -webkit-order: -1;
    order: -1;
}
.featured-home .block-landscape {
    margin: 0 10px;
    padding-left: 10px;
    width: calc(60%);
    min-height: 200px;
}
.featured-home .block-landscape .image-wrap {
    left: calc(50% + 20px);
}
.featured-home .block-landscape .meta {
    margin-bottom: 60px;
}
.featured-home .mrec {
    width: 0;
    margin: 10px;
}
.home-suggested h4 {
    text-align: center;
    font-size: 51px;
    font-style: italic;
    margin: 45px 0;
}

/* Front page sections */
.home .section h3 {
    font-size: 120px;
    position: relative;
    z-index: 5;

    -webkit-transform: translateY(45px);
    transform: translateY(45px);
}

/*
 * Category general styling
 */

/* Featured row */
.featured-wrap {
    display: -webkit-flex;
    display: flex;
}

/* Row of standard blocks */
.standard-row {
    margin: 0 10px 65px;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

/* Divider */
.divider {
    width: calc(100% - 30px);
    max-width: 1150px;
    margin: 10px auto;
    height: 2px;
    background-color: #000000;
}

/* Archive wrap */
.archive-wrap {
    width: 100%;
    position: relative;
    min-height: 700px;
    margin-bottom: 20px;

    display: -webkit-flex;
    display: flex;
}
.template-features .archive-wrap .block-grid {
    display: block;
}
.archive-wrap .block-grid {
    width: 66%;

    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.archive-wrap .block {
    margin: 10px;
    width: calc(50% - 60px);
}
.archive-wrap .excerpt {
    font-size: 16px;
}

/*
* Specific category styling
*/

/* Issues and Culture */
.template-culture .featured-wrap {
    margin-top: 10px;
}
.template-culture .featured-wrap .block-fullbleed {
    width: calc(66% - 20px);
    padding: 0;
    margin: 10px;
}
.template-culture .featured-wrap .block-standard {
    margin: 10px 10px;
}

/* Features and Expression */
#content.template-features {
    margin-top: 0;
}
.template-features .block-headline {
    margin-top: 15px;
}
.template-features .archive-wrap .block {
    width: calc(100% - 60px);
    background-color: transparent !important;
    margin: 10px;
}
.template-features .archive-wrap .block:first-child {
    margin-top: 0;
}
.template-features .archive-wrap .meta-wrap {
    margin-left: 50%;
}
.template-features .archive-wrap .meta {
    margin-bottom: 40px;
    color: #808080;
}
.template-features .archive-wrap .line-1 {
    font-size: 37px;
}
.template-features .archive-wrap .teaser {
    display: inline-block;
    margin-top: 40px;
    font-size: 18px;
    text-decoration: underline;
    font-style: italic;
}
.template-features .block-headline + .standard-row {
    margin-bottom: 0;
}

/* Crossword solutions */
.category-crossword-solutions:not(.category-expression) .block .overlay,
.category-crossword-solutions:not(.category-expression) .block .meta-wrap {
    display: none;
}

/* Next Door */
/* Slideshow */
.category-next-door .slideshow {
    margin: 20px 10px 20px;
    height: 0;
    width: calc(100% - 20px);
    padding-bottom: 56.25%;
    overflow: hidden;
    opacity: 0;
}
.category-next-door .slideshow.initialized {
    opacity: 1;
}
.slideshow .block {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    max-width: initial;
    box-sizing: border-box;
}
.slideshow .nav-wrap {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.slideshow .nav {
    padding: 20px;
    z-index: 105;
    cursor: pointer;

    -webkit-transform: scale(1);
    transform: scale(1);
}
.not-mobile .slideshow .nav:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
.slideshow .pager {
    position: absolute;
    right: 0;
    bottom: 10px;
    left: 0;
    text-align: center;
    z-index: 105;
}
.slideshow .pager span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    margin: 5px;
    background-color: transparent;
    border: 1px solid #ffffff;
    display: inline-block;
    cursor: pointer;
}
.slideshow .pager span.cycle-pager-active,
.not-mobile .slideshow .pager span:hover {
    background-color: #ffffff;
}

/* Latest and Archive */
.category-next-door #content > h3 {
    text-align: center;
    font-size: 26px;
    margin: 10px 10px;
    padding: 15px 0;
    background-color: #f0f0f0;
}

.category-next-door #content > .ad.halfpage {
    position: relative;
}

/* Footpath */
#content.template-footpath {
    position: relative;
    margin: 10px auto 0;
}
.block-footpath {
    width: calc(33.3% - 20px);
    overflow: hidden;
    padding: 0;
}
.block-footpath .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.block-footpath .overlay {
    opacity: 0;
}
.image-wrap img {
    display: none;
}
.block-footpath .meta-wrap {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    text-align: center;
    z-index: 5;

    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
}
.block-footpath .title {
    font-size: 36px;
    text-align: center;
    opacity: 0;
    width: 100%;
    color: #ffffff;
}
.block-footpath .line-2 {
    display: block;
    font-size: 26px;
    font-style: italic;
}
.block-footpath .label {
    font-size: 21px;
    bottom: 15px;
    text-decoration: underline;
    font-style: italic;
    opacity: 0;
    color: #ffffff;
}
.not-mobile .block-footpath:hover .title,
.not-mobile .block-footpath:hover .label {
    opacity: 1;
}
.not-mobile .block-footpath:hover .overlay {
    opacity: 0.6;
}
#more-posts {
    display: none;
}

/* The Local */
.category-the-local .video .svg {
    position: relative;
    z-index: 5;
}

/*
 * Single (Blog detail)
 */
#content.single,
#content.fallback {
    text-align: center;
    max-width: 1020px;
    padding: 0 40px 0;
    position: relative;
}
.single .post-date {
    font-size: 16px;
    margin: 20px auto;
}
.single .title,
.fallback .title {
    margin: 30px auto;
}
.single .title .line-1,
.fallback .title .line-1 {
    font-size: 54px;
    display: block;
    margin-bottom: 40px;
}
.single .title .line-2,
.fallback .title .line-2 {
    font-size: 28px;
    display: block;
    font-style: italic;
}

/* Single Entry */
.single-post #content .entry a {
    text-decoration: underline;
}
.not-mobile .single #content .entry a:hover {
    text-decoration: underline;
    color: #999999;
}
.single .post .entry-wrap {
    text-align: left;
    position: relative;
    min-height: 850px;

    display: -webkit-flex;
    display: flex;
}
.single .post .entry-wrap.no-text,
.single .post .no-text .entry,
.single .post.category-podcast .entry-wrap {
    min-height: 0;

    -webkit-flex-direction: column;
    flex-direction: column;
}
.single .no-text .sidebar {
    /*display: none;*/
}
.single .feature-wrap {
    position: relative;
}
.single .location-meta {
    position: absolute;
    bottom: 100%;
    width: 100%;
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1.2;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.single .location-meta a {
    display: block;
    text-decoration: underline;
}
.single .location-meta span {
    display: block;
}
.location-meta address {
    text-align: left;
    font-style: normal;
}
.location-meta .contact-info {
    text-align: right;
}
.single .featured-video {
    margin-bottom: 40px;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    position: relative;
}
.single .featured-video iframe {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
}
.single .featured-image img {
    width: 100%;
    height: auto;
}
.single .featured-image .caption {
    margin: 20px auto 40px;
    font-size: 13px;
    color: #8c8c8c;
}
.single .post-credits {
    font-size: 18px;
    max-width: 700px;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.single .entry .fluid-width-image-wrapper {
    margin: auto;
}
.no-ads .single .post-credits {
    max-width: initial;
    width: 66%;
    margin: 0 auto;
}
.single .no-text .post-credits {
    max-width: initial;
    width: 100%;
}
.single .post-credits .author-name,
.single .post-credits a {
    text-decoration: underline;
}
.single .share-links a {
    padding: 0 5px;
}
.single .sidebar .move-with-scroll {
    width: 100%;
}
.single .entry-wrap:not(.no-text) .entry,
.fallback .entry-wrap:not(.no-text) .entry {
    max-width: 700px;
    width: 66%;
    min-height: 550px;
    margin: auto;
}
.fallback .entry {
    margin: auto;
    text-align: left;
    font-size: 16px;
}
.fallback .entry a {
    text-decoration: underline;
}
.no-ads.single .entry {
    max-width: initial;
    margin: 0 auto;
}
.single .entry > *,
.fallback .entry > * {
    margin-bottom: 65px;
}
.single .entry > p:first-of-type,
.fallback .entry > p:first-of-type {
    font-size: 26px;
}
.single .entry > p:not(:first-of-type),
.fallback .entry > p:not(:first-of-type) {
    font-size: 16px;
    margin: 0 50px 30px;
    line-height: 1.3;
}
.fallback .entry > p:not(:first-of-type) {
    margin: 0 auto 40px;
}
.single .entry > img,
.fallback .entry > img {
    width: 100%;
    height: auto;
}
.single .entry blockquote,
.fallback .entry blockquote {
    font-size: 26px;
    font-weight: 600;
    text-align: center;
    line-height: 1.3;
    margin-bottom: 30px;
}

/* Headings */
.single #content .entry h1 {
    font-size: 5em;
}
.single #content .entry h2 {
    font-size: 3em;
}
.single #content .entry h3 {
    font-size: 2.5em;
}
.single #content .entry h4 {
    font-size: 2em;
}

/* Drop cap */
.dropcap::first-letter {
    font-size: 2.75em;
    float: left;
    padding-right: 5px;
    padding-top: 4px;
    line-height: 0.75;
}

/* Gallery */
.slide {
    width: 100%;
}
.gallery-item,
.gallery .slide {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;
}
.gallery-item img,
.gallery .slide img {
    display: none;
}
.gallery-controls {
    width: 100%;
    position: absolute;
    bottom: -65px;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.gallery-controls .browse {
    width: 33%;
    cursor: pointer;
    padding: 20px;
    text-align: center;
}
.gallery-controls .svg * {
    fill: #000000;
}
.gallery .caption {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    width: 33%;
    margin: 20px auto 10px;
    font-size: 16px;
    font-style: italic;
    color: #666666;
    text-align: center;
}

/* Captioned image */
.wp-caption img {
    max-width: 100%;
    height: auto;
}

/* Podcast entry */
.single .category-podcast .entry,
.single .category-podcast iframe {
    width: 100%;
}

/* Breadcrumbs */
.single .breadcrumbs {
    font-size: 16px;
    margin: 40px auto;
}
.single .breadcrumbs ol {
    list-style-type: none;
    display: inline-block;
}
.single .breadcrumbs li {
    display: inline-block;
}
.single .breadcrumbs li:after {
    content: ' »';
}
.single .breadcrumbs a {
    text-decoration: underline;
}

/* Recommendations */
.recommendations {
    position: relative;
    left: -40px;
    width: calc(100% + 80px);
}
.recommendations h3 {
    font-size: 51px;
    font-style: italic;
    margin-bottom: 30px;
}
.recommendations .title {
    margin: 0 0 20px;
}
.recommendations .title .line-1 {
    font-size: 26px;
    text-align: left;
    margin-bottom: 0;
}
.recommendations .title .line-2 {
    font-size: 18px;
}

/* Post Navigation */
.post-nav-wrap {
    position: relative;
}
.post-nav-wrap .nav {
    font-size: 18px;
    color: #8c8c8c;
    font-style: italic;
}
.post-nav-wrap .nav.stuck-bottom {
    opacity: 0;
}
.post-nav-wrap .prev {
    position: absolute;
    top: 0;
    padding-bottom: 30px;

    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transform: translate(-100%, -100%) rotate(-90deg);
    transform: translate(-100%, -100%) rotate(-90deg);
}
.post-nav-wrap .next {
    position: absolute;
    top: 0;
    right: 0;
    padding-bottom: 30px;

    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: translate(100%, -100%) rotate(90deg);
    transform: translate(100%, -100%) rotate(90deg);
}

/*
 * Pagination
 */
.pagination {
    font-size: 18px;
    margin: 30px auto;

    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}
.pagination a:not(.current),
.pagination .page-numbers:before,
.not-mobile .pagination a span {
    color: #cccccc;
}
.not-mobile .pagination a:hover {
    color: #000000;
}
.pagination .page-numbers:last-child span {
    display: none;
}

/*
 * About
 */
.about {
    font-size: 18px;
}
.about .headline {
    color: #ffffff;
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    background-size: cover;
}
.about .headline .content-wrap {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-direction: column;
    flex-direction: column;
}
.about .headline h2 {
    z-index: 5;
    font-size: 165px;
    font-style: italic;
}
.about .headline h3 {
    z-index: 5;
    font-size: 30px;
    width: 66%;
    line-height: 1.3;
}
.about .entry p {
    max-width: 560px;
    margin: 35px auto;
    line-height: 1.3;
}

/* Contact section */
.contact .section {
    text-align: center;
    max-width: 700px;
    margin: 0 auto;

    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.contact.entry p {
    margin: 0 auto;
}
.contact .section h3 {
    font-size: 54px;
    width: 100%;
    margin-bottom: 50px;
}
.contact .person.full-width {
    width: 100%;
    margin-bottom: 65px;
}
.contact .person {
    width: 50%;
    margin-bottom: 50px;
    line-height: 1.5;
}
.contact .person h4 {
    font-size: 19px;
    font-weight: 600;
    margin-bottom: 7px;
}
.contact .person address {
    font-style: normal;
}
.contact .person a {
    text-decoration: underline;
}
.contact .team {
    -webkit-justify-content: space-around;
    justify-content: space-around;
}
.contact .team .person {
    width: 33%;
}

/*
 * Newsletter Signup, Category Description
 */
.signup-page .newsletter-signup-wrap {
    display: none;
}
.newsletter-signup-wrap,
.category-description {
    margin: 10px 10px 80px;
    padding: 40px 0;
    background-color: #e5e5e5;

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.newsletter-signup {
    font-size: 16px;
    font-style: italic;
    text-align: center;
    padding: 0 40px;
}
.newsletter-signup h4,
.category-description h3 {
    font-size: 28px;
    font-style: normal;
    margin-bottom: 5px;
    color: #000000;
}
.newsletter-signup h5,
.category-description .description {
    font-size: 16px;
    color: #000000;
}
.not-mobile .newsletter-signup:hover,
.not-mobile .newsletter-signup:hover h5 {
    text-decoration: underline;
    color: #000000;
}
.not-mobile .newsletter-signup:hover h4 {
    color: #000000;
}

/* Category Description */
.category-description-wrap {
    margin: 0 10px;
}
.category-description {
    background-color: #dedede;
    margin: 20px auto 10px;
    max-width: 1150px;
    text-align: center;
    padding: 20px 0;

    -webkit-flex-direction: column;
    flex-direction: column;
}
.category-description .description {
    font-style: italic;
    padding: 0 40px;
}

/*
 * Footer
 */
.footer-menu-wrap {
    background-color: #000000;
    color: #ffffff;
    text-align: center;
    padding: 30px 50px 35px;
}
.footer-menu-wrap .svg * {
    fill: #ffffff;
}
.footer-logo .svg {
    width: 225px;
    height: 64px;
    padding: 0 20px;
}
#footer-menu {
    margin: 15px auto 0;
    padding: 0;
    list-style-type: none;
    font-size: 19px;
    font-size: 0;
    max-width: 350px;
}
#footer-menu li {
    display: inline-block;
    margin-bottom: 10px;
}
#footer-menu a {
    color: #ffffff;
    font-size: 19px;
    padding: 0 8px;
}
.not-mobile #footer-menu:hover a {
    color: #777777;
}
.not-mobile #footer-menu:hover a:hover {
    color: #ffffff;
}
#footer .social-wrap {
    margin-top: 10px;
    display: inline-block;
    padding: 5px 20px;
    box-sizing: border-box;
}
.not-mobile .social-wrap:hover .svg {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
}
.not-mobile .social-wrap:hover .svg:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
#footer .social-wrap .svg {
    padding: 5px;
}
.mobilefooter,
.article_mobilefooter {
    display: none;
}

/* Roadblock & Newsletter Signup */
.roadblock {
    z-index: 160;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    font-size: 19px;
    display: none;

    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.signup-display {
    background-color: #ffffff;
    z-index: 10;
    padding: 20px;
    position: relative;
    width: 880px;
    margin: auto;

    display: -webkit-flex;
    display: flex;
}
.signup-display .image {
    width: 40%;
    background-size: cover;
    background-position: center;
}
.signup-display .text-wrap {
    width: 60%;
    padding: 20px;
    background-color: #eeeeee;
    position: relative;
}
.signup-display .close-button {
    font-size: 18px;
    position: absolute;
    top: -5px;
    right: 0;
    cursor: pointer;
    padding: 10px;
}
.signup-display .entry-roadblock {
    text-align: center;
    font-size: 19px;
    margin: 10px 0 20px;
}
.signup-display .entry-roadblock p {
    margin: 0;
    line-height: 1.3;
}
.signup-display .mc-field-group {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}
.signup-display input[type='text'],
.signup-display input[type='email'] {
    font-family: 'Baskerville', Helvetica, Arial, sans-serif;
    border: none;
    margin: 10px 0;
    font-size: 18px;
    padding: 15px;
    border-radius: 6px;
    color: #000000;
    width: calc(60% - 20px);
    background-color: #eeeeee;
    border: 2px #ffffff solid;
}
.signup-display input.post-code {
    width: calc(40% - 20px);
}
.signup-display input[type='text'] + input[type='text'] {
    margin-left: 20px;
}
.signup-display input::-webkit-input-placeholder {
    color: #000000;
}
.signup-display input.email {
    width: calc(100% - 30px);
}
.signup-display input:focus {
    outline: none;
}
.signup-display .radio-wrap {
    display: inline-block;
    margin-left: 20px;
    height: 100%;

    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}
.signup-display .radio-wrap .label {
    margin-bottom: 5px;
}
.signup-display input[type='radio'] {
    position: relative;
    bottom: 2px;
    margin: 5px 8px;
}
.signup-display input[type='submit'] {
    font-family: 'Baskerville', Helvetica, Arial, sans-serif;
    width: calc(40% - 20px);
    -webkit-appearance: none;
    border: 2px solid #ffffff;
    background-color: transparent;
    display: block;
    margin-left: 20px;
    font-size: 18px;
    position: relative;
    top: 1px;
    padding: 15px 0;
    border-radius: 5px;
    cursor: pointer;
}
.signup-display input[type='submit']:hover {
    background-color: #ffffff;
    border: 2px solid #000000;
}
.signup-display .indicates-required {
    font-size: 14px;
    font-style: italic;
    margin-top: 10px;
    color: #aaaaaa;
}
.signup-display .indicates-required a {
    color: #aaaaaa;
    text-decoration: underline;
    margin-left: 20px;
}
.signup-display .indicates-required a:hover {
    text-decoration: underline;
}

/* Signup page */
.signup-page .signup-display {
    margin-top: 80px;
    padding: 20px 20px 100px;
    background-color: #f5f4f4;
}
.signup-page .signup-display .close-button {
    display: none;
}
.signup-page .signup-display .text-wrap {
    background-color: #ffffff;
}
.signup-page .signup-display input[type='text'],
.signup-page .signup-display input[type='email'],
.signup-page .signup-display input[type='submit'] {
    background-color: transparent;
    border: 2px #f5f4f4 solid;
}
.signup-page .signup-display input[type='submit']:hover {
    border: 2px #000000 solid;
}

/*
 * Animations
 */
/* Color */
a {
    transition: color 0.4s;
}

/* Background color */
.pager span,
.block-fullbleed .overlay {
    transition: background-color 0.4s;
}

/* Opacity */
.browse,
.date,
.widget,
.template-footpath .title,
.template-footpath .label,
.template-footpath .overlay,
.slideshow,
.post-nav-wrap .nav,
.element-in-view {
    transition: opacity 0.4s;
}

/* Background color and opacity */
.block {
    transition: background-color 0.4s, opacity 0.4s;
}

/* Transform */
.social-wrap .svg,
.slideshow .nav {
    -webkit-transition: transform 0.4s;
    transition: transform 0.4s;
}

/* Image zoom */
.block-standard img,
.image-wrap .image,
.template-footpath .image {
    -webkit-transition: transform 3s;
    transition: transform 3s;
}

/* Max Height */
.main-menu-wrap {
    transition: max-height 0.4s;
}

/* Min Height */
.full-header {
    transition: min-height 0.4s;
}

/* Everything */
svg path,
#hamburger span,
#header .date-top,
#sub-headline-menu,
#logo,
#logo .svg,
.date-top,
.search-results-grid,
.full-header-wrap .divider,
.signup-display input[type='submit'] {
    transition: 0.4s;
}

/*
 * Wordpress Required
 */
.alignleft {
    display: inline;
    float: left;
}
.aligncenter {
    clear: both;
    display: block;
    margin: 0 auto 10px auto;
}
.alignright {
    display: inline;
    float: right;
}
img.alignleft {
    margin: 0 10px 10px 0;
}
img.alignright {
    margin: 0 0 10px 10px;
}
img.aligncenter {
    margin: 0 auto 10px auto;
}
.wp-caption {
    background: #f1f1f1;
    color: #888;
    text-align: center;
    margin-bottom: 15px;
    width: auto !important;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
}
.wp-caption img {
    margin: 0px;
}
.wp-caption p.wp-caption-text {
    margin: 0 0 5px;
    padding: 4px;
    font-style: italic;
}
