/*===================== TABLE OF CONTENT =======================

1. Reset
2. Body Style
3. Placeholders & Highlights
4. Container & Grid
5. Headings
6. Buttons
7. Form
8. Paddings & Margins
9. Main Content

=============================================================*/
/* ================================================================================== 
1. Reset
===================================================================================== */
*, *::after, *::before { margin: 0; padding: 0; -webkit-box-sizing: inherit; box-sizing: inherit; } article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary { display: block; } audio, canvas, progress, video { display: inline-block; vertical-align: baseline; } audio:not([controls]) { display: none; height: 0; } [hidden], template { display: none; } a, a:active, a:hover, a:focus { outline: none; } abbr[title] { border-bottom: 1px dotted; } dfn { font-style: italic; } small { font-size: 80%; } sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sup { top: -0.5em; } sub { bottom: -0.25em; } img { border: 0; max-width: 100%; } svg:not(:root) { overflow: hidden; } hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; margin-top: 30px; margin-bottom: 35px; border-width: 0; border-top: 1px solid #e1e1e1; } pre { overflow: auto; } code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; } button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; } button { overflow: visible; } button, select { text-transform: none; } button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; } input:focus, select:focus, textarea:focus, button:focus { outline: none; } button[disabled], html input[disabled] { cursor: default; } button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } input { line-height: normal; } input[type="checkbox"], input[type="radio"] { -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; } input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; } input[type="search"] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; box-sizing: content-box; } input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } legend { border: 0; padding: 0; } textarea { overflow: auto; } optgroup { font-weight: bold; } table { border-collapse: collapse; border-spacing: 0; } td, th { padding: 0; } input, textarea, button, select, a { -webkit-tap-highlight-color: transparent; } a { color: inherit; text-decoration: none; -webkit-transition: all 1.8s ease; -o-transition: all 1.8s ease; transition: all 1.8s ease; } strong { font-weight: 700; }
.fancybox__button--zoo, .fancybox__button--slideshow, .fancybox__button--fullscreen, .fancybox__button--thumbs, .fancybox__button--zoom{
  display: none;
}
.none{
  display: none;
}
ul, ol { padding-left: 4rem; }
section, footer, header{
  position: relative;
  z-index: 1;
  background-color: #fff;
}
.text-center{
  max-width: 90rem;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
/* ================================================================================== 
2. Body Style
===================================================================================== */
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-size: 37%;
  word-wrap: break-word;
}
@media only screen and (min-width: 30.0625em) {
  /*481px*/
  html {
  font-size: 40%;
  }
}
@media only screen and (min-width: 48.0625em) {
  /*769px*/
    html {
        font-size: 50%;
    }
  }
@media only screen and (min-width: 64.0625em) {
    /*1025px*/
    html {
        font-size: 56.25%;
    }
}
@media only screen and (min-width: 80.0625em) {
  /*1281px*/
  html {
    font-size: 62.5%;
  }
}
body {
  font-family: 'Noto Serif', serif;
	font-weight: 500;
	line-height: 1.3;
	color: #fff;
	font-size: 2.7rem;
  overflow-x: hidden;
}
main{
  position: relative;
}
@media only screen and (min-width: 56.3125em) {
    /*901px*/
    body {
        font-size: 2.8rem;
    }
}
/* ================================================================================== 
3. Placeholders & Highlights
===================================================================================== */
::-webkit-input-placeholder { color: inherit; opacity: 1 !important; }
:-moz-placeholder { color: inherit; opacity: 1; }
::-moz-placeholder { color: inherit; opacity: 1; }
:-ms-input-placeholder { color: inherit; }
::-moz-selection { background-color: #3d3b3a;  color: #fff; }  
::selection { background-color: #3d3b3a; color: #fff }
/* ================================================================================== 
4. Container & Grid
===================================================================================== */
.container {
  position: relative;
  width: 100%;
  max-width: 1920rem;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;


}
/* ================================================================================== 
5. Headings
===================================================================================== */

h1, h2, h3, h4, h5, h6 { margin-bottom: 2rem; font-weight: 300;line-height:1.4; font-family: 'Noto Serif', serif; text-transform: none;letter-spacing: 0;}
.primary-title h1, .primary-title h2{
    color: #fff;
    font-size: 13rem;
}
.title-center{
    text-align: center;
}
.primary-title{
    margin-bottom: 5rem;
}
.secondary-title{
    margin-bottom: 5rem;
}
.secondary-title h2{
    font-size: 4rem;
}
.primary-title span{
  animation-delay: 1s !important;
}
.primary-title span:last-child{
  animation-delay: 1.8s !important;
}

@media only screen and (min-width: 56.3125em) {
    /*901px*/
  .primary-title h1{
    font-size: 21rem;
    }
    .secondary-title h2{
        font-size: 5rem;
    }

}
@media only screen and (min-width: 64.0625em) {
    /*1025px*/

        .secondary-title h2{
            font-size: 6rem;
        }
  }

/* ================================================================================== 
6. Buttons
===================================================================================== */
.btn {
	display: inline-block;
	padding: 0.6rem 3rem;
	border: 2px solid #ffff;
	margin-top: 3rem;
  font-weight: 300;
}
.btn:hover{
    background-color: transparent;
    color: #fff;
}
.btn-send input{
    padding: 0.6rem 4rem;
    width: auto;
    transition: all .4s ease-in-out;
    margin: 0 auto;
    text-transform: uppercase;
    line-height: 1.7;
    letter-spacing: 2.3px;
    border: 2px solid #ffff;
}
.btn-send {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 3rem;
}
@media only screen and (min-width: 56.3125em) {
  /*901px*/
    .btn-send input{
        letter-spacing: 3.5px;
    }
    .btn {
        padding: 0.6rem 4rem;
    }
}
/* ================================================================================== 
7. Form
===================================================================================== */
input, textarea, select {
	display: block;
	width: 100%;
    border: 0;
	border-bottom: 2px solid #fff;
	padding: 1.6rem 2rem;
	outline: none;
	background-color: transparent;
}
textarea{
  resize: vertical;
  height: 19rem;
}
input:focus,
textarea:focus, select:focus {
  border-color: #a4a4a4;

}
label {
	display: block;
	margin-bottom: 0.5rem;
	font-weight: 300;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 2px;
}
button {
  transition: all 1.8s ease-in-out;
  border:0;
}
fieldset{
  border: 0;
  margin-bottom: 2rem;
}
label.check-wrapper {
  position: relative;
  padding-left: 3rem;
  margin-bottom: 1rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-transform: none;
}
.check-wrapper input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.checkmark {
  position: absolute;
  top: 3px;
  left: 0;
  height: 1.5rem;
  width: 1.5rem;
  border: 1px solid #43515a;
  -webkit-transition: all 1.8s ease-in-out;
  -o-transition: all 1.8s ease-in-out;
  transition: all 1.8s ease-in-out;
}

.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}
.check-wrapper input:checked ~ .checkmark:after {
  display: block;
}
.check-wrapper .checkmark::after {
  left: 0.4rem;
  top: 0.2rem;
  width: 0.5rem;
  height: 1rem;
  border: solid #43515a;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 1.8s ease-in-out;
  -o-transition: all 1.8s ease-in-out;
  transition: all 1.8s ease-in-out;
}

/* ================================================================================== 
8. Paddings & Margins
===================================================================================== */
.space {
  padding: 5rem 0;
}
.mt-5{
  margin-top: 5rem;
}
.no-pt{
  padding-top: 0 !important;
}
.no-pb{
  padding-bottom: 0 !important;
}
@media only screen and (min-width: 64.0625em) {
  /*1025px*/
  .space {
    padding: 10rem 0;
  }
}
/* ================================================================================== 
9. Main Content
===================================================================================== */
.main-content {
	padding: 0 5rem;
  background-color: #7f8072;
	padding-top: 50%;
  padding-left: 10rem;
}
@media only screen and (min-width: 64.0625em) {
  /*1025px*/
  .main-content{
    background-attachment: fixed;
  }
}
.main-image{
    position: relative;
    overflow: hidden;
    -webkit-mask-image: url(images/design/mask.png);
    mask-image: url(images/design/mask.png);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    mask-size: 100%;
    inset: 0 0 0 0;
    mask-position: center bottom;
}
/* .main-image::before{
  content: '';
  width: 100%;
  height: 20rem;
  background-image: url(images/design/bg-foto.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
} */
.main-image img {
	display: block;
	width: 100%;
	height: auto;
	position: relative;

}

.wrapper{
    display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 3%;
	margin: 0 auto 5rem auto;
	max-width: 80rem;
	width: 100%;
}
.box{
    width: 48.5%;
    text-align: center;
}
form p{
    margin: 0;
}
form br{
    display: none;
}
.form {
  margin-top: 7rem;
	max-width: 70rem;
	width: 100%;
  margin-left: auto;
}
.main-content {
	padding-bottom: 8rem;
  text-align: right;
}
.content-right{
  max-width: 95%;
  width: 100%;
  margin-left: auto;
  position: relative;
  z-index: 1;
}
.cta-bottom{
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  color: #000;
  background-color: #eef2ee;
  z-index: 10;
  padding: 2rem 0;
  font-size: 2rem;
  opacity: 0; 
  transform: translateY(100%); 
  transition: opacity 0.5s ease, transform 0.5s ease; 
  box-sizing: border-box;
}
.cta-bottom.show{
  opacity: 1; 
  transform: translateY(0); 
}
.cta-container{
  max-width: 70rem;
  width: 100%;
  margin: 0 auto;
  padding: 0 2rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;

}
.cta-bottom h3{
  margin-bottom: 0;
}
.cta-bottom a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 400;
	border-radius: 10rem;
	position: relative;
	overflow: hidden;
	max-width: 24rem;
	width: 100%;
	height: 5rem;
	line-height: 1;
	text-transform: uppercase;
	text-align: center;
}
.cta-bottom a span{
  position: relative;
  z-index: 1;
}
.cta-bottom a {
  background-color: #89a088;
  color: #fff;
}
.cta-bottom a:before, .cta-bottom a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-bottom: 80px solid #728c71;
  transition: all .4s ease-in-out;
}
.cta-bottom a:before {
  right: -50px;
  border-right: 50px solid transparent;
  transform: translateX(-100%);
}
.cta-bottom a:after {
  left: -50px;
  border-left: 50px solid transparent;
  transform: translateX(100%);
}
.cta-bottom a:hover:before {
  transform: translateX(-40%);
}
.cta-bottom a:hover:after {
  transform: translateX(40%);
}
.text, .bottom-text{
  font-family: 'La Luxes Script', serif;
  font-size: 7rem;
  line-height: 0.8;
  margin-bottom: 10rem;

}

.bottom-text{
  margin-top: 10rem;
}
.date{
  margin-bottom: 8rem;
 text-transform: uppercase;
 font-size: 4rem;
 position: relative;
 color: #f3e5cd;
 z-index: 5;
}
.date p{
  position: relative;
  display: inline-block;
}
.add-to-calendar img{
  display: block;
  width: 3rem;
  height: auto;
}
.add-to-calendar {
	display: block;
	position: absolute;
	right: 0;
	bottom: -3rem;
  display: flex;
  align-items: center;
  gap:1rem
}
.date .add-to-calendar span{
  font-size: 1.4rem;
}
.date-wrap {
	font-size: 1.7rem;
	text-transform: none;
	letter-spacing: 0;
	position: relative;
	width: auto;
	position: absolute;
	right: 0;
	bottom: -4rem;
	text-align: left;
	z-index: 20;
}

.date-content {
	position: absolute;
	right: 0;
	top: 4rem;
	background-color: #fff;
	padding: 3rem;
  color: #43515a;
	width: 40rem;
	font-weight: 400;
	display: flex;
	flex-direction: column;
	box-shadow: 0 0 32px 4px rgba(0,0,0,.05);
  transition: all  .4s ease-in-out;
  opacity: 0;
  visibility: hidden;
  z-index: 10;
}
@media only screen and (min-width: 64.0625em) {
  /*1025px*/
  .date-wrap {
    font-size: 1.3rem;
  }
  .date-content {
    width: 30rem;
  }
}
.date-content.open{
  opacity: 1;
  visibility: visible;
}
.date-content a{
  display: block;
  padding: 3px 0;
}
.date-toggle img{
  display: block;
  width: 3rem;
  height: auto;
  margin-right: 1rem;
}
.date-toggle {
	display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .4s ease-in-out;
}
.date-toggle:hover{
  opacity: 0.6;

}
.date-wrap h4{
  text-transform: uppercase;
  font-weight: 500;
}
.names{
  margin-bottom: 7rem;
  font-size: 6rem;

}
.names span{
  font-family: 'La Luxes Script', serif;
  font-size: 8rem;
  line-height: 0.8;
  display: block;
}
.okupljanje a, .vjencanje a, .vecera a {
	background-image: url(images/green-love-language/pin-white.svg);
	background-repeat: no-repeat;
	background-position: top 1rem left;
	background-size: 1.6rem;
	display: inline-block;
	padding-left: 3rem;
}
.okupljanje,.vjencanje, .vecera {
  margin-bottom: 7rem;
  font-size: 3rem;
}
.okupljanje p,.vjencanje p, .vecera p{
  text-transform: none;
  letter-spacing: 6px;
  font-style: italic;
  font-weight: 400;
  margin-bottom: 3rem;
}
.potvrda-title h2{
  font-family: 'La Luxes Script', serif;
  font-size: 7rem;
  margin-bottom: 0;
}
.potvrda-text a {
	display: inline-block;
	padding-left: 5rem;
	background-image: url(images/green-love-language/whatsapp2-white.svg);
	background-repeat: no-repeat;
	background-position: top 1.9rem left 1rem;
	background-size: 2.7rem;
}
.potvrda-title{
  margin-bottom: 7rem;
}
.potvrda-text{
  font-size: 3.6rem;
}
.potvrda-text h4{
  letter-spacing: 2px;
}
.design{
  position: relative;
}
.bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url(images/green-love-language/bg-top.png), url(images/green-love-language/bg-repeat.png);
	background-repeat: no-repeat, repeat-y;
  background-position: top left, left bottom;
	background-size: 100%;
	z-index: 1;
}
.image img{
  display: block;
  width: 100%;
  height: auto;
}
.image-text{
  margin:10rem 0;
  letter-spacing: 6px;
  font-style: italic;
  font-weight: 400;
}

.text-top{
  animation-delay: 2.8s !important;
}

@media only screen and (max-width: 30em) {
  /*480px*/
  .bottom-text br{
    display: none;
  }

}

@media only screen and (min-width: 30.0625em) {
  /*481px*/
  .content-right{
    max-width:80%
  }
  .main-content {

    padding-top: 32%;
  }
}
@media only screen and (min-width: 48.0625em) {
  /*769px*/
  .content-right{
    max-width: 60rem;
  }
  .date,  .name{

    font-size: 5rem;

  }
  .name{
    font-size: 10rem;
  }
  .bottom-text{
    margin-top: 20rem;
  }
  .form {
    margin-top: 10rem;
  }
  .date{
    margin-bottom: 10rem;
  }
  .okupljanje,.vjencanje, .vecera {
    margin-bottom: 10rem;
  }
  .names{
    margin-bottom: 8rem;
  }
  .text-top{
    animation-delay: 0;
  }
}
 
@media only screen and (min-width: 56.3125em) {
  /*901px*/

}
@media only screen and (min-width: 64.0625em) {
    /*1025px*/
    .potvrda-title h2{
      font-size: 10rem;
    }
    .main-content {
      padding: 0 13rem;
      padding-top: 32%;
      padding-bottom: 8rem;
    }
    .date{
      font-size: 5rem;
    }
    .names{
      font-size: 7rem;
    }
    .potvrda-text{
      font-size: 3rem;
    }
    .content-right{
      max-width: 80rem;
    }
  }

  .primary-title span{
    display: inline-block;
  }
  .primary-title span:first-child{
    padding-right: 2rem;
    margin-right: 2rem;
    border-right:2px solid #fff;
  }
  
  .scale-in-center {
    -webkit-animation: scale-in-center 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: scale-in-center 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
  }
  
   @-webkit-keyframes scale-in-center {
    0% {
      -webkit-transform: scale(0);
              transform: scale(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: scale(1);
              transform: scale(1);
      opacity: 1;
    }
  }
  @keyframes scale-in-center {
    0% {
      -webkit-transform: scale(0);
              transform: scale(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: scale(1);
              transform: scale(1);
      opacity: 1;
    }
  }
  .hidden{
    opacity: 0;
  }
  .visible {
  
            opacity: 1;
  }
  .fadeOut{
    -webkit-animation: fade-out 1.8s ease-out reverse both;
    animation: fade-out 1.8s ease-out reverse both;
  }
   @-webkit-keyframes fade-out {
    0% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes fade-out {
    0% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  .fade-out-bottom {
    -webkit-animation: fade-out-bottom 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) reverse both;
            animation: fade-out-bottom 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) reverse both;
  }
   @-webkit-keyframes fade-out-bottom {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateY(50px);
              transform: translateY(50px);
      opacity: 0;
    }
  }
  @keyframes fade-out-bottom {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateY(50px);
              transform: translateY(50px);
      opacity: 0;
    }
  }
  .fade-out-top {
    -webkit-animation: fade-out-top 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) reverse both;
            animation: fade-out-top 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) reverse both;
  }
   @-webkit-keyframes fade-out-top {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateY(-50px);
              transform: translateY(-50px);
      opacity: 0;
    }
  }
  @keyframes fade-out-top {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateY(-50px);
              transform: translateY(-50px);
      opacity: 0;
    }
  }
 
  .heartbeat {
    -webkit-animation: heartbeat 1.8s ease-in-out infinite both;
            animation: heartbeat 1.8s ease-in-out infinite both;
  }

@-webkit-keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  10% {
    -webkit-transform: scale(0.91);
            transform: scale(0.91);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  17% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  33% {
    -webkit-transform: scale(0.87);
            transform: scale(0.87);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  45% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
}
@keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  10% {
    -webkit-transform: scale(0.91);
            transform: scale(0.91);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  17% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  33% {
    -webkit-transform: scale(0.87);
            transform: scale(0.87);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  45% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
}
.tracking-in-expand {
	-webkit-animation: tracking-in-expand 0.7s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
	        animation: tracking-in-expand 0.7s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
}

 @-webkit-keyframes tracking-in-expand {
  0% {
    letter-spacing: -0.5em;
    opacity: 0;
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
@keyframes tracking-in-expand {
  0% {
    letter-spacing: -0.5em;
    opacity: 0;
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
.slide-in-bottom {
	-webkit-animation: slide-in-bottom 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: slide-in-bottom 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

 @-webkit-keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(1000px);
            transform: translateY(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(1000px);
            transform: translateY(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
.fade-in-right {
	-webkit-animation: fade-in-right 1.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in-right 1.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

 @-webkit-keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
.main-content a:hover{
  text-decoration: underline;
}
.slit-in-vertical {
	-webkit-animation: slit-in-vertical 0.45s ease-out both;
	        animation: slit-in-vertical 0.45s ease-out both;
}

 @-webkit-keyframes slit-in-vertical {
  0% {
    -webkit-transform: translateZ(-800px) rotateY(90deg);
            transform: translateZ(-800px) rotateY(90deg);
    opacity: 0;
  }
  54% {
    -webkit-transform: translateZ(-160px) rotateY(87deg);
            transform: translateZ(-160px) rotateY(87deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateZ(0) rotateY(0);
            transform: translateZ(0) rotateY(0);
  }
}
@keyframes slit-in-vertical {
  0% {
    -webkit-transform: translateZ(-800px) rotateY(90deg);
            transform: translateZ(-800px) rotateY(90deg);
    opacity: 0;
  }
  54% {
    -webkit-transform: translateZ(-160px) rotateY(87deg);
            transform: translateZ(-160px) rotateY(87deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateZ(0) rotateY(0);
            transform: translateZ(0) rotateY(0);
  }
}
.fade-in-tl {
	-webkit-animation: fade-in-tl 1.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in-tl 1.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

 @-webkit-keyframes fade-in-tl {
  0% {
    -webkit-transform: translateX(-50px) translateY(-50px);
            transform: translateX(-50px) translateY(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0) translateY(0);
            transform: translateX(0) translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-tl {
  0% {
    -webkit-transform: translateX(-50px) translateY(-50px);
            transform: translateX(-50px) translateY(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0) translateY(0);
            transform: translateX(0) translateY(0);
    opacity: 1;
  }
}
.wpcf7 form.sent .wpcf7-response-output {
	position: relative !important;
	padding: .75rem 1.25rem !important;
	margin-bottom: 1rem !important;
	border: 1px solid transparent !important;
	border-radius: .25rem !important;
	color: #155724 !important;
	background-color: #d4edda !important;
	border-color: #c3e6cb !important;
	text-align: center !important;
  margin: 0;
  font-size: 16px;
  letter-spacing: 0 !important;

}
.wpcf7 form.invalid .wpcf7-response-output{

	position: relative !important;
	padding: .75rem 1.25rem !important;
	margin-bottom: 1rem !important;
	border: 1px solid transparent !important; 
	border-radius: .25rem !important;
  color: #721c24 !important;
  background-color: #f8d7da !important;
  border-color: #f5c6cb !important;
	text-align: center !important;
  margin: 0;
  font-size: 16px;
  letter-spacing: 0 !important;
}
.wpcf7-not-valid-tip {
	text-align: center;
	margin-bottom: 0 !important;
	font-size: 16px !important;
	letter-spacing: 0;
  color: #f8d7da !important;
}
select, input{
  margin-bottom: 1rem;
}