/* redundant? */
img { display:block; }

/* remove the spacing left on containers */
/* this probably should be a unique class */
.row.no-gutters { margin-left:-15px; margin-right:-15px; }

.col img { max-width:100%; }

.section-wrapper { overflow:hidden; position:relative; justify-content:center; align-items:center; display:flex; }

.section-wrapper.full-width .row-wrapper { width:100%; }

.section-wrapper .row-wrapper { flex-grow:1; }

.section-wrapper .row-wrapper > .container { position:relative; }

.section-wrapper .content { margin:15px 0; }

.section-wrapper .content:first-child { margin-top:0; }

.section-wrapper .content:last-child { margin-bottom:0; }

.section-wrapper:not(.full-width) .row-wrapper > .container { display:flex; }

.section-wrapper:not(.full-width) .row-wrapper > .container > .row { flex:1; }

/* content alignment on non full width */

.section-wrapper:not(.full-width).content-bottom .row-wrapper > .container { align-items:end; }

.section-wrapper.full-width .container { max-width:none; }

@media (min-width:768px) {
 x.section-wrapper.full-width .container { max-width:none; }
    }


.fw-col { padding-left:0!important; padding-right:0!important; }


.fw-col > * { height:100%; }


.fw-col .image-wrapper { height:100%; }


.fw-col .image-wrapper img { object-fit:cover; height:100%; }

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

.content-top { align-items:start; }
.content-bottom { align-items:end; }

.content-middle .col, .content-middle [class*='col-'] { justify-content:center; display:flex; flex-direction:column; }


.content-floated { overflow:hidden; }
.content-floated  > .content { display:inline-block; margin:0px 5px 5px -4px; } /* -4px for margin trick */

.col.align-left { text-align:left; }
.col.align-center { text-align:center; }
.col.align-right { text-align:right; }


/* text editor */
.content-text-editor p:last-child { margin-bottom:0; }
.content-text-editor li { list-style-type:disc; }


/* main navigation && menus */
/* menus */

.menu-before { list-style-type:none; margin-bottom:15px; }
.menu-horizontal .nav li { display:inline-block; margin-right:20px; }
.menu-vertical .nav li { display:block; margin:0 0 15px; }


/* list items */
.zbp-list { list-style-type:none; padding-left:0; }
.zbp-list.bullets { list-style-type:disc; }
.zbp-list.bullets li { display:list-item; }
.zbp-list.horizontal li:first-child { margin-left:0; }
.zbp-list.horizontal li:last-child { margin-right:0; }
.zbp-list li { display:inline-block; margin:0px 5px 5px; }
.zbp-list i { margin-right:7px; font-size:115%; vertical-align:text-bottom; }

/* button classes */
.button-wrapper { overflow:hidden; text-align:center; margin:20px auto 5px; }
.button-wrapper .button { display:inline-block; margin:0px 10px 10px; }

.bw-left.button-wrapper { text-align:left; }
.bw-left.button-wrapper .button { margin-left:0px; margin-right:20px; }
.bw-center.button-wrapper { text-align:center; }
.bw-right.button-wrapper { text-align:right; }
.bw-right.button-wrapper .button { margin-left:20px; margin-right:0px; }

.button { border:0px solid black; overflow:hidden; transition:1s ease all; display:inline-block; position:relative; }
.button, .button a { }
.button a { line-height:0; display:block; padding:20px; }
.button a:hover { text-decoration:none; }
.button.no-link { line-height:0; padding:20px; cursor:pointer; }

.button.button-image { border:0px; background-color:transparent; }
.button.button-image a { padding:0; }
.button.button-image:hover { background-color:transparent; }

.button.rounded { border-radius:20px; }



/* image classes */
.image-wrapper { clear:both; overflow:hidden; position:relative; margin:0px auto; }
.image-wrapper img { width:100%; }
.image-wrapper .overlay { position:absolute; top:0; left:0; width:100%; height:100%; color:white; opacity:0; transition:.5s ease opacity; cursor:pointer; display:flex; justify-content:center; align-items:center; background:rgba(0,0,0,.5); font-size:20px; }
.image-wrapper:hover .overlay { opacity:1; }

.image-hover { position:relative; }
.image-hover:hover .hover { opacity:1; }
.image-hover img { position:relative; top:0; transition: opacity .5s ease-in-out; opacity:0; }
.image-hover .hover { position:absolute; opacity:0; left:50%; transform:translateX(-50%); }

.image-wrapper.img-align-left, .image-wrapper.img-align-right { margin:0; }

.img-align-left { float:left; }
.content-image { margin:0px auto; }
.img-align-right { float:right; }

.zoom-hover { overflow:hidden; }
.zoom-hover img { transform:scale(1.1); transition:.2s ease-in-out transform; }
.zoom-hover img:hover { transform:scale(1.0); }

/* image background */
.img-background { width:100%; height:100%; position:absolute; background-size:cover; background-position:center; top:0; left:0; }
.bg-repeat .img-background { background-size:auto; background-repeat:repeat; }

.background-overlay { position:absolute; top:0; left:0; width:100%; height:100%; }

.image-wrapper .caption { font-size:12px; text-align:left; margin-top:5px; }

/* video background */
.video-container { height:100%; width:100%; position:absolute; top:0; left:0; }
.video-container .tv { position:relative; background:transparent; display:none;/* Make video to at least 100% wide and tall */ min-width: 100%; min-height: 100%;/* Setting width & height to auto prevents the browser from stretching or squishing the video */ width: auto; height: auto;/* Center the video */ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.video-container .tv.wp-embed { display:block; }
.video-container .tv > video { width:100%; height:auto; }
.tv.loaded .img-background { display:none; }
.ytplayer-container { position:absolute; top:0; z-index:-1; background:$black; }


/* video popup */


.play-button .fa-stack { width:100%; }


.play-button { margin:10px 0; cursor:pointer; display:inline-block; position:absolute; margin-top:-35px; top:50%; z-index:1; width:100%; text-align:center; }


.play-button i { font-size:70px; height:70px; color:white; text-shadow:0px 0px 4px rgba(0,0,0,.5); text-align:center; transition:.5s ease all; }


.popup-video { background-color:black; display:none; }
.video-player { width:calc(100vw - 25px); height:calc(56.25vw - 45px); max-height:100vh; max-width:177.78vh; margin:auto; position:absolute; top:0; bottom:0; left:0; right:0; cursor:pointer; }
.video-player img { bottom:0; display:block; left:0; margin:auto; max-width:100%; width:100%; position:absolute; right:0; top:0; border:none; height:auto; }
.video-player iframe { width:100%; height:100%; position:relative; }
.video-player .fa-play-circle { color:#000; }
.video-player:hover .fa-play-circle { color:#fff; }
.video-player:hover .fa-circle { color:#000; }
.video-player:hover i.fa-play-circle { color:#fff; }



/* general youtube embeds, overwrite above */
.embed-youtube { position: relative; padding-bottom: 56.25%; /* 16:9 */ padding-top: 25px; height: 0; }
.embed-youtube iframe { position: absolute; top: 0;left: 0; width: 100%; height: 100%; }




/* map */
.content .zuko-map-wrapper p { line-height:22px; margin:20px 0; }


/* post loop */

.content-post-loop .load-more { text-align:center; display:none; }

.content-post-loop .load-more.running { display:block; }

.content-post-loop .load-more i { font-size:45px; color:#AAA; }




/* featherlight!! */

.featherlight { z-index:10000; }
.featherlight .featherlight-content { padding:0px; max-height:80%; overflow:hidden; border-bottom:0px; width:70%; }
.featherlight .featherlight-close-icon { background:transparent; font-size:35px; height:45px; width:50px; }
.featherlight.vid .featherlight-content { overflow:auto; width:auto; height:auto; position:static; }
.featherlight.vid .featherlight-close-icon { color:white; }
.featherlight.gal .featherlight-content { width:auto; }
.featherlight-next, .featherlight-previous { top:0px; }
.featherlight-next { right:0px; }
.featherlight-previous { left:0px; }


/* fuck bootstrap (but also i love it) */


/* large */
@media (min-width:1200px) {

    /*p { font-size:15px; line-height:24px; }*/

}

/* medium */
@media (max-width:991px) {
    .container { width:100%; }

}

/* small */
@media (max-width:767px) {


    .content-floated > .content { display:block; }
    .content-floated-mobile { overflow:hidden; }
    .content-floated-mobile  > .content { display:inline-block; }

    /* make all content stack if col-12 with margin */
    /* this might be bad design, but defaults should exist! */
    .col-12 { margin-bottom:10px; }
    .col-12:last-child { margin-bottom:0; }

    .zbp-list.vertical-mobile li { display:block; margin-left:0; margin-right:0; }


}

/* xs */
@media (max-width:575px) {

    #footer-wrapper .button-wrapper .button { margin-left:10px; margin-right:10px; }

}




/**
* Featherlight - ultra slim jQuery lightbox
* Version 1.6.1 - http://noelboss.github.io/featherlight/
*
* Copyright 2016, Noël Raoul Bossart (http://www.noelboss.com)
* MIT Licensed.
**/
@media all{.featherlight{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;text-align:center;white-space:nowrap;cursor:pointer;background:#333;background:rgba(0,0,0,0)}.featherlight:last-of-type{background:rgba(0,0,0,.8)}.featherlight:before{content:'';display:inline-block;height:100%;vertical-align:middle;margin-right:-.25em}.featherlight .featherlight-content{position:relative;text-align:left;vertical-align:middle;display:inline-block;overflow:auto;padding:25px 25px 0;border-bottom:25px solid transparent;margin-left:5%;margin-right:5%;max-height:95%;background:#fff;cursor:auto;white-space:normal}.featherlight .featherlight-inner{display:block}.featherlight .featherlight-close-icon{position:absolute;z-index:9999;top:0;right:0;line-height:25px;width:25px;cursor:pointer;text-align:center;font-family:Arial,sans-serif;background:#fff;background:rgba(255,255,255,.3);color:#000;border:0;padding:0}.featherlight .featherlight-close-icon::-moz-focus-inner{border:0;padding:0}.featherlight .featherlight-image{width:100%}.featherlight-iframe .featherlight-content{border-bottom:0;padding:0}.featherlight iframe{border:0}.featherlight *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}}@media only screen and (max-width:1024px){.featherlight .featherlight-content{margin-left:10px;margin-right:10px;max-height:98%;padding:10px 10px 0;border-bottom:10px solid transparent}}