/* -----------------------
   ----------------------- Normalize ----------------------- */
html { width: 100%; height: 100%; }
body { width: 100%; height: 100%; margin: 0; box-sizing: border-box; }


/* -----------------------
   ----------------------- Transitions ----------------------- */
.b-leaflet_box,
.b-leaflet_perspective { -webkit-transition: -webkit-transform 400ms, opacity 400ms, visibility 400ms; -moz-transition: -moz-transform 400ms, opacity 400ms, visibility 400ms; -o-transition: -o-transform 400ms, opacity 400ms, visibility 400ms; transition: transform 400ms, opacity 400ms, visibility 400ms; }

.b-leaflet_overlay,
.b-leaflet_box_content { -webkit-transition: opacity 400ms, visibility 400ms; -moz-transition: opacity 400ms, visibility 400ms; -o-transition: opacity 400ms, visibility 400ms; transition: opacity 400ms, visibility 400ms; }


/* -----------------------
   ----------------------- Add to composite layers ----------------------- */
.b-leaflet_box,
.b-leaflet_overlay { -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; backface-visibility: hidden; }


/* -----------------------
   ----------------------- 3D transforms ----------------------- */
.b-leaflet_perspective { position: relative; z-index: 25000; margin-left: auto; margin-right: auto; text-align: left; -webkit-perspective: 1500px; -moz-perspective: 1500px; perspective: 1500px; -webkit-transform-style: preserve-3d; -moz-transform-style: preserve-3d; transform-style: preserve-3d; }

@media (min-width: 640px) {

    .m-leaflet-type-image .b-leaflet_perspective { display: inline-block; }

}


/* -----------------------
   ----------------------- Layout ----------------------- */
.b-leaflet { position: fixed; z-index: 999999; left: 0; top: 0; right: 0; bottom: -100px; padding-bottom: 100px; width: 100%; /*height: 100%; */overflow-x: hidden; overflow-y: hidden; /*-webkit-overflow-scrolling: touch; */}
@media not all and (min-resolution:.001dpcm) { @supports (-webkit-appearance:none) { .b-leaflet { -webkit-overflow-scrolling: touch; } }} /* Safari iOS 10.1+ */

.b-leaflet_capsule { display: table; width: 100%; height: 100%; overflow: hidden; border-collapse: separate; border-spacing: 0; table-layout: fixed; }
.b-leaflet_capsule_inner { display: table-cell; vertical-align: middle; text-align: center; }

/* * * Layout :: offsets * * */
@media (max-width: 639px) {

    .b-leaflet_capsule_inner { padding: 24px 10px !important; }
    .m-leaflet-type-image .b-leaflet_capsule_inner { padding: 24px 32px !important; }

}

/* * * Layout :: sources container * * */
.b-leaflet_inner_sources { position: absolute; left: -10000px; top: -10000px; height: 0; width: 0; overflow: hidden; visibility: hidden; }


/* ----------------------- Scroll lock ----------------------- */
.m-leaflet-outer-mode body { overflow-y: scroll; }

.m-leaflet-outer-mode .b-leaflet { /*position: relative; */position: fixed; overflow-x: hidden; overflow-y: scroll; }
.m-leaflet-outer-mode .b-leaflet_locker { position: fixed; overflow: hidden; left: 0; top: 0; right: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }


/* ----------------------- Scroll unlock ----------------------- */
.m-leaflet-inner-mode .b-leaflet_box_content { max-height: inherit; /*overflow-y: scroll; overflow-x: visible;*/ }


/* -----------------------
   ----------------------- Overlay ----------------------- */
.b-leaflet_overlay { display: none; position: fixed; z-index: 0; left: 0; top: 0; right: 0; bottom: 0; pointer-events: auto; visibility: hidden; opacity: 0; background-color: #fff; }
.b-leaflet_overlay_loader { display: none; }

.m-leaflet-overlay .b-leaflet_overlay { display: block; }
.m-leaflet-loading .b-leaflet_overlay { background: #fff url('../img/icons/loading.gif') center center no-repeat; }

/* * * Webkit bug fix * * */
.b-leaflet_overlay { -webkit-transform: translateZ(-1000px); transform: translateZ(-1000px); }


/* ----------------------- Control buttons ----------------------- */
/* * * Control buttons :: close in box * * */
.b-leaflet_box .b-leaflet_close { position: absolute; z-index: 25; top: 0; right: 0; padding: 20px; width: 54px; height: 54px; line-height: 14px; text-align: center; text-decoration: none; color: #000; background: transparent; border: none; cursor: pointer; pointer-events: auto; box-sizing: border-box; }
.b-leaflet_box .b-leaflet_close:before { display: block; width: 14px; height: 14px; font-size: 14px; line-height: 14px; background-size: auto; transition: opacity 250ms; }

.b-leaflet_box .b-leaflet_close:hover { color: #FB6A95; }
.b-leaflet_box .b-leaflet_close:hover [fill] { fill: #FB6A95; }

/* * * Control buttons :: close on overlay * * */
.b-leaflet_overlay ~ .b-leaflet_close { position: fixed; z-index: 25; top: 0; right: 0; width: 32px; height: 32px; font-size: 16px; line-height: 32px; text-align: center; text-decoration: none; color: #fff; cursor: pointer; pointer-events: auto; }
.b-leaflet_overlay ~ .b-leaflet_close:before { display: block; width: inherit; height: inherit; line-height: inherit; }

.b-leaflet_overlay ~ .b-leaflet_close:hover { color: #FB6A95; background: rgba(0, 0, 0, .25); }

@media (min-width: 600px) {

    .b-leaflet_overlay ~ .b-leaflet_close { width: 64px; height: 64px; font-size: 24px; line-height: 64px; }

}

/* * * Control buttons :: nav * * */
.b-leaflet_box .b-leaflet_nav .b-leaflet_direction { position: fixed; z-index: 5; top: 50%; margin-top: -9px; width: 18px; height: 18px; text-align: center; cursor: pointer; pointer-events: auto; }
.b-leaflet_box .b-leaflet_nav .b-leaflet_direction:before { display: block; font-weight: normal; font-size: 18px; line-height: 18px; text-align: center; }

.b-leaflet_box .b-leaflet_nav .b-leaflet_direction:hover { color: #fff; }

.b-leaflet_box .b-leaflet_nav .b-leaflet_prev { left: 0; }
.b-leaflet_box .b-leaflet_nav .b-leaflet_next { right: 0; }




.b-leaflet_perspective ~ .b-leaflet_nav .b-leaflet_direction { position: fixed; z-index: 5; top: 0; bottom: 0; width: 32px; text-align: center; color: #fff; cursor: pointer; pointer-events: auto; }
.b-leaflet_perspective ~ .b-leaflet_nav .b-leaflet_direction:before { position: absolute; left: 50%; top: 50%; margin: -16px 0 0 -16px; width: inherit !important; height: 32px; font-weight: normal; font-size: 24px; line-height: 32px; text-align: center; }

.b-leaflet_perspective ~ .b-leaflet_nav .b-leaflet_direction:hover { color: #FB6A95; background: rgba(0, 0, 0, .25); }

.b-leaflet_perspective ~ .b-leaflet_nav .b-leaflet_prev { left: 0; }
.b-leaflet_perspective ~ .b-leaflet_nav .b-leaflet_next { right: 0; }

@media (min-width: 600px) {

    .b-leaflet_perspective ~ .b-leaflet_nav .b-leaflet_direction { width: 64px; }
    .b-leaflet_perspective ~ .b-leaflet_nav .b-leaflet_direction:before { margin: -32px 0 0 -32px; height: 64px; font-size: 42px; line-height: 64px; }

}

.b-leaflet_close,
.b-leaflet_direction { -webkit-transition: all 400ms; -moz-transition: all 400ms; -o-transition: all 400ms; transition: all 400ms; }


/* -----------------------
   ----------------------- Box ----------------------- */
.b-leaflet_box { position: relative; z-index: 25; margin-left: auto; margin-right: auto; visibility: hidden; opacity: 0; -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; }


/* -----------------------
   ----------------------- Box title ----------------------- */
.b-leaflet_box_title { position: absolute; left: 0; top: 100%; right: 0; margin-top: 10px; padding: 10px; font: 400 18px/1.2 'Open Sans', sans-serif; text-align: center; color: #fff; background: rgba(0, 0, 0, .4); border-radius: 5px; }


/* ----------------------- Content types ----------------------- */
/* * * Content popup * * */
.b-leaflet_box { padding: 26px 30px 30px; font: 400 14px 'Open Sans', sans-serif; color: #000; background: #fff; border-radius: 4px; box-shadow: 0 16px 32px rgba(0, 0, 0, .3); }

@media (max-width: 767px) {

    .b-leaflet_box { padding: 48px 10px 40px 10px; }

}

.b-leaflet_heading { position: relative; margin-bottom: 30px; color: #8591A2; }
.b-leaflet_heading_title { font: 700 24px 'Open Sans', sans-serif; color: #000; }

.b-leaflet_wrap { position: relative; }

/* * * Image popup * * */
.m-leaflet-type-image .b-leaflet_box { padding: 0; background: none; }

.m-leaflet-type-image .b-leaflet_box_content { padding: 0; color: #585858; background: none; overflow: hidden; }
.m-leaflet-type-image .b-leaflet_box_content img { display: block; max-width: 100%; max-height: calc(100vh - 100px); margin: 0 auto; transform: translateZ(0); backface-visibility: hidden; }

/* * * IFrame popup * * */
.m-leaflet-type-iframe .b-leaflet_box { padding: 0; background: none; border: none; border-radius: 0; }
.m-leaflet-type-iframe .b-leaflet_box_content { padding: 0; color: #585858; background: none; }

.m-leaflet-type-iframe .b-leaflet_box_iframe { position: relative; height: 0; padding-bottom: 56.470588235294%; overflow: hidden; }
.m-leaflet-type-iframe .b-leaflet_box_iframe iframe { position: absolute; left: 0; top: 0; right: 0; bottom: 0; width: 100%; height: 100%; max-width: none; max-height: none; -webkit-backface-visibility: visible; -moz-backface-visibility: visible; backface-visibility: visible; -webkit-transform: translateZ(0); -moz-transform: translateZ(0); transform: translateZ(0); }


/* ----------------------- Box show methods ----------------------- */
.b-leaflet_box,

.b-leaflet_content,
.b-leaflet_content * { -webkit-transform: translateZ(0); -moz-transform: translateZ(0); transform: translateZ(0); }

/* * * Scale * * */
.m-leaflet-scale-transition .b-leaflet_box { -webkit-transform: scale(.6, .6); -moz-transform: scale(.6, .6); -ms-transform: scale(.6, .6); transform: scale(.6, .6); }

/* * * Super scale * * */
.m-leaflet-superScale-transition .b-leaflet_box { -webkit-transform: scale(1.4, 1.4); -moz-transform: scale(1.4, 1.4); -ms-transform: scale(1.4, 1.4); transform: scale(1.4, 1.4); }

/* * * Drop * * */
.m-leaflet-drop-transition .b-leaflet_box { -webkit-transform: translate(0, -150%); -moz-transform: translate(0, -150%); -ms-transform: translate(0, -150%); transform: translate(0, -150%); }

/* * * Newspaper * * */
.m-leaflet-newspaper-transition .b-leaflet_box { -webkit-transform: scale(.2, .2) rotate(720deg); -moz-transform: scale(.2, .2) rotate(720deg); -ms-transform: scale(.2, .2) rotate(720deg); transform: scale(.2, .2) rotate(720deg); }


/* * * Drop 3d * * */
.m-leaflet-drop3d-transition .b-leaflet_box { -webkit-transform-origin: top; -moz-transform-origin: top; -ms-transform-origin: top; transform-origin: top; -webkit-transform: translate3d(0, -100px, 0) rotateX(-90deg); -moz-transform: translate3d(0, -100px, 0) rotateX(-90deg); -ms-transform: translate3d(0, -100px, 0) rotateX(-90deg); transform: translate3d(0, -100px, 0) rotateX(-90deg); }

/* * * Flip 3d * * */
.m-leaflet-flip3d-transition .b-leaflet_box { -webkit-transform-origin: center top; -moz-transform-origin: center top; -ms-transform-origin: center top; transform-origin: center top; -webkit-transform: rotateY(-70deg); -moz-transform: rotateY(-70deg); -ms-transform: rotateY(-70deg); transform: rotateY(-70deg); }

/* * * Flip 3d Vertical * * */
.m-leaflet-flip3dVertical-transition .b-leaflet_box { -webkit-transform-origin: 0 50%; -moz-transform-origin: 0 50%; -ms-transform-origin: 0 50%; transform-origin: 0 50%; -webkit-transform: rotateX(-70deg); -moz-transform: rotateX(-70deg); -ms-transform: rotateX(-70deg); transform: rotateX(-70deg); }

/* * * Side fall * * */
.m-leaflet-sideFall-transition .b-leaflet_box { -webkit-transform-origin: 50%; -moz-transform-origin: 50%; -ms-transform-origin: 50%; transform-origin: 50%; -webkit-transform: translate(30%) translateZ(600px) rotate(10deg); -moz-transform: translate(30%) translateZ(600px) rotate(10deg); -ms-transform: translate(30%) translateZ(600px) rotate(10deg); transform: translate(30%) translateZ(600px) rotate(10deg); }


.b-leaflet_direction.b-leaflet_prev:before{
    content: '';
    display: block;
    width: 20px!important;
    height: 20px!important;
    position: absolute;
    top: 0!important;
    bottom: 0!important;
    right:auto!important;
    left: 0px!important;
    border: 20px solid transparent;
    border-right: 20px solid #fb6a95;
    box-sizing: border-box;
    margin: auto!important;
}

.b-leaflet_direction.b-leaflet_next:before{
    content: '';
    display: block;
    width: 20px!important;
    height: 20px!important;
    position: absolute;
    top: 0!important;
    bottom: 0!important;
    left:auto!important;
    right: 0px!important;
    border: 20px solid transparent;
    border-left: 20px solid #fb6a95;
    box-sizing: border-box;
    margin: auto!important;
}
