/* ========= INFORMATION ============================

- document:  Slick Modals - HTML5 and CSS3 powered modal popups
- author:    Capelle @ Codecanyon
- profile:   http://codecanyon.net/user/Capelle
- version:   3.0

==================================================== */

/* ========================
   Reset and basics
   ======================== */

/* Main wrapper */

.slickModal * {
  outline: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.slickModal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
}

.isActive {
  visibility: visible;
  opacity: 1;
  z-index: 99999;
}

.slickModal.isActive,
.isActive .overlay {
  -webkit-transition-delay: 0s;
  -moz-transition-delay: 0s;
  -ms-transition-delay: 0s;
  transition-delay: 0s;
}

.slickModal,
.slickModal.isActive .window {
  -webkit-transition-delay: 0.2s;
  -moz-transition-delay: 0.2s;
  -ms-transition-delay: 0.2s;
  transition-delay: 0.2s;
}

.slickModal.isActive .window {
  -webkit-transform: rotate(0deg) scale(1);
  -moz-transform: rotate(0deg) scale(1);
  -ms-transform: rotate(0deg) scale(1);
  transform: rotate(0deg) scale(1);
}

.slickModal.isActive .overlay,
.slickModal.isActive .window {
  opacity: 1;
}

/* Overlay defaults */

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  display: block;
  opacity: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.8);
}

/* Window defaults */

.window {
  width: 500px;
  height: fit-content;
  padding: 40px;
  position: absolute;
  margin: auto;
  background: #fff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 2;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  opacity: 0;
  display: table;
  -webkit-transition-property: rotate, transform, opacity, scale, perspective;
  -moz-transition-property: rotate, transform, opacity, scale, perspective;
  -ms-transition-property: rotate, transform, opacity, scale, perspective;
  transition-property: rotate, transform, opacity, scale, perspective;
}

/* ========================
   Background defaults
   ======================== */

/* Blur */

.blurred {
  -webkit-filter: blur(2px);
  -moz-filter: blur(2px);
  -ms-filter: blur(2px);
  filter: blur(2px);
}

/* Scale */

.scaled {
  -webkit-transform: scale(0.9);
  -moz-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
}

/* ========================
   Modal window positions
   ======================== */

/* Center */

.window.center {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

/* Top */

.window.topLeft {
  top: 0;
  left: 0;
}

.window.topCenter {
  top: 0;
  left: 0;
  right: 0;
}

.window.topRight {
  top: 0;
  right: 0;
}

/* Bottom */

.window.bottomLeft {
  bottom: 0;
  left: 0;
}

.window.bottomCenter {
  bottom: 0;
  left: 0;
  right: 0;
}

.window.bottomRight {
  bottom: 0;
  right: 0;
}

/* On side */

.window.right {
  top: 0;
  right: 0;
  bottom: 0;
}

.window.left {
  top: 0;
  left: 0;
  bottom: 0;
}

/* ========================
   Modal window transitions
   ======================== */

/* Fade */

.window.fade {
  opacity: 0;
}

/* Zoom */

.window.zoomIn {
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}

.window.zoomOut {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
}

/* Slide */

.window.slideTop {
  -webkit-transform: translateY(-25%);
  -moz-transform: translateY(-25%);
  -ms-transform: translateY(-25%);
  transform: translateY(-25%);
}

.window.slideBottom {
  -webkit-transform: translateY(25%);
  -moz-transform: translateY(25%);
  -ms-transform: translateY(25%);
  transform: translateY(25%);
}

.window.slideLeft {
  -webkit-transform: translateX(-25%);
  -moz-transform: translateX(-25%);
  -ms-transform: translateX(-25%);
  transform: translateX(-25%);
}

.window.slideRight {
  -webkit-transform: translateX(25%);
  -moz-transform: translateX(25%);
  -ms-transform: translateX(25%);
  transform: translateX(25%);
}

/* Rotate */

.window.rotateIn {
  -webkit-transform: rotate(720deg) scale(0);
  -moz-transform: rotate(720deg) scale(0);
  -ms-transform: rotate(720deg) scale(0);
  transform: rotate(720deg) scale(0);
}

.window.rotateOut {
  -webkit-transform: rotate(720deg) scale(1.5);
  -moz-transform: rotate(720deg) scale(1.5);
  -ms-transform: rotate(720deg) scale(1.5);
  transform: rotate(720deg) scale(1.5);
}

/* Flip */

.window.flipHorizontal {
  -webkit-transform: rotateY(-90deg);
  -moz-transform: rotateY(-90deg);
  -ms-transform: rotateY(-90deg);
  transform: rotateY(-90deg);
}

.window.flipVertical {
  -webkit-transform: rotateX(-90deg);
  -moz-transform: rotateX(-90deg);
  -ms-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
}

/* Perpective */

.window.perspectiveTop {
  -webkit-transform: perspective(300px) rotateX(-90deg);
  -moz-transform: perspective(300px) rotateX(-90deg);
  -ms-transform: perspective(300px) rotateX(-90deg);
  transform: perspective(300px) rotateX(-90deg);
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
}

.window.perspectiveBottom {
  -webkit-transform: perspective(300px) rotateX(90deg);
  -moz-transform: perspective(300px) rotateX(90deg);
  -ms-transform: perspective(300px) rotateX(90deg);
  transform: perspective(300px) rotateX(90deg);
  -webkit-transform-origin: bottom center;
  -moz-transform-origin: bottom center;
  -ms-transform-origin: bottom center;
  transform-origin: bottom center;
}

.window.perspectiveLeft {
  -webkit-transform: perspective(200px) rotateY(90deg);
  -moz-transform: perspective(200px) rotateY(90deg);
  -ms-transform: perspective(200px) rotateY(90deg);
  transform: perspective(200px) rotateY(90deg);
  -webkit-transform-origin: center left;
  -moz-transform-origin: center left;
  -ms-transform-origin: center left;
  transform-origin: center left;
}

.window.perspectiveRight {
  -webkit-transform: perspective(200px) rotateY(-90deg);
  -moz-transform: perspective(200px) rotateY(-90deg);
  -ms-transform: perspective(200px) rotateY(-90deg);
  transform: perspective(200px) rotateY(-90deg);
  -webkit-transform-origin: center right;
  -moz-transform-origin: center right;
  -ms-transform-origin: center right;
  transform-origin: center right;
}

/* ========================
   Transition timing defaults
   ======================== */

.slickModal .linear {
  -webkit-transition-timing-function: linear;
  -moz-transition-timing-function: linear;
  -ms-transition-timing-function: linear;
  transition-timing-function: linear;
}

.slickModal .ease {
  -webkit-transition-timing-function: ease;
  -moz-transition-timing-function: ease;
  -ms-transition-timing-function: ease;
  transition-timing-function: ease;
}

.slickModal .ease-in {
  -webkit-transition-timing-function: ease-in;
  -moz-transition-timing-function: ease-in;
  -ms-transition-timing-function: ease-in;
  transition-timing-function: ease-in;
}

.slickModal .ease-out {
  -webkit-transition-timing-function: ease-out;
  -moz-transition-timing-function: ease-out;
  -ms-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.slickModal .ease-in-out {
  -webkit-transition-timing-function: ease-in-out;
  -moz-transition-timing-function: ease-in-out;
  -ms-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}

/* ========================
   Close buttons
   ======================== */

/* Basics */

.closeModal,
.openModal {
  cursor: pointer;
}

.slickModal .close {
  position: absolute;
  top: -20px;
  right: 0;
  z-index: 10;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-weight: 700;
  transition: all 0.1s ease;
}

.slickModal .close:before {
  white-space: nowrap;
  display: block;
  position: relative;
  transition: all 0.1s ease;
}

/* Labeled button */

.slickModal .close.labeled:before {
  color: #fff;
  content: "close";
  font-size: 8px;
  text-transform: uppercase;
  background: linear-gradient(to right, #fff 50%, #000 50%);
  background-size: 200% 100%;
  background-position: right bottom;
  padding: 6px 12px;
  margin-top: -10px;
}

.slickModal .close.labeled:hover:before {
  background-position: left bottom;
  color: #000;
}

/* Text button */

.slickModal .close.text:before {
  color: #fff;
  content: "Close";
  font-size: 9px;
  text-transform: uppercase;
}

/* Tag button */

.slickModal .close.tag:before {
  color: #fff;
  content: "\00d7";
  background: #000;
  text-align: center;
  font-size: 15px;
  width: 24px;
  height: 24px;
  line-height: 24px;
  margin-top: 20px;
  opacity: 0.2;
}

.slickModal .close.tag:hover:before {
  opacity: 1;
}

/* Icon button */

.slickModal .close.icon {
  display: inline-block;
  width: 22px;
  height: 22px;
  overflow: hidden;
  margin: 34px 12px 0 0;
  opacity: 0.7;
}

.slickModal .close.icon:hover:before {
  color: #000;
}

.slickModal .close.icon:before,
.slickModal .close.icon:after {
  content: "";
  position: absolute;
  height: 1px;
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: -1px;
  background: #fff;
}

.slickModal .close.icon:before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.slickModal .close.icon:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.slickModal .close.icon:hover {
  opacity: 1;
}
.window .icon-sent svg {
  margin-bottom: 25px;
  width: 60px;
  height: 60px;
}

.window .primary-button {
  margin-top: 14px;
  background-color: #3b6978;
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 14px;
  color: #fff;
}

.window .secondary-button {
  margin-top: 10px;
  padding: 8px 12px;
  color: #000 !important;
  background-color: transparent !important;
}

.window .send-form {
  width: 100%;
  display: flex;
  justify-content: center;
}

.window .title {
  text-transform: uppercase;
  font-size: 24px;
  margin-bottom: 12px;
}

/* .window .title::after {
    content: "";
    width: 30px;
    margin: 30px auto;
    height: 2px;
    background-color: #fff;
    display: block;
    text-align: center;
} */

.window form input.send:hover {
  background: #fff;
  color: #222;
}

.window .bottomClose {
  font-weight: 700;
  color: #fff;
  font-size: 12px;
}

textarea.field {
  resize: none;
}

/* ========================
   Responsive queries
   ======================== */

/* 
   Note: Media queries use breakpoints upon which the target elements change their settings/values. Below is an example which sets the modal window to 96% of screen width and the inner title font size at 24px when screen viewport is at 480px width or below (mobiles, low-res tablets etc). You can target specific viewport width, height, their min/max breakpoints, media types and other settings. Within those rules you can then adjust every element and it's css attributes.

   Check out more at:
   http://www.w3schools.com/cssref/css3_pr_mediaquery.asp
*/

@media screen and (max-width: 480px) {
  /* Create responsive modal window */
  .slickModal .window {
    width: 96% !important;
    /* Side note: To override the jQuery plugin settings you need to use !important attribute at the end of every value which is initialized with the plugin */
  }
  /* Reduce the size of the main title */
  .slickModal .window .title {
    font-size: 24px;
  }
  /* Let's center the close icon */
  .slickModal .close.icon {
    right: 0;
    left: 0;
    margin: 0 auto;
  }
}

@media screen and (max-height: 480px) {
  /* Show the scrollbars so the user can scroll down the modal's content */
  .slickModal {
    overflow: scroll;
  }
  /* Stick the overlay so it covers whole screen */
  .slickModal .overlay {
    position: fixed;
  }
}
