﻿@font-face {
    font-family: 'excelsior_lt_stdregular';
    src: url('../../fonts/excelsiorltstd-webfont.eot');
    src: url('../../fonts/excelsiorltstd-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/excelsiorltstd-webfont.woff') format('woff'),
         url('../../fonts/excelsiorltstd-webfont.ttf') format('truetype'),
         url('../../fonts/excelsiorltstd-webfont.svg#excelsior_lt_stdregular') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'excelsior_lt_stdbold';
    src: url('../../fonts/excelsiorltstd-bold-webfont.eot');
    src: url('../../fonts/excelsiorltstd-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/excelsiorltstd-bold-webfont.woff') format('woff'),
         url('../../fonts/excelsiorltstd-bold-webfont.ttf') format('truetype'),
         url('../../fonts/excelsiorltstd-bold-webfont.svg#excelsior_lt_stdbold') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'excelsior_lt_stditalic';
    src: url('../../fonts/excelsiorltstd-italic-webfont.eot');
    src: url('../../fonts/excelsiorltstd-italic-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/excelsiorltstd-italic-webfont.woff') format('woff'),
         url('../../fonts/excelsiorltstd-italic-webfont.ttf') format('truetype'),
         url('../../fonts/excelsiorltstd-italic-webfont.svg#excelsior_lt_stditalic') format('svg');
    font-weight: normal;
    font-style: normal;

}

body,html {
  font-family:'Georgia',sans-serif;
	color:#1d1d1d;
	min-width:1100px;
}

.fc,
dl,
.common-form,
.body,
.form-item {
  zoom:1;
}

.fc:after,
dl:after,
.body:after,
.common-form:after,
.form-item:after {
  content:".";
  display:block;
  height:0;
  clear:both;
  visibility:hidden;
}

.top-wrap {
  overflow:hidden;
}

.center-wrapper {
  width:980px;
  padding:0 60px;
  margin:0 auto;
}

.header {
  background:#fff;
	height:70px;
	width:100%;
	position:fixed;
	left:0;
	top:0;
	z-index:10000;
	box-shadow:0 0 15px 0 rgba(0,0,0,.3);
}

.body {
  padding-top:70px;
	/* padding-bottom:50px; */
}

.header-content {
  position:relative;
}

.header .logo {
  width:62px;
	height:38px;
	position:absolute;
	left:50%;
	margin:17px 0 0 -23px;
}

.projects-nav {
  font-family:'Open Sans';
	font-size:12px;
	line-height:40px;
	color:#443d35;
	letter-spacing:.61em;
}

.projects-nav .prev {
  position:absolute;
	left:0;
	padding: 0 0 0 40px;
	background: url(../../images/projects-arrows.png) 0 0 no-repeat;
	display: block;
	text-decoration: none;
	color: #443d35;
	text-transform: uppercase;
	margin: 17px 0 0 -10px;
}

.projects-nav .prev:hover {
	background-position:0 -80px;
}

.projects-nav .next {
	position:absolute;
	right:0;
  padding: 0 40px 0 0;
	background: url(../../images/projects-arrows.png) right -40px no-repeat;
	display: block;
	text-decoration: none;
	color: #443d35;
	text-transform: uppercase;
	margin: 17px -10px 0 0;
}

.projects-nav .next:hover {
	background-position:right -120px;
}

.block-content {
  position:relative;
}

/* Footer */

.footer {
  background:#faf2e2;
	color:#1e1e1e;
	font-family:'Open Sans';
	line-height:normal;
}

.footer-back-link {
  border-bottom: 1px solid #f1d9af;
	padding: 36px 0 34px 0;
	font-size: 14px;
	color: #a1865f;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: .35em;
	margin: 0 0 109px 0;
}

.footer-back-link a,
.footer-back-link a:visited {
  text-decoration:none;
	color:#a1865f;
}

.footer-back-link a:hover {
  text-decoration:none;
	color:#a1865f;
}

.footer-back-link span {
  border-bottom:1px solid #cdbca0;
}

.footer-order {
  border: 2px solid #eac88c;
	padding: 20px 38px;
	position: relative;
	margin: 0 -40px;
}

.footer-order-ttl {
  padding: 10px 0 12px 0;
	text-align: center;
	text-transform: uppercase;
	margin: -85px 0 0 0;
}

.footer-order-ttl .sup {
  color: #c39c63;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	letter-spacing: .8em;
	padding: 0 0 0 .8em;
}

.footer-order-ttl .ttl {
  font-family: 'excelsior_lt_stdregular',serif;
	font-size: 42px;
	margin: 7px 0 25px 0;
	letter-spacing: .2em;
	padding: 0 0 0 .2em;
}

.footer-order-ttl .ttl span {
  background: #faf2e2;
	padding: 0 60px;
}

/* Forms */

.common-form .form-item {
  margin:0 0 10px 0;
  position:relative;
}

.common-form .form-text {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
  width:100%;
  background:#fff;
  border:1px solid #eddfc5;
  height:45px;
  font-size:15px;
  font-family:'Open Sans',serif;
  color:#1e1e1e;
  padding:0 20px;
  outline:none;
}

.common-form .form-textarea {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
  width:100%;
  background:#fff;
  border:1px solid #eddfc5;
  font-size:15px;
  line-height:21px;
  font-family:'Open Sans',serif;
  color:#1e1e1e;
  padding:11px 20px 16px 20px;
  outline:none;
  resize:none;
}

.common-form .placeholder {
  position:absolute;
  z-index:2;
  left:0;
  top:0;
  line-height:45px;
  padding:0 21px;
  color:#a2a2a2;
	font-size:15px;
}

.common-form .error-wrapper {
  background: url(../../images/error-bg-r.png) left center no-repeat;
  height: 32px;
  line-height: 37px;
  padding: 0 0 0 0;
  position: absolute;
  left: 100%;
  top: 7px;
  white-space: nowrap;
  margin-left: 5px;
  color: #fff;
  font-size: 10px;
  font-style: italic;
  z-index: 20;
}

.common-form .errors-left .error-wrapper {
  background: url(../../images/error-bg.png) right center no-repeat;
  padding: 0;
  right: 100%;
  left: auto;
  margin-right: 5px;
  margin-left: 0;
}

.common-form label.error {
  margin: 0 -3px 0 35px;
  background-color: #ff6f53;
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;
  height: 32px;
  line-height: 33px;
  display: block;
  padding: 0 17px 0 0;
  float: none;
  font-size: 13px;
  width:auto !important;
}

.common-form .errors-left label.error {
  margin: 0px 35px 0 -3px;
  background-color: #ff6f53;
  -webkit-border-radius: 3px 0 0 3px;
  -moz-border-radius: 3px 0 0 3px;
  border-radius: 3px 0 0 3px;
  height: 32px;
  display: block;
  padding: 0 0 0 17px;
  white-space:nowrap;
}

.common-form input.error,
.common-form textarea.error {
  border-color:#ff6f53;
  color:#ff6f53;
}

.button-2 {
  height:54px;
  font-family:'Open Sans',serif;
  font-size:17px;
  line-height:54px;
  background:#ffcf7c;
  -webkit-border-radius:4px;
  -moz-border-radius:4px;
  border-radius:4px;
  border:none;
  border-bottom:2px solid #cbb283;
  padding:0 25px;
  color:#1e1e1e;
  letter-spacing:.2em;
  text-align:center;
	text-transform:uppercase;
	display:inline-block;
	cursor:pointer;
}

.button-2:hover {
  background:#fde0aa;
  border-color:#dfc38f;
}

.button-2:active {
  background:#efd39e;
  border-color:#efd39e;
  -webkit-box-shadow:inset 0 2px 0 0 #d4ba8a;
  -moz-box-shadow:inset 0 2px 0 0 #d4ba8a;
  box-shadow:inset 0 2px 0 0 #d4ba8a;
}

/* Forms END */

.footer-order-l {
  margin:0 20px 0 0;
	width:480px;
	float:left;
}

.footer-order-r {
  float:left;
	width:480px;
}

.footer-order .form-footer {
  text-align:center;
	padding:7px 0 21px 0;
}

.footer-soclinks {
  text-align: center;
	padding: 68px 0 55px 0;
}

.footer-soclinks h3 {
  font-size:16px;
	text-transform:uppercase;
	text-align:center;
	letter-spacing:.8em;
	padding:0 0 27px .8em;
}

.footer-soclinks .socbutton {
  width:70px;
	height:70px;
	margin:0 9px;
	display:inline-block;
}

.vk-button {
	background:url(../../images/button-vk.png) 0 0 no-repeat;
}

.facebook-button {
	background:url(../../images/button-fb.png) 0 0 no-repeat;
}

.twitter-button {
	background:url(../../images/button-twitter.png) 0 0 no-repeat;
}

.footer-soclinks .socbutton:hover {
  background-position:0 -70px;
}

.footer-copy {
  background: #efd39e;
	text-transform: uppercase;
	font-size: 12px;
	text-align: center;
	letter-spacing: .4em;
	padding: 18px 0 14px .4em;
}

.tint {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background:url(../../images/tint.png);
  z-index:9999;
}

.popup {
  display:none;
  z-index:10000;
  position:absolute;
	font-family: 'Open Sans', sans-serif;
	font-size: 15px;
	line-height: 20px;
	color: #1e1e1e;
}

#successPopup1 {
  text-align:center;
}

.order-popup {
  width:636px;
  background:#fff;
  border:2px solid #efd39e;
}

.order-popup .popup-content {
  padding:44px 48px 48px 48px;
}

.popup .close {
  width:20px;
  height:20px;
  background:url(../../images/popup-close.png) 0 0 no-repeat;
  position:absolute;
  right:15px;
  top:15px;
  cursor:pointer;
}

.popup .close:hover {
  background-position:0 -20px;
}

.popup h2 {
  font-family: 'excelsior_lt_stdregular',serif;
  font-size:30px;
  line-height:30px;
  margin:0 0 25px 0;
  color:#1e1e1e;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.2em;
}

.order-form-2 {
  border:none;
  width:auto;
  padding:0;
  margin:0;
}

.order-popup .form-item {
  margin:0 0 15px 0;
}

.order-popup .row {
  margin:0 -12px 0 0;
}

.order-popup .row .form-item {
  margin:0 12px 15px 0;
  float:left;
  width:264px;
}

.common-form .error-wrapper {
  background: url(../../images/error-bg-r.png) left center no-repeat;
  height: 32px;
  line-height: 37px;
  padding: 0 0 0 0;
  position: absolute;
  left: 100%;
  top: 7px;
  white-space: nowrap;
  margin-left: 5px;
  color: #fff;
  font-size: 10px;
  font-style: italic;
  z-index: 20;
}

.common-form .errors-left .error-wrapper {
  background: url(../../images/error-bg.png) right center no-repeat;
  padding: 0;
  right: 100%;
  left: auto;
  margin-right: 5px;
  margin-left: 0;
}

.common-form label.error {
  margin: 0 -3px 0 35px;
  background-color: #ff6f53;
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;
  height: 32px;
  line-height: 33px;
  display: block;
  padding: 0 17px 0 0;
  float: none;
  font-size: 13px;
  width:auto !important;
}

.common-form .errors-left label.error {
  margin: 0px 35px 0 -3px;
  background-color: #ff6f53;
  -webkit-border-radius: 3px 0 0 3px;
  -moz-border-radius: 3px 0 0 3px;
  border-radius: 3px 0 0 3px;
  height: 32px;
  display: block;
  padding: 0 0 0 17px;
  white-space:nowrap;
}

/* Footer END */

.dolce-site-link {
	height:459px;
	background:url(images/site-link-bg.jpg) bottom center no-repeat;
	text-align:center;
	font-family:'EB Garamond',serif;
	text-transform:uppercase;
}

.dolce-site-link a,
.dolce-site-link a:visited {
	text-decoration: none;
	color: #1d1d1d;
	border-bottom: 1px solid #efd39e;
	font-size:30px;
	line-height:30px;
	letter-spacing:.4em;
	padding:0 0 0 .4em;
}

.dolce-site-link .ttl {
  font-size: 14px;
	color: #c9af7c;
	letter-spacing: .6em;
	padding: 203px 0 24px .6em;
}

.dolce-block-1 {
	min-width:1100px;
}

.dolce-header {
  height:321px;
	background:url(images/dolce-header-bg.png) center 0 repeat-x;
}

.dolce-header-content {
  padding:61px 0 0 0;
}

.dolce-logo {
  width:380px;
	height:200px;
	background:url(images/dolce-logo.png) 0 0 no-repeat;
	margin:0 auto;
	opacity:0;
}

.dolce-notebook-wrapper {
  height:551px;
	background:#f7eedd url(images/dolce-text-bg.jpg) center center no-repeat;
	position:relative;
}

.dolce-text-wrapper {
  height:371px;
	position:relative;
}

.dolce-text {
  width:980px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	font-family: 'Georgia', serif;
	font-size:30px;
	line-height:40px;
	text-align:center;
	position:absolute;
	left:50%;
	top:50px;
	margin-left:-490px;
	opacity:0;
}

.dolce-text i {
  font-style:italic;
	color:#ba9b72;
}

.dolce-text .text-1 {
	background:url(images/dolce-text-quotes.png) center 64px no-repeat;
}

.dolce-text .text-2 {
  padding: 43px 0 0 0;
	margin: 42px 0 0 0;
	background: url(images/dolce-text-hr.png) center 0 no-repeat;
	text-transform: uppercase;
	font-size: 17px;
	line-height: 20px;
	color: #ba9b72;
	letter-spacing: .45em;
}

.dolce-rings {
	width:162px;
	height:180px;
	background:url(images/dolce-rings.png) 0 0 no-repeat;
  position:absolute;
	width: 162px;
	height: 180px;
	background: url(images/dolce-rings.png) 0 0 no-repeat;
	position: absolute;
	left: 50%;
	top: 341px;
	margin-left: -564px;
}

.dolce-block-2 {
	height:981px;
	min-width:1100px;
	padding:49px 0 0 0;
	position:relative;
	overflow:hidden;
	z-index:1;
}

.block-2-content {
  height:981px;
}

.dolce-ipad {
  width: 941px;
	height: 461px;
	background: url(images/dolce-ipad.png) 0 0 no-repeat;
	margin: 0 0 0 -396px;
	position: absolute;
	left: 50%;
	z-index:2;
}

.dolce-ipad-screen {
  width:941px;
	height:461px;
	background:url(images/dolce-ipad-screen.png) 0 0 no-repeat;
	opacity:0;
}

.dolce-ipad-2 {
  width: 941px;
	height: 461px;
	background: url(images/dolce-ipad-2.png) 0 0 no-repeat;
	margin: 0 0 0 -89px;
	position: absolute;
	left: 50%;
	margin: 168px 0 0 -544px;
	z-index:1;
}

.dolce-ipad-2-screen {
  width:941px;
	height:461px;
	background:url(images/dolce-ipad-2-screen.png) 0 0 no-repeat;
	opacity:0;
}

.block-2-bg {
  width:100%;
	height:786px;
	background:url(images/block-2-bg.jpg) center 0 no-repeat;
	position:absolute;
	top:300px;
	z-index:1;
}

.block-2-content {
  position:relative;
	z-index:2;
}

.dolce-text-2-wrapper {
  position: absolute;
	left: 50%;
	top: 710px;
	margin-left: -490px;
	width: 980px;
}

.dolce-text-2 {
  font-size:20px;
	line-height:26px;
	text-align:center;
	width:720px;
	margin:0 auto;
	position:relative;
	opacity:0;
}

.dolce-text-2:before {
  content:"";
	width:123px;
	height:1px;
	background:url(images/dolce-text-hr.png) 0 0 no-repeat;
	position:absolute;
	left:50%;
	margin-left:-61px;
	top:-34px;
}

.dolce-text-2:after {
  content:"";
	width:123px;
	height:1px;
	background:url(images/dolce-text-hr.png) 0 0 no-repeat;
	position:absolute;
	left:50%;
	margin-left:-61px;
	bottom:-37px;
}

.dolce-block-3 {
	height:1385px;
	min-width:1100px;
	background:#f7f4ed;
	position:relative;
	z-index:3;
}

.dolce-pages {
  position:relative;
}

.dolce-page {
  position:absolute;
	-webkit-box-shadow:0 5px 40px 0 rgba(0,0,0,.1);
	-moz-box-shadow:0 5px 40px 0 rgba(0,0,0,.1);
	box-shadow:0 5px 40px 0 rgba(0,0,0,.1);
	opacity:0;
}

#dolcePage1 {
  z-index: 3;
	left: -153px;
	top: -102px;
}

#dolcePage2 {
  z-index: 2;
	left: 416px;
	top: 99px;
}

#dolcePage3 {
  z-index: 1;
	left: 73px;
	top: 762px;
}

.dolce-iphone {
  width:463px;
	height:341px;
	background:url(images/dolce-iphone.png) 0 0 no-repeat;
	position:absolute;
	right:2%;
	top:910px;
	z-index:4;
}

.dolce-block-4 {
	min-width:1100px;
	padding:177px 0 0 0;
	position:relative;
}

.block-title {
  text-align:center;
	text-transform:uppercase;
	margin:0 0 25px 0;
	font-family:'EB Garamond';
}

.block-title .sup {
	font-size: 24px;
	line-height: 24px;
	color: #c9af7c;
	letter-spacing: .1em;
	margin:0 0 2px 0;
}

.block-title .ttl {
	font-size: 48px;
	line-height: 48px;
	letter-spacing: .05em;
}

.dolce-text-4 {
  font-size:20px;
	line-height:26px;
	text-align:center;
	width:640px;
	margin:0 auto;
	position:relative;
	opacity:0;
}

.dolce-text-4 p {
  margin:0 0 10px 0;
}

.dolce-services {
  height:198px;
	width:1020px;
	margin:60px -25px 0 -25px;
	padding:0 5px;
	background:url(images/dolce-services-bg.png) center 68px no-repeat;
}

.dolce-services-item {
  float:left;
	width:142px;
	height:198px;
	margin:0 14px;
	opacity:0;
}

.wedding-item {
  border:2px solid #efd39e;
  width:1058px;
  margin:137px -40px 0 -40px;
}

.wedding-title {
  font-size: 24px;
  line-height: 24px;
  padding: 49px 0 0 0;
  background: url(images/ico-doves.png) center 0 no-repeat;
  text-align: center;
  margin: -62px 0 10px 0;
}

.wedding-title h3 {
  text-transform: uppercase;
  font-size: 24px;
  letter-spacing: .04em;
  margin: 0 0 24px 0;
}

.wedding-title h3 span {
  padding:0 25px;
  background:#fff;
}

.wedding-title h2 {
  color: #c9af7c;
  text-transform: uppercase;
  font-size: 21px;
  letter-spacing: .1em;
  margin: -17px 0 21px 0;
}

.wedding-title .hr {
  width:123px;
  height:9px;
  background:url(images/block-hr.png) 0 0 no-repeat;
  margin:0 auto;
}

.wedding-descr {
  font-size:18px;
  line-height:24px;
  font-style:italic;
  position:relative;
  padding:0 135px;
  text-align:center;
  margin:0 0 21px 0;
}

.wedding-descr p {
  position:relative;
}

.wedding-descr p:first-child:before {
  content:"«";
  color:#efd39e;
  font-size:30px;
  font-style:normal;
  position:absolute;
  top: -3px;
  left: -23px;
}

.wedding-descr p:last-child:after {
  content:"»";
  color:#efd39e;
  font-size:30px;
  font-style:normal;
  position:absolute;
  margin:0 0 0 7px;
}

.wedding-gallery {
  padding: 0 39px 35px 39px;
  margin: 0 -10px 0 0;
}

.wedding-gallery img {
  display:block;
  margin:0 4px 4px 0;
  float:left;
	opacity:0;
}

.wedding-gallery .wg-l {
  float:left;
  width:246px;
}

.wedding-gallery .wg-m {
  float:left;
  width:492px;
}

.wedding-gallery .wg-r {
  width:246px;
  float:left;
}

.wedding-descr p {
  margin:0 0 15px 0;
}

.dolce-director {
  height:406px;
	overflow:hidden;
	text-align:center;
}

.mCSB_container {
  -webkit-border-radius:2px;
  -moz-border-radius:2px;
  border-radius:2px;
}

.mCSB_scrollTools {
	position: absolute;
	width: 10px;
	height: auto;
	left: auto;
	top: 0;
	right: 0;
	bottom: 0;
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	position: relative;
	width: 10px;
	height: 100%;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	text-align: center;
	background: #dbc191 !important;
}

.mCSB_scrollTools .mCSB_draggerRail {
	width: 10px;
	height: 100%;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	background: #e9eff0 !important;
	-webkit-box-shadow: inset 0 0 3px 0 rgba(136,161,168,.75);
	-moz-box-shadow: inset 0 0 3px 0 rgba(136,161,168,.75);
	box-shadow: inset 0 0 3px 0 rgba(136,161,168,.75);
}

.dolce-notebook {
  width:1011px;
	height:573px;
	background:url(images/notebook.png) 0 0 no-repeat;
	margin:0 auto 0 auto;
	position:relative;
	top:-50px;
}

.dolce-notebook .notebook-content {
  width: 809px;
	height: 466px;
	position: absolute;
	top: 33px;
	left: 133px;
}

.block-loader {
  height:50px;
	background:url(../../images/ajax-loader.gif) center center no-repeat;
}

.order-form .form-footer input[type=submit],
.order-form .form-footer .form-submit {
  float:right;
}

.file-uploader {
  float:left;
	text-align:left;
	padding:14px 0 0 0;
	font-size:13px;
	line-height:20px;
}

.popup .file-uploader {
  padding:0;
}

.file-uploader-button {
  background: url(../../images/ico-clip.png) 0 3px no-repeat;
	padding: 0 0 0 23px;
	height: 20px;
	cursor: pointer;
	margin:0 0 10px 0;
}

.file-uploader-button span {
  border-bottom:1px solid #565656;
}

.file-uploader-progress {
  margin:0 0 20px 0;
}

.file-uploader-progress-num {
  margin:0 0 6px 0;
	color:#a2a2a2;
}

.file-uploader-progress-num span {
	color:#cd9c48;
}

.file-uploader-progress-bar {
	position:relative;
  height: 7px;
	background: #ededed;
	width: 200px;
	margin: 0 0 0 0;
	border-radius:4px;
	overflow:hidden;
	box-shadow:inset 0 0 3px 0 rgba(0,0,0,.14);
}

.file-uploader-progress-done {
  height: 7px;
	background: url(../../images/progress-done-bg.png) right 0 repeat-x;
}

.file-uploader-list {
  margin:0 0 10px 0;
}

.file-uploader-list .ico-file {
  background-repeat:no-repeat;
	background-position:0 0;
	display: inline-block;
	width: 19px;
	height: 22px;
	margin: 0 6px -5px 0;
}

.file-uploader-list .ico-file-doc {
  background-image:url(../../images/ico-file-doc.png);
}

.file-uploader-list .file-remove {
  display:inline-block;
	width:13px;
	height:12px;
	background:url(../../images/file-uploader-remove.png) 0 0 no-repeat;
	cursor:pointer;
	margin:0 0 -1px 7px;
}

.file-uploader-hint {
  font-size: 11px;
	line-height: 14px;
	color: #a2a2a2;
	margin: -4px 0 15px 23px;
	width: 280px;
}