@import url('https://fonts.googleapis.com/css?family=Alegreya+SC:400,400i');

@font-face {
  font-family: Srikandy;
  font-weight: 400;
  font-style: normal;
  src: url('/fonts/srikandy-script-regular.otf');
  src: url('/fonts/srikandy-script-regular.otf') format('opentype'),
       url('/fonts/srikandy-script-regular.woff2') format('woff2'),
       url('/fonts/srikandy-script-regular.woff') format('woff');
}

@font-face {
  font-family: Vidaloka;
  font-weight: 400;
  font-style: normal;
  src: url('/fonts/vidaloka-regular.otf');
  src: url('/fonts/vidaloka-regular.otf') format('opentype'),
       url('/fonts/vidaloka-regular.woff2') format('woff2'),
       url('/fonts/vidaloka-regular.woff') format('woff');
}

@font-face {
  font-family: 'hampton-icons';
  src:  url('hampton-icons.eot?9uwhi');
  src:  url('hampton-icons.eot?9uwhi#iefix') format('embedded-opentype'),
    url('hampton-icons.woff2?9uwhi') format('woff2'),
    url('hampton-icons.ttf?9uwhi') format('truetype'),
    url('hampton-icons.woff?9uwhi') format('woff'),
    url('hampton-icons.svg?9uwhi#hampton-icons') format('svg');
  font-weight: normal;
  font-style: normal;
}

.card {
  font-family: 'Vidaloka', serif;
  text-transform: uppercase;
  position: relative;
  color: #979da1;
}

.card:before,
.card:after,
.host:before,
.reception:before,
.reception:after,
.datetime__date:before,
.datetime__date:after {
  display: block;
  width: 50px;
  height: 50px;
  font-size: 50px;
  font-family: 'hampton-icons';
  line-height: 1;
  user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  color: #aadac1;
}

.card:before,
.card:after,
.reception:before,
.reception:after,
.datetime__date:before,
.datetime__date:after {
  position: absolute;
}

.datetime__comma {
  display: none;
}

.card:before {
  content: '\e903';
  top: 10px;
  left: 10px;
}

.card:after {
  content: '\e904';
  top: 10px;
  right: 10px;
}

.host {
  margin: 30px 0;
  font-family: 'Alegreya SC', serif;
  font-size: 16px;
  letter-spacing: 0.1em;
  position: relative;
}

.host:before {
  content: '\e900';
  width: 40px;
  height: 24px;
  font-size: 24px;
  margin: 0 auto 25px;
}

.couple {
  margin: 30px 0;
  line-height: 1;
}

.couple__names {
  font-size: 45px;
}

.couple__and {
  text-transform: lowercase;
  font-family: 'Srikandy', serif;
  font-size: 45px;
  display: block;
  margin: 0.35em auto 0.55em;
  height: 1em;
  color: #aadac1;
}

.couple__and .l:nth-child(2) {
  -webkit-font-feature-settings: 'ss13';
  -moz-font-feature-settings: 'ss13';
  -ms-font-feature-settings: 'ss13';
  font-feature-settings: 'ss13';
}

.couple__and .l:nth-child(3) {
  -webkit-font-feature-settings: 'ss10';
  -moz-font-feature-settings: 'ss10';
  -ms-font-feature-settings: 'ss10';
  font-feature-settings: 'ss10';
}

.request,
.information {
  font-family: 'Alegreya SC', serif;
  font-size: 16px;
  letter-spacing: 0.1em;
}

.datetime {
  min-height: 90px;
  margin: 50px 0;
  font-size: 21px;
  letter-spacing: 0.1em;
  position: relative;
}

.datetime__weekday,
.datetime__time {
  display: block;
  margin: 25px 0;
}

.datetime__date {
  display: inline-block;
  position: relative;
  margin: 0 40px;
  line-height: 1.25;
}

.datetime__date:before,
.datetime__date:after {
  width: 15px;
  height: 90px;
  font-size: 90px;
  top: 50%;
  margin-top: -45px;
}

.datetime__date:before {
  content: '\e901';
  left: -30px;
}

.datetime__date:after {
  content: '\e902';
  right: -30px;
}

.datetime__month,
.datetime__year {
  display: block;
  font-size: 18px;
}

.datetime__year {
  letter-spacing: 0.3em;
}

.datetime__day {
  display: block;
  font-family: 'Srikandy', serif;
  font-size: 40px;
  text-transform: none;
  letter-spacing: 0;
  line-height: 1;
}

.datetime__day--2,
.datetime__day--3,
.datetime__day--6,
.datetime__day--7,
.datetime__day--9,
.datetime__day--10,
.datetime__day--13,
.datetime__day--16,
.datetime__day--17,
.datetime__day--19,
.datetime__day--30 {
  margin: 0.125em 0 -0.125em;
}

.location {
  margin: 25px 0;
  font-family: 'Alegreya SC', serif;
  font-size: 16px;
  letter-spacing: 0.1em;
}

.location__name {
  font-family: 'Vidaloka', serif;
  font-size: 22px;
  line-height: 24px;
  text-transform: uppercase;
  color: #aadac1;
}

.location__name,
.location__address,
.location__city,
.location__country {
  margin: 10px 0;
}

.reception {
  margin: 10px 0;
  font-family: 'Srikandy', serif;
  font-size: 40px;
  text-transform: none;
  color: #aadac1;
}

.reception:before {
  content: '\e906';
  bottom: 10px;
  left: 10px;
}

.reception:after {
  content: '\e905';
  bottom: 10px;
  right: 10px;
}

.link, .button {
  font-family: 'Vidaloka', serif;
  text-transform: uppercase;
}

.link {
  padding: 15px 0 13px;
}

.button {
  background: #aadac1;
  padding: 15px 15px 13px;
}

.button:hover {
  -moz-box-shadow: inset 0 0 0 30px rgba(0,0,0,0.05);
  -webkit-box-shadow: inset 0 0 0 30px rgba(0,0,0,0.05);
  box-shadow: inset 0 0 0 30px rgba(0,0,0,0.05);
  opacity: 1;
}

@media (min-width: 540px) {
  .couple {
    font-size: 60px;
  }

  .datetime__weekday,
  .datetime__time {
    width: 30%;
    position: absolute;
    top: 0;
  }

  .datetime__weekday {
    left: 0;
  }

  .datetime__time {
    right: 0;
  }
}

/* Variations */

.v2 .card {
  color: #9b9185;
}

.v2 .card:before,
.v2 .card:after,
.v2 .host:before,
.v2 .couple__and,
.v2 .reception:before,
.v2 .reception:after,
.v2 .datetime__date:before,
.v2 .datetime__date:after,
.v2 .location__name,
.v2 .reception {
  color: #f8bc96;
}

.v2 .button {
  background-color: #f8bc96;
}

.v3 .card {
  color: #9b9185;
}

.v3 .card:before,
.v3 .card:after,
.v3 .host:before,
.v3 .couple__and,
.v3 .reception:before,
.v3 .reception:after,
.v3 .datetime__date:before,
.v3 .datetime__date:after,
.v3 .location__name,
.v3 .reception {
  color: #f0b1d0;
}

.v3 .button {
  background-color: #f0b1d0;
}

.v4 .card {
  color: #000000;
}

.v4 .card:before,
.v4 .card:after,
.v4 .host:before,
.v4 .couple__and,
.v4 .reception:before,
.v4 .reception:after,
.v4 .datetime__date:before,
.v4 .datetime__date:after,
.v4 .location__name,
.v4 .reception {
  color: #000000;
}

.v4 .button {
  background-color: #000000;
}

/* Simplified */

.is-simple .card:before,
.is-simple .card:after,
.is-simple .reception:before,
.is-simple .reception:after,
.is-simple .datetime__date:before,
.is-simple .datetime__date:after {
  display: none;
}

.is-simple .host:before {
  opacity: 0;
}