/*--------------------------------------------------------------
 # Copyright (C) joomla-monster.com
 # License: http://www.joomla-monster.com/license.html Joomla-Monster Proprietary Use License
 # Website: http://www.joomla-monster.com
 # Support: info@joomla-monster.com
 ---------------------------------------------------------------*/

/* ==========================================================================
   EDITOR styles
   ========================================================================== */

/** typography article **/

h3.jm-typo-title {
  border-bottom: 1px dotted #dddddd;
  padding-bottom: 10px;
  margin-bottom: 25px;
  text-align: center;
  font-weight: bold;
  font-size: 22px;
}

.jm-code {
  border-left: 5px solid #dddddd;
  padding: 10px;
  background: #e5e5e5;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/** image borders **/

.border_img1 {
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.2);
  padding: 1px;
}

.border_img2 img {
  position: relative;
  display: inline-block;
}

.border_img2 {
  position: relative;
  display: inline-block;
  max-width: 100%;
  margin: 0;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.2);
  padding: 1px;
}

.border_img2:after {
  -moz-box-shadow: inset 0 0 0 12px rgba(255,255,255,0.35);
  -webkit-box-shadow: inset 0 0 0 12px rgba(255,255,255,0.35);
  box-shadow: inset 0 0 0 12px rgba(255,255,255,0.35);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  content: "";
}

.border_img3 {
  border: 1px solid rgba(0,0,0,0.2);
}

/** custom contact **/
  
.jm-custom-img {
  float: left;
  padding: 0 15px 0 0;
}

.jm-custom-desc {
  float: left;
}

/** social icons **/

.jm-icons {}

.jm-icons a {
  display: inline-block;
}

.jm-icons a:hover {
  text-decoration: none;
}

.jm-icons span {
  display: block;
  width: 116px;
  height: 39px;
  background-position: 0 0;
  background-repeat: no-repeat;
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.jm-icons span:hover {
  background-position: 0 -50px;
}

.jm-icons .jm-facebook {
  background-image: url(../images/facebook.png);
}

.jm-icons .jm-twitter {
  background-image: url(../images/twitter.png);
}

.jm-icons .jm-google {
  background-image: url(../images/google.png);
}

/** numered blocks **/

.jm-block {
  margin: 10px 0;
  padding: 0 0 0 60px;
  position: relative;
}

.jm-block span {
  background: #dddddd;
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  height: 40px;
  width: 40px;
  line-height: 40px;
  text-align: center;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  font-size: 18px;
  color: #ffffff;
}

.jm-block.second span {
  background: #2a2a2a;
}

/** colored blocks **/

p.blue {
  border-left: 3px solid #BCE8F1;
  padding: 0 0 0 10px;
}

p.green {
  border-left: 3px solid #D6E9C6;
  padding: 0 0 0 10px;
}

p.red {
  border-left: 3px solid #EED3D7;
  padding: 0 0 0 10px;
}

p.bluefill {
  background: #D9EDF7;
  border: 1px solid #BCE8F1;
  display: block;
  padding: 10px;
  text-align: justify;
  color: #3A87AD;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}

p.greenfill {
  background: #DFF0D8;
  border: 1px solid #D6E9C6;
  display: block;
  padding: 10px;
  text-align: justify;
  color: #468847;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}

p.redfill {
  background: #F2DEDE;
  border: 1px solid #EED3D7;
  display: block;
  padding: 10px;
  text-align: justify;
  color: #B94A48;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}

/** quote blocks **/

.quote-left {
  display: block;
  font-style: italic;
  padding: 10px 10px 10px 50px;
  background: url(../images/quote-left.png) no-repeat left top;
  text-align: left;
}

.quote-right {
  display: block;
  font-style: italic;
  padding: 10px 50px 10px 10px;
  background: url(../images/quote-right.png) no-repeat right bottom;
  text-align: right;
}

/** quote cloud **/

.quote-cloud {
  position: relative;
  background: #fff;
  border: 1px solid #e9e9e9;
  padding: 10px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

.quote-cloud:after {
  content: " ";
  position: absolute;
  background: url("../images/ar-quote-cloud.png") no-repeat;
  width: 27px;
  height: 13px;
  right: 15px;
  bottom: -13px;
}

.quote-cloud p {
  display: block;
  padding: 0 0 0 40px;
  background: url(../images/quote-cloud.png) no-repeat left top;
  line-height: 1.7em;
}

.jm-testimonial {
  padding: 20px 0 0;
  display: inline-block;
  width: 100%;
}

.jm-testimonial-name, 
.jm-testimonial-img {
  float: right;
  padding: 0 10px;
}

/** icon blocks **/

p.badge {
  padding-left: 60px;
  background: url(../images/icons_dark/badge.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.calendar {
  padding-left: 60px;
  background: url(../images/icons_dark/calendar.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.chat {
  padding-left: 60px;
  background: url(../images/icons_dark/chat.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.check {
  padding-left: 60px;
  background: url(../images/icons_dark/check.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.cloud {
  padding-left: 60px;
  background: url(../images/icons_dark/cloud.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.direction {
  padding-left: 60px;
  background: url(../images/icons_dark/direction.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.divide {
  padding-left: 60px;
  background: url(../images/icons_dark/divide.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.error {
  padding-left: 60px;
  background: url(../images/icons_dark/error.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.fire {
  padding-left: 60px;
  background: url(../images/icons_dark/fire.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.flag {
  padding-left: 60px;
  background: url(../images/icons_dark/flag.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.heart {
  padding-left: 60px;
  background: url(../images/icons_dark/heart.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.home {
  padding-left: 60px;
  background: url(../images/icons_dark/home.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.info {
  padding-left: 60px;
  background: url(../images/icons_dark/info.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.list {
  padding-left: 60px;
  background: url(../images/icons_dark/list.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.mail {
  padding-left: 60px;
  background: url(../images/icons_dark/mail.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.people {
  padding-left: 60px;
  background: url(../images/icons_dark/people.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.star {
  padding-left: 60px;
  background: url(../images/icons_dark/star.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

p.stat {
  padding-left: 60px;
  background: url(../images/icons_dark/stat.png) no-repeat left top;
  min-height: 40px;
  margin: 5px 0 15px;
}

/** unordered lists **/

ul.jm-dark li, 
ul.jm-dark ul li {
  background-image: url('../images/li-dark.png');
}

/** ordered lists **/

ol.jm-roman, 
ol.jm-roman ol {
  list-style-type: upper-roman;
}

ol.jm-alpha, 
ol.jm-alpha ol {
  list-style-type: lower-alpha;
}

/** image hover effects **/

.ch-item {
  position: relative;
  width: 220px;
  height: 220px;
}

.ch-item .ch-info .ch-container {
  position: relative;
  display: table;
  width: 100%;
  height: 100%;
}

.ch-item .ch-info .ch-outer {
  display: table-cell;
  vertical-align: middle;
}

.ch-item .ch-info h3 {
  text-transform: uppercase;
  position: relative;
  margin: 0 35px;
  padding: 0 0 5px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  font-size: 1.6em !important;
}

.ch-item .ch-info p {
  padding: 10px 5px 0;
  margin: 0 35px;
  text-align: center;
  border-top: 1px solid #bcbcbc;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.ch-item .ch-info p a:link, 
.ch-item .ch-info p a:visited {
  width: 49px;
  height: 39px;
  color: #fff;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  color: #fff;
  font-weight: bold;
  margin: 10px auto 0;
  text-transform: uppercase;
  font-size: 1em;
  line-height: 1.3em;
  display: block;
  text-align: center;
  padding: 25px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.ch-item .ch-info p a:hover {
  text-decoration: none;
}

/* first */

.ch-item.ch-first {
  border-radius: 50%;
  position: relative;
  cursor: default;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.ch-item.ch-first .ch-info {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  opacity: 0;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -o-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-backface-visibility: hidden; /*for a smooth font */
  background: url('../images/bg-hoverme.png');
}

.ch-item.ch-first:hover .ch-info {
  opacity: 1;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

/*second*/

.ch-item.ch-second {
  border-radius: 50%;
  position: relative;
  cursor: default;
}

.ch-item.ch-second .ch-info-wrap {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -webkit-perspective: 800px;
  -moz-perspective: 800px;
  -o-perspective: 800px;
  -ms-perspective: 800px;
  perspective: 800px;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.ch-item.ch-second .ch-info {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  -ms-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.ch-item.ch-second .ch-info > div {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-position: center center;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
}

.ch-item.ch-second .ch-info .ch-info-back {
  -webkit-transform: rotate3d(0,1,0,180deg);
  -moz-transform: rotate3d(0,1,0,180deg);
  -o-transform: rotate3d(0,1,0,180deg);
  -ms-transform: rotate3d(0,1,0,180deg);
  transform: rotate3d(0,1,0,180deg);
  -moz-box-shadow: inset 0 0 10px #c4c5c4;
  -webkit-box-shadow: inset 0 0 10px #c4c5c4;
  box-shadow: inset 0 0 10px #c4c5c4;
  background: url('../images/bg-hoverme.png');
}

.ch-item.ch-second:hover .ch-info {
  -webkit-transform: rotate3d(0,1,0,-180deg);
  -moz-transform: rotate3d(0,1,0,-180deg);
  -o-transform: rotate3d(0,1,0,-180deg);
  -ms-transform: rotate3d(0,1,0,-180deg);
  transform: rotate3d(0,1,0,-180deg);
}

/*third*/

.ch-item.ch-third {
  border-radius: 50%;
  position: relative;
  cursor: default;
  -webkit-perspective: 900px;
  -moz-perspective: 900px;
  -o-perspective: 900px;
  -ms-perspective: 900px;
  perspective: 900px;
}
.ch-item.ch-third .ch-info {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  -ms-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
.ch-item.ch-third .ch-info > div {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-position: center center;
  -webkit-transition: all 0.4s linear;
  -moz-transition: all 0.4s linear;
  -o-transition: all 0.4s linear;
  -ms-transition: all 0.4s linear;
  transition: all 0.4s linear;
  -webkit-transform-origin: 50% 0%;
  -moz-transform-origin: 50% 0%;
  -o-transform-origin: 50% 0%;
  -ms-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
}

.ch-item.ch-third .ch-info .ch-info-back {
  -webkit-transform: translate3d(0,0,-220px) rotate3d(1,0,0,90deg);
  -moz-transform: translate3d(0,0,-220px) rotate3d(1,0,0,90deg);
  -o-transform: translate3d(0,0,-220px) rotate3d(1,0,0,90deg);
  -ms-transform: translate3d(0,0,-220px) rotate3d(1,0,0,90deg);
  transform: translate3d(0,0,-220px) rotate3d(1,0,0,90deg);
  -moz-box-shadow: inset 0 0 10px #c4c5c4;
  -webkit-box-shadow: inset 0 0 10px #c4c5c4;
  box-shadow: inset 0 0 10px #c4c5c4;
  background: url('../images/bg-hoverme.png');
  opacity: 0;
}

.ch-item.ch-third:hover .ch-info-front {
  -webkit-transform: translate3d(0,280px,0) rotate3d(1,0,0,-90deg);
  -moz-transform: translate3d(0,280px,0) rotate3d(1,0,0,-90deg);
  -o-transform: translate3d(0,280px,0) rotate3d(1,0,0,-90deg);
  -ms-transform: translate3d(0,280px,0) rotate3d(1,0,0,-90deg);
  transform: translate3d(0,280px,0) rotate3d(1,0,0,-90deg);
  opacity: 0;
}

.ch-item.ch-third:hover .ch-info-back {
  -webkit-transform: rotate3d(1,0,0,0deg);
  -moz-transform: rotate3d(1,0,0,0deg);
  -o-transform: rotate3d(1,0,0,0deg);
  -ms-transform: rotate3d(1,0,0,0deg);
  transform: rotate3d(1,0,0,0deg);
  opacity: 1;
}