@charset "utf-8";

/* ==========================================================================
   reset
========================================================================== */
html {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
*, *:before, *:after {
    -webkit-box-sizing: inherit;
    -moz-box-sizing: inherit;
    box-sizing: inherit;
}
html, body {height:100%;}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{margin:0; padding:0; border:0; vertical-align:baseline;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block;}
body {overflow-x:hidden;}
ul {list-style:none;}
ol {margin:0 0 30px; padding:0 0 0 20px;}
ol li {margin:0 0 5px;}
blockquote, q {quotes:none;}
blockquote:before, 
blockquote:after,
q:before, 
q:after {content:''; content:none;}
table {border-collapse:collapse; border-spacing:0;}
img, a img, embed, iframe {border:none; vertical-align:bottom;}
a, 
button,
a img {
	outline:none; 
	text-decoration:none;
	-webkit-transition:.2s ease-in-out;
	-moz-transition:.2s ease-in-out;
	-o-transition:.2s ease-in-out; 
	transition:.2s ease-in-out;
}
form, fieldset {border:none;}
hr {display:none;}
h1, h2, h3, h4, h5, h6 {
	font-size: 1em; 
	font-weight:normal;
}

/* ==========================================================================
   styles
   ========================================================================== */
body {
   	font: 18px/1.2 'futura-pt', sans-serif;
   	color: #4d4d4d;
}

a,
a *,
button {
    -webkit-transition:.2s ease-in-out;
	-moz-transition:.2s ease-in-out;
	-o-transition:.2s ease-in-out; 
	transition:.2s ease-in-out;
}

a {
	color: #4d4d4d;
}
a:hover {
    color: #111;
}

img {
    max-width: 100%;
}

::-webkit-input-placeholder {
   color: #bbb;
}

:-moz-placeholder {
   color: #bbb;
}

::-moz-placeholder {
   color: #bbb;
}

:-ms-input-placeholder {  
   color: #bbb; 
}

form .field {
	margin: 0 0 18px;
}

label {
	display: block;
	margin: 0 0 8px;
	font-weight: 700;
}
input, 
select,
textarea {
	width: 100%;
	padding: 9px 10px 7px;
	border: 1px solid #4d4d4d;
	color:#818181;
    font: 18px/1.5 'futura-pt', sans-serif;
    text-align: left;
    border-radius: 1px;
}
textarea {
	height: 155px;
}
form .field.checkbox {
	position: relative;
	margin: 40px 0;
	padding: 0 0 0 30px;
	text-align: left; 
}
.checkbox input {
	position: absolute;
	top: 3px;
	left: 0;
	width: auto;
}
.checkbox label {
	display: inline;
	vertical-align: top;
	text-transform: none;
	font-weight: 300;
}
.checkbox label a {
	border-bottom: 1px solid #4d4d4d;
}
.checkbox label a:hover {
	border-color: #fff;
}

input.error, 
select.error,
textarea.error {
    border-color: #f70303;
}
button, 
a.button {
	width: 100%;
	padding: 15px 30px;
	border: 0;
	background: #4d4d4d;
	color: #fff;
	font: 700 18px 'futura-pt', Georgia, serif;
	text-transform: uppercase;
	cursor: pointer;
}
button:hover, 
a.button:hover {
	background: #111;
}
button.secondary, 
a.button.secondary {
	background: #fff;
	color: #000;
}
button.secondary:hover, 
a.button.secondary:hover {
	border-color: #343434;
	background: #eee;
}

table {
	width: 100%;
	border-top: 1px solid #111;
	margin: 0 0 25px; 
}
th {
	padding: 10px 0;
	border: 1px solid #111;
	color: #000;
	font: italic 14px 'futura-pt', Georgia, serif;
	text-align: center;
}
td {
	width: 10%;
	padding: 10px 0;
	text-align: center;
	vertical-align: middle;
	border-bottom: 1px solid #111;
}

div.message {
	padding: 0 0 30px;
	text-transform: none;
}
div.message p {
	padding: 0;
}
div.message.ok {
	color: #44c422;
}
div.message.error {
	color: #f70303;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    *zoom: 1;
}
.hidden {
	display: none;
}
.structural {
	position: absolute;
	left: -9999px;
	top: -9999px;
	width: 0;
	height: 0;
	overflow: hidden;
}
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; 
    height: 0; 
    overflow: hidden;
}
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.center {
	text-align: center;
}
.vcenter {
	display: -webkit-flex;
  	-webkit-flex-direction: column;
  	-webkit-justify-content: center;
	display: flex;
  	flex-direction: column;
  	justify-content: center;
}
img.separator,
.container {
	display: block;
	position: relative;
	width: 94%;
	max-width: 1200px;
	margin: 0 auto;
}

/* header ============================================================= */
header {
    position: absolute;
    z-index: 100;
    width: 100%;
    color: #fff;
    font-size: 16px;
    border-top:50px solid #000;
}
header ul {
	float: left;
}
header ul li {
	display: inline-block;
	margin: 0 0 0 27px;
}
header a {
	display: inline-block;
	color: #fff;
	border-bottom: 4px solid transparent;
}
header a:hover,
footer a:hover {
	color: #fff;
	opacity: .7;
}

header .logo {
	float: left;
	width: 220px;
	padding: 30px 25px 20px;
	background: #000;
}

header .selected a {
	border-color: #fff;
}
header nav ul.main {
	float: right;
	margin: 40px 0 0;
	font-weight: 700;
	text-transform: uppercase;
}
header nav ul.main li {
	position: relative;
}
header nav ul.main li span.ico {
	display: none;
	position: absolute;
	top: 30px;
	left: 0;
	width: 100%;
	text-align: center;
}
header nav ul.main li.selected span.ico {
	display: block;
}
header nav ul.main li img {
	max-width: 45px;
}

.weddings header .selected a,
.blog header .selected a,
.newsletter header .selected a, 
.legal header .selected a,
.error404 header .selected a {
	border-color: #000;
}
.weddings header nav ul.main a,
.blog header nav ul.main a,
.newsletter header nav ul.main a,
.legal header nav ul.main a,
.error404 header nav ul.main a {
	color: #000;
}

header .other {
	position: absolute;
	top: -35px;
	right: 0;
}
header .other a {
	border-width: 1px;
}
header ul.lang li {
	margin: 0;
	font-size: 12px;
	font-weight: 300;
	text-transform: uppercase;
}
header ul.lang li:before {
	content: ' / '
}
header ul.lang li:first-child:before {
	content: ''
}
header ul.lang li.selected {
	font-weight: 700;
}
header ul.lang a {
	border: 0; 
}
header ul.social {
	margin: 3px 25px 0;
	font-size: 14px;
}
header ul.social li {
	margin: 0 5px;
}
header ul.secondary li {
	margin: 0 0 0 25px;
}
header .nav-toggle {
	display: none;
	position: absolute;
	cursor: pointer;
	top: 50%;
	right: 3%;
	width: 24px;
	height: 24px;
	background: url(img/ico-menu.png) no-repeat 0 center;
	background-size: 100% auto;
	margin: -12px 0 0;
}
header .nav-toggle.opened {
	background: url(img/ico-close.png) no-repeat 0 center;
	background-size: 100% auto;
}


/* footer ============================================================= */
footer {
	overflow: hidden;
	padding: 40px 0;
	background: #222;
	color: #fff;
	font-size: 16px;
}
footer a {
	color: #fff;
}
footer nav {
	overflow: hidden;
	padding: 0 0 35px;
	font-weight: 300;
}
footer .main {
	float: left;
	text-transform: uppercase;
}
footer .main li {
	float: left;
	margin: 0 40px 0 0;
}
footer li.selected a {
	border-bottom: 1px solid #fff;
}
footer .secondary li {
	margin: 0 0 7px;
}
footer .col {
	float: left;
	margin: 0 20px 0 40px;
}
footer .col.contact {
	float: right;
	margin: 0;
}
footer .icons {
	padding: 5px 0 0;
	font-size: 12px;
}
footer .icons a{
	margin: 0 8px 0 0;
	font-size: 12px;
}
footer .bottom {
	clear: both;
	padding: 40px 0 0;
	border-top: 1px solid #767676;
	color:#d3d3d3;
	font-size: 13px;
	text-transform: uppercase;
	text-align: right;
}
footer .bottom a {
	color:#d3d3d3;
}
footer .bottom a:hover {
	color:#d3d3d3;
}
footer .copyright {
	float: left;
}

/* generic blocks ============================================================= */
.content {
	padding: 50px 0 60px;
}
.home .content {
	padding-bottom:0;
}
p.link {
	font-size: 16px;
	font-weight: 700;
	text-transform: none;
}
p.url {
	font-weight: 700;
	text-transform: none;
}

h2,
p.h2 {
	padding: 0 0 20px;
	font-size: 22px;
	font-weight: 300;
	line-height: 1.1;
	text-transform: uppercase;
}

h1,
p.h1,
h2.h1 {
	font-size: 58px;
	font-weight: 300;
	line-height: .95;
	text-transform: uppercase;
}

.lower,
h1.lower,
p.h1.lower {
	text-transform: none;
}

.img-header {
	position: relative;
}
.img-header img {
	width: 100%;
}
.img-header .masc,
.img-header .txt {
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 100%;
	height: 100%;
	color: #fff;
}
.img-header .masc {
	background: url(img/masc-diagonal.png) no-repeat 0 bottom;
	background-size: 100% auto;
}
.img-header h1,
.img-header .h1 {
	margin-top: -6%;
}

.introduction {
	margin: 0 0 50px;
	background: #fff;
	font-size: 22px;
	font-weight: 300;
	line-height: 1.2;
	text-transform: uppercase;
}
.introduction .container {
	position: relative;
	padding: 150px 0 0;
}
.introduction .container .txt {
	position: relative;
	padding: 0 0 0 28%;
}
.introduction .container .txt img.ico {
	position: absolute;
	top: 0;
	left: 0;
}

.introduction h1,
.introduction .h1 {
	position: absolute;
	top: 0;
	left: 0;
}
.introduction p {
	padding: 0 0 25px; 
}

.centered-heading {
	padding: 0 0 20px;
	text-align: center;
}
.centered-heading p {
	padding: 0 5% 20px;
	font-size: 19px;
}

.gallery {
	position: relative;
}
.gallery .txt {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	font-size: 40px;
	font-weight: 300;
	text-transform: uppercase;
	line-height: 1.1
}
.gallery .txt p {
	margin-top: -30px;
	padding-right: 40%;
}
.gallery .masc {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(img/masc-diagonal.png) no-repeat 0 bottom;
	background-size: 100% auto;
}
.gallery .top {
	background: url(img/masc-diagonal-top.png) no-repeat 0 0;
	background-size: 100% auto;
}
.gallery .photos {
	margin: 0 0 30px;
}
.gallery .photos li {
	position: relative;
	top: 0;
	left: 0;
	overflow: hidden;
}
.gallery .photos li img {
	width: 100%;
	min-width: 400px;
}
.gallery-footer {
	padding: 0 3%;
	font-size: 40px;
	font-weight: 300;
	text-align: center;
}
.gallery-footer p {
	padding: 0 0 40px;
}
.gallery-footer p.btn {
	padding: 0 0 50px;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: 700;
}
.gallery-footer p.btn a {
	display: inline-block;
	padding: 15px 20px;
	border: 1px solid #a4a4a4;
}
.gallery-footer p.btn a:hover {
	border-color: #555;
}

.thumb-gallery {
	margin: 0 0 30px;
}
.thumb-gallery .photos {
	margin: 0 0 30px;
}
.thumb-gallery .photos.contained {
	margin: 0 auto 10px;
	max-width: 1200px;
}
.thumb-gallery .photos.contained .slick-prev {
    left: -4.5%;
}
.thumb-gallery .photos.contained .slick-next {
    right: -4.5%;
}
.thumb-gallery .photos li {
	position: relative;
	top: 0;
	left: 0;	
}
.thumb-gallery .photos li img {
	width: 100%;	
}
.thumb-gallery .photos li p {
	position: absolute;
	top: 30px;
	left: 30px;
	color: #fff;
	font-size: 22px;
	text-transform: uppercase;
}
.thumb-gallery .nav ul{
	overflow: hidden;
	margin: 0 -5px;
}
.thumb-gallery .nav li{
	float: left;
	width: 16.6%;
	margin: 0 0 10px;
	padding: 0 5px;
}
.thumb-gallery .nav img{
	width: 100%;
	cursor: pointer;
}

/* home ============================================================= */
.home .introduction {
	margin-bottom: 40px;
}
.home .introduction .container .txt {
	padding-left: 17%;
}
.home .introduction .container .txt img.ico {
	max-width: 14%;
}
.home .introduction.home-group .container {
	padding-top: 100px;
}
.home .introduction.home-group .container .txt {
	padding-left: 33%;
}
.home .introduction.home-group .container .txt a {
	display: inline-block;
	margin: 0 3% 10px 0;
}
.home .introduction.home-group .container .txt a:last-child {
	margin-right: 0;
}
.home .introduction.home-group .container .txt img {
	height: 40px;
}

.home .introduction.home-spaces .container .txt {
	padding-left: 33%;
	padding-bottom: 30px;
}
.home .introduction.home-spaces .container .txt img.ico {
	top: auto;
	bottom: 0;
	max-width: 30%;
}

.home-kitchen .gallery .slick-prev {
	left: -50px;
}
.home-kitchen .gallery .slick-next {
	right: -50px;
}

.home-spaces ul.spaces {
	overflow: hidden;
	margin: 0 -12px;
	font-size: 15px;
}
.home-spaces ul.spaces li {
	position: relative;
	float: left;
	width: 16.5%;
	margin: 0 0 60px;
	padding: 70px 12px 0;
}
.home-spaces ul.spaces li div {
	position: absolute;
	top: 0;
	left: 12px;
}
.home-spaces ul.spaces h3 {
	margin: 0 10px 5px 0;
	font-weight: 700;
	text-transform: uppercase;
}
.home-spaces ul.spaces img {
	width: 100%;
	margin: 15px 0 0;
	border-radius: 50%;
}
.home-spaces ul.spaces a:hover {
	color: #777; 
}
.home-spaces ul.spaces a:hover img {
	opacity: .8;
}
.home .home-services .introduction {
	margin: 0;
}
.home .home-services .introduction .h1 {
	padding: 0 0 40px;
	position: static;
}
.home .home-services .introduction .container {
	padding-top: 0;
	padding-bottom: 50px;
	background: url(img/bg-services.jpg) no-repeat right 0;
	background-size: 95% auto;
}
.home .home-services .introduction .container .txt {
	padding-left: 33%;
}
.home-services ul.services {
	padding: 30px 0 0; 
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
}
.home-services ul.services li {
	width: 33%;
	padding: 0 20px 20px 0;
}
.home-services ul.services img {
	margin: 0 0 20px;
	max-height: 60px;
}
.home-services ul.services h3 {
	max-width: 190px;
	margin: 0 0 20px;
	text-transform: uppercase;
}
.home-services ul.services p {
	max-width: 190px;
}

/* spaces ============================================================= */
.spaces .introduction .container .txt {
	padding-left: 45%;
	padding-right: 3%;
}
.spaces .introduction .container .txt img.ico {
	max-width: 25%;
	margin-left: 15%;
}
.spaces .space-list {
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.spaces .space-list li {
	width: 25%;
	padding: 0 20px 60px 0;
	font-size: 20px;
}
.spaces .space-list li .slider{
	margin: 0 0 15px;
}
.spaces .space-list h3{
	font-weight: 700;
	text-transform: uppercase;
}

.space {
	overflow: hidden;
}
.space .introduction .container {
	padding-top: 20px;
}
.space .introduction h1 {
	position: static;
}
.space .text {
	float: left;
	width: 52%;
	margin: 0 0 30px;
	font-size: 22px;
	font-weight: 300;
	line-height: 1.4;
	text-transform: uppercase;
}
.space .text p {
	margin: 0 0 30px;
}
.space .text p.web {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	text-transform: none;
}

.space .info {
	float: right;
	width: 33%;
	margin: 0 0 30px;
	font-size: 16px;
}
.space .info h2 {
	padding: 0 0 20px;
	font-size: 16px;
	font-weight: 700;
}
.space .info p {
	padding: 0 0 30px;
}
.space .info div {
	position: relative;
}
.space .info a.gmaps {
	position: absolute;
	bottom: 30px;
	left: -100px;
	padding: 55px 0 0;
	background: url(img/ico-map.png) no-repeat right 0;
	background-size: 45px auto;
}

/* services ============================================================= */
.services .content {
	padding-bottom: 0;
}
.services .introduction {
	margin: 0; 
}
.services .introduction.procedures {
	margin: 0 0 70px; 
}
.services .introduction .container {
	padding: 120px 0 0;
}
.services .introduction .container .txt {
	padding: 0 0 0 33%;
}
.services .introduction.procedures .container .txt {
	padding-top: 50px;
}
.services .introduction img {
	max-width: 340px;
	margin: 0 0 15px;
}
.services .planning .introduction {
	margin: 30px 0 0;
}
.services .planning .introduction .container {
	padding: 0;
}
.services ul.services {
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
}
.services ul.services li {
	width: 33%;
	padding: 0 20px 20px 0;
	line-height: 1.35;
}
.services ul.services img {
	margin-bottom: 20px;
	max-height: 60px;
}
.services ul.services h3 {
	margin: 0 0 20px;
	text-transform: uppercase;
}
.services ul.services a {
	text-decoration: underline;
	word-break: break-all;
}
.services ul.services a:hover {
	text-decoration: none;
}
.services .docs {
	overflow: hidden;
}
.services ul.services .docs a {
	min-height: 36px;
	float: left;
	margin: 0 10px 10px 0;
	padding: 0 10px 0 34px;
	border-right: 1px solid #4d4d4d;
	font-weight: bold;
	background: url(img/ico-pdf.png) no-repeat 0 center;
	background-size: 28px auto;
	line-height: 1.2;
	text-decoration: none;
}
.services ul.services .docs a:hover {
	opacity: .7;
	color: #4d4d4d;
}
.services ul.services .docs a:last-child {
	border: 0; 
}
.services .gallery .txt p {
	margin: 0;
	padding: 10% 0 0 33%;
	color: #666;
}

.services .menu-options {
	background: url(img/bg-menus.jpg) no-repeat top center;
	background-size: 100% auto;
}
.services .menu-options .introduction {
	background: none;
	padding: 0;
}
.services .menu-options .introduction .container {
	padding: 150px 0 0;
}
.services ul.menus {
	padding: 30px 0 50px; 
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
}
.services ul.menus h3 {
	margin: 0 0 5px;
	font-size: 72px;
	font-weight: 300;
	text-transform: uppercase;
}
.services ul.menus > li {
	width: 50%;
	padding: 0 3% 50px 0;
	line-height: 1.35;
}
.services ul.menus p:first-child {
	padding: 0;
}
.services ul.menus p {
	padding: 20px 0 0;
}
.services ul.menus ul {
	padding: 0 0 10px;
}

/* weddings ============================================================= */
.wedding-nav ul {
	overflow: hidden;
	font-size: 15px;
	text-align: center;
}
.wedding-nav ul li {
	display: inline-block;
	vertical-align: top;
	width: 33%;
	margin: 0 0 30px;
	text-align: center;
	-webkit-transition:.2s ease-in-out;
	-moz-transition:.2s ease-in-out;
	-o-transition:.2s ease-in-out; 
	transition:.2s ease-in-out;
}
.wedding-nav ul li:first-child {
	margin-left: 0;
}

.wedding-nav ul li.current,
.wedding-nav ul li:hover {
	opacity: .8;
}
.wedding-nav .img {
	position: relative;
	margin: 10px 12%;
	padding: 1px;
}
.wedding-nav .img .masc {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(img/masc-wedding.png) no-repeat;
	background-size: 100% 100%;
}
.wedding-nav strong {
	text-transform: uppercase;
}
.wedding-nav p.web a {
	display: block;
	padding: 0 0 26px;
	background: url(img/ico-photo.png) no-repeat center bottom;
	background-size: auto 18px;
}

.wedding {
	display: none;
	overflow: hidden;
}
.wedding.current {
	display: block;
}
.wedding .introduction {
	margin-bottom: 20px;
}
.wedding .introduction .container {
	overflow: hidden;
	padding: 0;
}
.wedding .introduction .title {
	width: 28%;
	float:left;
}
.wedding .introduction .h1 {
	position: static; 
}
.wedding .introduction h3:before {
	content: " ";
	display: block;
	width: 11px;
	height: 2px;
	margin: 0 0 20px;
	background: #434343;
}
.wedding .introduction .txt {
	padding-top: 150px;
}
.wedding .thumb-gallery .photos li img {
	width: auto;
	max-height: 900px;
	margin: 0 auto;
}

/* blog ============================================================= */
.blog .introduction .container {
	padding: 0;
}
.blog .introduction h1,
.blog .introduction .h1 {
	position: static;
}
.blog .categories {
	display: none;
}
.post-preview {
	position: relative;
	overflow: hidden;
	padding: 40px 0;
	border-bottom: 1px solid #c5c5c5;
}
.post-preview:first-child {
	border-top: 1px solid #c5c5c5;
}
.post-preview .txt {
	float: left;
	width: 31%;
}
.post-preview h2 {
	padding: 0 0 30px;
	font-size: 24px;
	font-weight: 700;
	text-transform: none;
}
.post-preview img {
	width: 65%;
	float: right;
}
.post-preview .scerpt {
	margin:0 15% 0 0; 
}
.post-preview ul.social {
	position: absolute;
	bottom: 40px;
	right: 67%; 
}
.post-preview ul.social li {
	display: inline-block;
	padding: 0 3px;
}
.pagination {
	padding: 40px 0;
	text-align: center;
}
.pagination li {
	display: inline-block;
	padding: 0 3px;
}
.pagination li.active {
	font-weight: 700;
}

.blog-detail figure {
	margin: 0 0 30px;
}
.blog-detail .metadata {
	overflow: hidden;
	padding: 10px 0;
	border-top: 1px solid #c5c5c5;
	border-bottom: 1px solid #c5c5c5;
	text-align: right;
}
.blog-detail .metadata .date {
	float: left;
}
.blog-detail h1 {
	margin: 50px 0;
	font-size: 30px;
	font-weight: 700;
	text-transform: none;
}
.blog-detail .txt {
	margin: 0 0 50px;
}
.blog-detail .txt p,
.blog-detail .txt ul {
	margin: 0 0 30px;
}
.buttons {
	clear: both;
	min-height: 55px;
	position: relative;
	padding: 15px 0;
	border-top: 1px solid #c5c5c5;
	border-bottom: 1px solid #c5c5c5;
	font-size: 16px;
	text-align: center;
}
.blog-detail .buttons .social a {
	color: #808080;
}
.blog-detail .buttons .social li {
	display: inline-block;
	margin: 0 5px;
	font-size: 22px;
}
.arrow-nav .prev {
	position: absolute;
	top: 17px;
	left: 0;
}
.arrow-nav .next {
	position: absolute;
	top: 17px;
	right: 0;
}
.comments h2 {
	margin: 0 0 10px;
	padding:15px 0;
	border-top: 1px solid #b2b2b2;
	border-bottom: 1px solid #b2b2b2;
	font-size: 26px;
}
.comments .no-comments {
	margin: 30px 0;
}
.comments ul {
	margin: 0 0 30px;
	border-bottom: 5px solid #b2b2b2;
}
.comments ul li {
	padding: 30px 0;
	border-bottom: 1px solid #b2b2b2;
	font-size: 16px;
}
.comments ul li div {
	margin: 0 0 7px;
	padding: 0 0 7px;
	border-bottom: 1px solid #c3c3c3;
}
.comments ul li:last-child {
	border:0;
}
.comments ul li div strong {
	margin-right: 10px;
}
.comments h3 {
	padding: 15px 0 50px;
	font-size: 50px;
	font-weight: 300;
	text-transform: uppercase;
}
.comments .frm {
	overflow: hidden;
	margin: 0 0 30px;
}
.comments .field.left {
	float: left;
	width: 49%;
}
.comments .field.checkbox{
	margin-top: 15px;
}
.comments .field.right,
.comments button {
	float: right;
	width: 49%;
}


/* contact ============================================================= */
.contact .introduction {
	margin-bottom: 30px;
}
.contact .introduction .container {
	padding: 0;
}
.contact .introduction h1 {
	position: static;
}
.contact-info {
	overflow: hidden;
	padding: 0 0 20px;
}
.contact-info div {
	overflow: hidden;
	float: left;
}
.contact-info .tel-email {
	float: right;
}
.contact-info p.label {
	text-transform: uppercase;
	font-size: 22px;
	font-weight: 300;
}
.contact-info p.h1 {
	padding: 0 0 30px;
	font-size: 53px;
	font-weight: 300;
}
.contact a.gmaps {
	float: left;
	margin: 20px 0 0;
	padding: 55px 0 0;
	background: url(img/ico-map.png) no-repeat;
	background-size: 45px auto;
}

/* legal ============================================================= */
.legal .introduction .container .txt,
.cookies .introduction .container .txt,
.introduction.procedures .container .txt {
	padding-left: 26%;
}

/* error404 ============================================================= */
.error404 .introduction {
	margin: 0;
}
.error404 .introduction h1 {
	padding: 0;
	position: static;
	text-align: center;
}
.error404 .introduction .container {
	padding-top: 70px;
}
.error404 .container .txt {
	padding-left: 0;
	text-align: center;
	font-size: 58px;
	font-weight: 700;
	line-height: .95;
	text-transform: uppercase;
}
.error404 .introduction img {
	display: block;
	max-width: 50%;
	margin: 70px auto;
}