/* ==========================================================================
   Helpers
   ========================================================================== */

.m-t-10 { margin-top: 10px; }
.m-t-20 { margin-top: 20px; }
.m-t-30 { margin-top: 30px; }
.m-t-40 { margin-top: 40px; }
.m-t-50 { margin-top: 50px; }

.m-t--10 { margin-top: -10px; }
.m-t--20 { margin-top: -20px; }
.m-t--30 { margin-top: -30px; }
.m-t--40 { margin-top: -40px; }
.m-t--50 { margin-top: -50px; }

.m-b-10 { margin-bottom: 10px; }
.m-b-20 { margin-bottom: 20px; }
.m-b-30 { margin-bottom: 30px; }
.m-b-40 { margin-bottom: 40px; }
.m-b-50 { margin-bottom: 50px; }

.p-t-10 { padding-top: 10px; }
.p-t-20 { padding-top: 20px; }
.p-t-30 { padding-top: 30px; }
.p-t-40 { padding-top: 40px; }
.p-t-50 { padding-top: 50px; }

.p-b-10 { padding-bottom: 10px; }
.p-b-20 { padding-bottom: 20px; }
.p-b-30 { padding-bottom: 30px; }
.p-b-40 { padding-bottom: 40px; }
.p-b-50 { padding-bottom: 50px; }

.no-padding { padding: 0; }

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

body {
	background: url('../img/light_grey.png');
	font-family: 'Ubuntu', sans-serif;
	color: #333333;
}

body > footer {
	/*background: rgba(51,51,51, 1);*/
	background: rgba(2, 2, 2, 0.8);
	padding-top: 20px;
	padding-bottom: 20px;
	margin-top: 20px;
	color: #cccccc;
	font-weight: 300;
	border-top: 4px solid black;
}

body > footer strong {
	font-weight: 500;
}

body > footer ul {
	list-style: none;
	list-style-type: none;
	padding: 0;
}

body > footer a {
	color: #cccccc;
}

body > footer a:hover {
	color: #cccccc;
}

body > footer .center-widget {
	border-left: 1px solid gray;
	border-right: 1px solid gray;
}

.japanese {
	font-family: 'Hiragino Mincho Pro', 'MS PMincho', sans-serif;
	font-size: 5.5em;
}

input.form-control, textarea.form-control {
	background-color: black;
	color: white;
	border: none;
	border-radius: 0;
}

.form-group {
	margin-bottom: 5px;
}

#newsletter_signup_form label {
	font-weight: 300;
}

.btn-black {
	color: #cccccc;
    background-color: black;
    border-color: #ccc;
    border: none;
}

.btn-black:hover, .btn-black:focus {
	color: white;
}

.panel {
	border-radius: 0;
	border: none;
}

.panel-sidebar {
	color: #808080;
	background: rgba(255, 255, 255, 0.85);
	font-weight: 300;
}

.panel-sidebar ul {
	list-style-type: none;
	padding: 0;
}

.panel-sidebar ul li {
	border-bottom: 1px solid rgb(230, 230, 230);
    margin-bottom: 5px;
}

.panel-sidebar a {
	color: #808080;
}

.panel-sidebar h4 {
	font-family: 'Ubuntu Condensed';
	text-transform: uppercase;
	margin-top: 0px;
	margin-bottom: 20px;
	font-size: 20px;
}

.panel-sidebar .btn-link {
	font-style: italic;
}

.panel-sidebar .sidebar_date {
	color: #b3b3b3;
	line-height: 18px;
}

.panel-sidebar.panel-dark {
	background: #808080;
	background: rgba(128,128,128,0.85);
	color: white;
}

.panel-sidebar.panel-dark ul li {
	border-bottom: none;
    margin-bottom: none;
}

.panel-sidebar.panel-dark a {
	color: white;
}

ol.breadcrumb {
	margin-bottom: 0px;
	border-bottom: 3px solid rgb(51, 51, 51);
	border-radius: 0;
	background: none;
	padding-left: 0px;
	padding-right: 0px;
}

ol.breadcrumb a {
	color: #333333;
}

ol.breadcrumb li.active {
	color: black;
	font-weight: 600;
}

hr {
	border-top: 1px solid rgb(232, 166, 166);
	margin-top: 3px;
}

h1, h2, h3, h4, h5 {
	font-family: 'Abril Fatface';
}


/* ==========================================================================
   News page
   ========================================================================== */

.news-article-preview {
	margin-bottom: 20px;
}

.news-article-preview h3 a {
	font-family: 'Ubuntu';
	color: #ed1e79;
	text-transform: uppercase;
}

.news-article-preview a.btn-link {
	color: #808080;
	font-style: italic;
}

.news-article-preview hr {
	border-top: 1px solid #b3b3b3;
	margin-top: 0px;
	margin-bottom: 0px;
}


/* ==========================================================================
   News item page
   ========================================================================== */

.headline_green {
	color: #22b573;
	margin-bottom: 30px;
}


/* ==========================================================================
   Contact page
   ========================================================================== */

@media screen and (min-width: 1200px)  {
	a.contact-map img {
		margin-left: -31px;
	}
}


/* ==========================================================================
   Home page
   ========================================================================== */

#home_call_to_action ul {
  -webkit-column-count: 2;
     -moz-column-count: 2;
          column-count: 2;
  -webkit-column-gap: 3em;
     -moz-column-gap: 3em;
          column-gap: 3em;
}

#home_call_to_action ul { padding-left:20px; list-style:none; }
#home_call_to_action li { margin-bottom:10px; line-height: 1em; }
#home_call_to_action li:before {
    font-family: 'FontAwesome';
    content: "\f192";
    margin: 0 5px 0 -15px;
}
#home_call_to_action li a {
	color: #333333;
}

.all-caps {
	text-transform: uppercase;
	font-size: 1.2em;
	font-weight: 400;
	margin-top: 40px;
	text-align: center;
}

.bkg-call-to-action {
	background-image: url('../img/home_call_to_action_bkg.jpg');
	background-position: left top;
	background-repeat: repeat-x;
}

@media screen and (max-width: 600px)  {
	#home_call_to_action h1 {
		font-size: 30px;
		margin-top: 10px;
	}
}


/* Testimonials carousel */

.carousel-reviews {
	margin-top: 70px;
	padding-bottom: 20px;
	/*border-bottom: 1px solid #b3b3b3;*/
}

.carousel-reviews .carousel-control {
	color: #333;
}

.carousel-reviews .carousel-control.left,
.carousel-reviews .carousel-control.right {
	background-image: none;
	top: 120px;
}

.carousel-reviews .item .block-text.rel {
	font-style: italic;
}

.carousel-reviews h5 {
	font-family: 'Ubuntu Condensed';
	color: #4d4d4d;
	font-size: 1.4em;
	margin-bottom: 0;
    padding-top: 15px;
}

.person-text img {
	margin-right: 10px;
}


/* Top homepage carousel */

#myCarousel .carousel-caption {
    left:0;
	right:0;
	bottom:0;
	text-align:left;
	padding:10px;
	/*background:rgba(0,0,0,0.6);*/
	background:rgba(255, 255, 255, 0.85);
	color: #333;
	text-shadow:none;
	/*border-top: 4px solid black;*/
	padding-top: 5px;
}

#myCarousel .list-group {
	position:absolute;
	top:0;
	right:0;
}
#myCarousel .list-group-item {
	border-radius:0px;
	cursor:pointer;
	background: none;
	border: none;
	border-bottom: 1px solid #b3b3b3;
	padding-left: 0;
	padding-right: 0;
	margin-left: 15px;
	color: #808080;
}
#myCarousel .list-group-item h4 {
	font-family: 'Ubuntu';
	font-size: 1em;
	margin-top: 5px;
	margin-bottom: 5px;
}
#myCarousel .list-group .active {
	/*background-color:#eee;*/
	color: black;
}

@media (min-width: 992px) {
	#myCarousel {padding-right:33.3333%;}
	#myCarousel .carousel-controls {display:none;}
}
@media (max-width: 991px) {
	.carousel-caption p,
	#myCarousel .list-group {display:none;}
}

#myCarousel .carousel-caption h4 a {
	color: #22b573;
	font-size: 22px;
}

.carousel-inner.vertical {
  height: 100%;
}
.carousel-inner.vertical > .item {
  -webkit-transition: .6s ease-in-out top;
  -o-transition: .6s ease-in-out top;
  transition: .6s ease-in-out top;
}
@media all and (transform-3d),
(-webkit-transform-3d) {
  .carousel-inner.vertical > .item {
    -webkit-transition: -webkit-transform .6s ease-in-out;
    -o-transition: -o-transform .6s ease-in-out;
    transition: transform .6s ease-in-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000;
    perspective: 1000;
  }
  .carousel-inner.vertical > .item.next,
  .carousel-inner.vertical > .item.active.right {
    top: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  .carousel-inner.vertical > .item.prev,
  .carousel-inner.vertical > .item.active.left {
    top: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  .carousel-inner.vertical > .item.next.left,
  .carousel-inner.vertical > .item.prev.right,
  .carousel-inner.vertical > .item.active {
    top: 0;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.carousel-inner.vertical > .active {
  top: 0;
}
.carousel-inner.vertical > .next,
.carousel-inner.vertical > .prev {
  top: 0;
  height: 100%;
  width: auto;
}
.carousel-inner.vertical > .next {
  left: 0;
  top: 100%;
}
.carousel-inner.vertical > .prev {
  left: 0;
  top: -100%
}
.carousel-inner.vertical > .next.left,
.carousel-inner.vertical > .prev.right {
  top: 0;
}
.carousel-inner.vertical > .active.left {
  left: 0;
  top: -100%;
}
.carousel-inner.vertical > .active.right {
  left: 0;
  top: 100%;
}

/* Separator */

.separator {
	height: 8px;
	border-top: 4px solid black;
	border-bottom: 1px solid rgb(232, 166, 166);
}

.home_branch {
	margin-top: 150px;
	margin-bottom: -150px;
}

/*	Circle services widget	*/

/**
 * Position icons into circle (SO)
 * http://stackoverflow.com/q/12813573/1397351
 */
.circle-container {
	position: relative;
	width: 24em;
	height: 24em;
	padding: 2.8em; /*= 2em * 1.4 (2em = half the width of an img, 1.4 = sqrt(2))*/
	border: 1px solid #b3b3b3;
	border-radius: 50%;
	margin: 1.75em auto 0;
}
.circle-container > a {
	display: block;
	overflow: visible;
	position: absolute;
	top: 50%; left: 50%;
	width: 4em; height: 4em;
	margin: -2em; /* 2em = 4em/2 */ /* half the width */
	font-family: 'Ubuntu Condensed';
	color: #4d4d4d;
	text-transform: uppercase;
}
.circle-container > a:hover {
	color: black;
}
.circle-container > a .popover {
	text-transform: none;
	box-shadow: none;
	border-radius: 0;
	border: none;
}
.circle-container > a span .hidden_content {
	display: none!important;
    background: white;
    padding: 10px;
    text-transform: none;
    font-size: 1em;
    font-weight: 300;
    width: 300px;
}
.circle-container > a span:hover .hidden_content {
	display: block!important;
	font-size: 14px!important;
	font-weight: 300!important;
	font-family: 'Ubuntu';
	position: relative;
	z-index: 100;
}
.circle-container > a span {
	display: block;
	position: absolute;
	font-size: 1.3em;
	width: 300px;
}
.circle-container > a.center {
	width: 293px;
	height: 293px;
	border-radius: 150px;
	overflow: hidden;
	margin-left: -146px;
	margin-top: -146px;
}
.circle-container img { display: block; width: 100%; }
.deg0 { transform: translate(12em); } /* 12em = half the width of the wrapper */
.deg45 { transform: rotate(45deg) translate(12em) rotate(-45deg); }
	.deg45 span { margin-left: 40px; margin-top: 20px; }
.deg135 { transform: rotate(135deg) translate(12em) rotate(-135deg); }
	.deg135 span { margin-left: -80px; margin-top: 20px; }
.deg180 { transform: translate(-12em); }
	.deg180 span { margin-left: -150px; margin-top: 10px; }
.deg225 { transform: rotate(225deg) translate(12em) rotate(-225deg); }
.deg315 { transform: rotate(315deg) translate(12em) rotate(-315deg); }
	.deg315 span { margin-left: 50px; margin-top: 5px; }

/* this is just for showing the angle on hover */
.circle-container > a:not(.center):before {
	position: absolute;
	width: 4em;
	color: white;
	opacity: 0;
	/*background: rgba(0,0,0,.5);*/
	font: 1.25em/3.45 Courier, monospace;
	letter-spacing: 2px;
	text-decoration: none;
	text-indent: -2em;
	text-shadow: 0 0 .1em deeppink;
	transition: .7s; /* only works in Firefox */
	/*content: attr(class)'°';*/
}
.circle-container > a:hover:before { opacity: 1; }

/* this is for showing the circle on which the images are placed */
.circle-container:after {
	position: absolute;
	top: 2.8em; left: 2.8em;
	width: 24em; height: 24em;
	/*border: dashed 1px deeppink;*/
	border-radius: 50%;
	opacity: .3;
	pointer-events: none;
	content: '';
}
.circle-container:hover:after { opacity: 1; }
.circle-container > a:not(.center):after {
	position: absolute;
	top: 50%; left: 50%;
	width: 4px; height: 4px;
	border-radius: 50%;
	box-shadow: 0 0 1px 1px #b3b3b3;
    margin: -2px;
    background: white;
    opacity: 0.5;
    content: '';
    padding: 1px;
}
.circle-container:hover > a:after { opacity: 1; }
.circle-container > a:hover:after {
	opacity: 1;
	box-shadow: 0 0 1px 1px #4d4d4d;
}


/* ==========================================================================
   Bootstrap overwrites
   ========================================================================== */

/* PAGINATION */

.pagination>li>a, .pagination>li>span {
	background: none;
	border: none;
	color: #4d4d4d;
	padding: 4px 7px;
}

.pagination>li>a:active, .pagination>li>a:hover, .pagination>li>a:focus {
	color: #ed1e79;
	background: none;
}

.pagination>.active>a, .pagination>.active>span, .pagination>.active>a:hover, .pagination>.active>span:hover, .pagination>.active>a:focus, .pagination>.active>span:focus {
	background: none;
	color: #ed1e79;
}

.pagination>.disabled>span, .pagination>.disabled>span:hover, .pagination>.disabled>span:focus, .pagination>.disabled>a, .pagination>.disabled>a:hover, .pagination>.disabled>a:focus {
	background: none;
	color: #C9C9C9;
}


/* NAVBAR */

@media screen and (min-width: 1200px)  {
	.navbar-nav>li+li:before {
	    /*padding: 0 5px;*/
	    color: #ed1e79;
	    content: "/\00a0";
	}

	.language-toggle>li+li:before {
	    /*padding: 0 5px;*/
	    color: #b3b3b3;
	    content: "/\00a0";
	}
}

.navbar-nav {
	margin-top: 30px;
	margin-bottom: 20px
}

.navbar-brand span {
	font-family: 'Abril Fatface';
	color: #ed1e79;
	font-weight: normal;
}

.navbar-nav > li > a {
	display: inline-block;
	font-size: 1.2em;
	color: #ed1e79;
	text-transform: lowercase;
	font-weight: 300;
	padding: 10px 10px;
}

.nav>li.active>a, .nav>li>a:hover, .nav>li>a:focus {
	background: none;
	color: black;
}

.navbar-toggle {
	background: #ed1e79;
	color: white;
}

.navbar-toggle .icon-bar {
	background: white;
}

.language-toggle li a {
	text-transform: uppercase;
	font-size: 0.9em;
}

.language-toggle li a {
	color: #b3b3b3;
	padding: 15px 5px;
}

.btn-link.btn-purple {
	color: #ed1e79;
}

.dropdown-menu {
	border: none;
	border-radius: 0;
}

.dropdown-menu>.active>a, .dropdown-menu>.active>a:hover, .dropdown-menu>.active>a:focus {
	background: #ed1e79;
}



.bkg-1 {
	background-image: url('../img/flower_bkg.png');
	background-position: left bottom;
	background-repeat: no-repeat;
}

.bkg-1-alt {
	background-image: url('../img/flower_bkg.png');
	background-position: right bottom;
	background-repeat: no-repeat;
}

.bkg-2 {
	background-image: url('../img/bkg_2.png');
	background-position: left top;
	background-repeat: no-repeat;

	padding-bottom: 200px;
	margin-bottom: -200px;
}

.bkg-circle-big-right {
	background-image: url('../img/bkg-circle-big.png');
	background-position: right 150px;
	background-repeat: no-repeat;
}

.bkg-circle-big-left {
	background-image: url('../img/bkg-circle-big.png');
	background-position: left bottom;
	background-repeat: no-repeat;
}

h1 a,
h1 a:active,
h1 a:hover,
h1 a:visited,
h1 a:link {
	color: black;
}