/* Tiles */

.show-bg {
  -moz-background-size: contain;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  background: url(../../images/banner.png) no-repeat left top;
  height: 330px;
}

.finalist-bg {
  -moz-background-size: contain;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  background: url(../../images/banner.png) no-repeat left top;
}

.finalist {
  color: #F20F3B;
  font-weight: 600;
}

.finalist h3 {
  color: #F16D7A;
  font-style: italic;
}

.finalist ol {
  display: block;
  list-style: none;
  overflow: hidden;
  counter-reset: numList;
}

.finalist ol li {
  width: auto;
  margin-right: 4em;
  float: left;
  position: relative
}

.finalist ol li:before {
  counter-increment: numList;
  content: counter(numList);
  float: left;
  position: absolute;
  left: -26px;
  top: 2px;
  font: bold 18px sans-serif;
  text-align: center;
  color: #fff;
  line-height: 18px;
  width: 20px;
  height: 20px;
  background: #F20F3B;
  -moz-border-radius: 999px;
  border-radius: 999px
}

.author01 {
  height: 330px;
  line-height: 330px;
  text-align: center;
}

.author01 img {
  display: inline-block;
}

.author02 {
  height: 330px;
  line-height: 330px;
  text-align: center;
}

.author02 img {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  display: inline-block;
  border: 1px solid #FFF;
  padding: 10px;
}

#authorImg {
  display: inline-block;
  position: relative;
  width: 220px;
  height: 220px;
  top: calc(50% - 110px);
  left: 0px;
  z-index: 10;
  background-repeat: no-repeat;
  background-position: center top;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

#authorImg:before {
  content: '';
  position: absolute;
  left: -10px;
  top: -10px;
  z-index: 1;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  border: 1px solid #FFF;
  width: 240px;
  height: 240px;
}

#authorImg:hover {
  border: 1px solid rgba(255, 229, 0, 0.75);
  padding: 10px;
  -webkit-box-shadow: 0 0 15px rgba(255, 229, 0, 0.75);
  -moz-box-shadow: 0 0 15px rgba(255, 229, 0, 0.75);
  box-shadow: 0 0 15px rgba(255, 229, 0, 0.75);
}

.list h4 {
  color: #e32d55;
  font-size: 22px;
}
.list h4 small {
  color: #e32d55;
}
hr {
  border: 0;
  height: 3px;
  background-color: #e32d55;
  color: #e32d55;
}

.avatar {
  -moz-background-size: contain;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: cover;
  background-position: center top;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  height: 210px;
  width: 210px;
}

.tiles {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  postiion: relative;
  margin: -2.5em 0 0 -2.5em;
}

.tiles article {
  -moz-transition: -moz-transform 0.5s ease, opacity 0.5s ease;
  -webkit-transition: -webkit-transform 0.5s ease, opacity 0.5s ease;
  -ms-transition: -ms-transform 0.5s ease, opacity 0.5s ease;
  transition: transform 0.5s ease, opacity 0.5s ease;
  position: relative;
  width: calc(33.33333% - 2.5em);
  margin: 2.5em 0 0 2.5em;
}

.tiles article>.image {
  -moz-transition: -moz-transform 0.5s ease;
  -webkit-transition: -webkit-transform 0.5s ease;
  -ms-transition: -ms-transform 0.5s ease;
  transition: transform 0.5s ease;
  position: relative;
  display: block;
  width: 100%;
  border-radius: 4px;
  overflow: hidden;
}

.tiles article>.image img {
  display: block;
  width: 100%;
}

.tiles article>.image:before {
  -moz-pointer-events: none;
  -webkit-pointer-events: none;
  -ms-pointer-events: none;
  pointer-events: none;
  -moz-transition: background-color 0.5s ease, opacity 0.5s ease;
  -webkit-transition: background-color 0.5s ease, opacity 0.5s ease;
  -ms-transition: background-color 0.5s ease, opacity 0.5s ease;
  transition: background-color 0.5s ease, opacity 0.5s ease;
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1.0;
  z-index: 1;
  opacity: 0.8;
}

.tiles article>.image:after {
  -moz-pointer-events: none;
  -webkit-pointer-events: none;
  -ms-pointer-events: none;
  pointer-events: none;
  -moz-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cstyle%3Eline %7B stroke-width: 0.25px%3B stroke: %23ffffff%3B %7D%3C/style%3E%3Cline x1='0' y1='0' x2='100' y2='100' /%3E%3Cline x1='100' y1='0' x2='0' y2='100' /%3E%3C/svg%3E");*/
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  opacity: 0.25;
  z-index: 2;
}

.tiles article>a {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -moz-align-items: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -moz-transition: background-color 0.5s ease, -moz-transform 0.5s ease;
  -webkit-transition: background-color 0.5s ease, -webkit-transform 0.5s ease;
  -ms-transition: background-color 0.5s ease, -ms-transform 0.5s ease;
  transition: background-color 0.5s ease, transform 0.5s ease;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1em;
  border-radius: 4px;
  border-bottom: 0;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  z-index: 3;
}

.tiles article>a> :last-child {
  margin: 0;
}

.tiles article>a:hover {
  color: #ffffff !important;
}

.tiles article>a h2 {
  margin: 0;
}

.tiles article>a .content {
  -moz-transition: max-height 0.5s ease, opacity 0.5s ease;
  -webkit-transition: max-height 0.5s ease, opacity 0.5s ease;
  -ms-transition: max-height 0.5s ease, opacity 0.5s ease;
  transition: max-height 0.5s ease, opacity 0.5s ease;
  width: 100%;
  max-height: 0;
  line-height: 1.5;
  margin-top: 0.35em;
  opacity: 0;
}

.tiles article>a .content> :last-child {
  margin-bottom: 0;
}

.tiles article.style1>.image:before {
  background-color: #f2849e;
}

.tiles article.style2>.image:before {
  background-color: #7ecaf6;
}

.tiles article.style3>.image:before {
  background-color: #7bd0c1;
}

.tiles article.style4>.image:before {
  background-color: #c75b9b;
}

.tiles article.style5>.image:before {
  background-color: #ae85ca;
}

.tiles article.style0>.image:before {
  background-color: #8499e7;
}

body:not(.is-touch) .tiles article:hover>.image {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

body:not(.is-touch) .tiles article:hover>.image:before {
  background-color: #333333;
  opacity: 0.35;
}

body:not(.is-touch) .tiles article:hover>.image:after {
  opacity: 0;
}

body:not(.is-touch) .tiles article:hover .content {
  max-height: 15em;
  opacity: 1;
}

*+.tiles {
  margin-top: 2em;
}

body.is-loading .tiles article {
  -moz-transform: scale(0.9);
  -webkit-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
  opacity: 0;
}

body.is-touch .tiles article .content {
  max-height: 15em;
  opacity: 1;
}

@media screen and (max-width: 1280px) {
  .tiles {
    margin: -1.25em 0 0 -1.25em;
  }
  .tiles article {
    width: calc(33.33333% - 1.25em);
    margin: 1.25em 0 0 1.25em;
  }
}

@media screen and (max-width: 980px) {
  .tiles {
    margin: -2.5em 0 0 -2.5em;
  }
  .tiles article {
    width: calc(50% - 2.5em);
    margin: 2.5em 0 0 2.5em;
  }
}

@media screen and (max-width: 736px) {
  .tiles {
    margin: -1.25em 0 0 -1.25em;
  }
  .tiles article {
    width: calc(50% - 1.25em);
    margin: 1.25em 0 0 1.25em;
  }
  .tiles article:hover>.image {
    -moz-transform: scale(1.0);
    -webkit-transform: scale(1.0);
    -ms-transform: scale(1.0);
    transform: scale(1.0);
  }
}

@media screen and (max-width: 480px) {
  .tiles {
    margin: 0;
  }
  .tiles article {
    width: 100%;
    margin: 1.25em 0 0 0;
  }
  .show-bg {
    -moz-background-size: contain;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    background: url(../../images/banner-y.png) no-repeat left top;
    height: auto;
  }
  .finalist-bg {
    -moz-background-size: contain;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    background: url(../../images/banner-y.png) no-repeat left top;
    height: auto;
  }
  .author01,
  .author02 {
    height: auto;
    margin: -3rem 0px;
  }
}

#interview img {
  margin-top: 2em;
  margin-bottom: 2em;
}

#interview p {
  line-height: 30px;
}

#interview .tag {
  color: #F03;
  background-color: #DBDBDB;
  text-align: center;
  padding-top: 1em;
  padding-bottom: 1em;
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: 1.1em;
}

.red {
  color: #F20F3B;
}

/* Hover Effect */

.hovereffect {
  width: 100%;
  height: 100%;
  float: left;
  overflow: hidden;
  position: relative;
  text-align: center;
  cursor: default;
  overflow: hidden;
}

.hovereffect .overlay {
  width: 100%;
  height: 17.75rem;
  position: absolute;
  /*overflow: hidden;*/
  overflow: auto;
  left: 0;
  top: auto;
  bottom: 0;
  padding: 1em;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
}

.hovereffect .ratio {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 138.89%;
  /* % of width, defines aspect ratio*/
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
}

/*.hovereffect:hover .ratio {
-webkit-transform: translate3d(0,-5%,0);
	transform: translate3d(0,-5%,0);
}*/

.hovereffect img {
  display: block;
  position: relative;
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  width: 100%;
}

.hovereffect:hover img {
  -webkit-transform: translate3d(0, -10%, 0);
  transform: translate3d(0, -10%, 0);
}

.hovereffect h2 {
  margin: 0.5rem;
  color: #33FFCC;
  text-align: center;
  font-size: 1.5rem;
}

.hovereffect p {
  text-align: center;
  font-size: 0.95rem;
}

.views {
  background-color: #F69;
  color: #FFF;
  text-align: center;
  clear: both;
  padding: 0.25rem 1rem;
}

.views a {
  color: #FFF;
  text-decoration: none;
}

.views h2 {
  margin-top: 1rem;
  font-size: 1.45rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  padding-bottom: 0.5rem;
}

.hovereffect a.info {
  display: inline-block;
  text-decoration: none;
  padding: 7px 14px;
  text-transform: uppercase;
  color: #fff;
  border: 1px solid #fff;
  margin: 50px 0 0 0;
  background-color: transparent;
}

.hovereffect a.info:hover {
  box-shadow: 0 0 5px #fff;
}

.hovereffect p.icon-links a {
  float: right;
  color: #3c4a50;
  font-size: 1.4em;
}

.hovereffect:hover p.icon-links a:hover,
.hovereffect:hover p.icon-links a:focus {
  color: #252d31;
}

.hovereffect h2,
.hovereffect p.icon-links a {
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  -webkit-transform: translate3d(0, 200%, 0);
  transform: translate3d(0, 200%, 0);
  visibility: visible;
}

.hovereffect p.icon-links a span:before {
  display: inline-block;
  padding: 8px 10px;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.hovereffect:hover .overlay,
.hovereffect:hover h2,
.hovereffect:hover p.icon-links a {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.hovereffect:hover h2 {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

.hovereffect:hover p.icon-links a:nth-child(3) {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.hovereffect:hover p.icon-links a:nth-child(2) {
  -webkit-transition-delay: 0.15s;
  transition-delay: 0.15s;
}

.hovereffect:hover p.icon-links a:first-child {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}

.m-0 {
  margin: 0 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-1 {
  margin: 0.25rem 0.25rem !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mr-1 {
  margin-right: 0.25rem !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1 {
  margin-left: 0.25rem !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem 0.5rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mr-2 {
  margin-right: 0.5rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2 {
  margin-left: 0.5rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.m-3 {
  margin: 1rem 1rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mr-3 {
  margin-right: 1rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.ml-3 {
  margin-left: 1rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.m-4 {
  margin: 1.5rem 1.5rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mr-4 {
  margin-right: 1.5rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4 {
  margin-left: 1.5rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.m-5 {
  margin: 3rem 3rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mr-5 {
  margin-right: 3rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.ml-5 {
  margin-left: 3rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.p-0 {
  padding: 0 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pr-0 {
  padding-right: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-1 {
  padding: 0.25rem 0.25rem !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pr-1 {
  padding-right: 0.25rem !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1 {
  padding-left: 0.25rem !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem 0.5rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pr-2 {
  padding-right: 0.5rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2 {
  padding-left: 0.5rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.p-3 {
  padding: 1rem 1rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pr-3 {
  padding-right: 1rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pl-3 {
  padding-left: 1rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.p-4 {
  padding: 1.5rem 1.5rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pr-4 {
  padding-right: 1.5rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4 {
  padding-left: 1.5rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.p-5 {
  padding: 3rem 3rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pr-5 {
  padding-right: 3rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.pl-5 {
  padding-left: 3rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}