@font-face{
	font-family:MyriadPro;
	src:url(../font/MyriadPro-Regular.eot) format('eot');
	src:local('☺'),
	url(../font/MyriadPro-Regular.woff) format('woff'),
	url(../font/MyriadPro-Regular.ttf) format('truetype'),
	url(../font/MyriadPro-Regular.svg) format('svg');
	font-weight:400;
	font-style:normal;
}
@font-face{
	font-family:MyriadPro;
	src:url(../font/MyriadPro-It.eot) format('eot');
	src:local('☺'),
	url(../font/MyriadPro-It.woff) format('woff'),
	url(../font/MyriadPro-It.ttf) format('truetype'),
	url(../font/MyriadPro-It.svg) format('svg');
	font-weight:400;
	font-style:italic;
}
@font-face{
	font-family:MyriadPro;
	src:url(../font/MyriadPro-Bold.eot) format('eot');
	src:local('☺'),
	url(../font/MyriadPro-Bold.woff) format('woff'),
	url(../font/MyriadPro-Bold.ttf) format('truetype'),
	url(../font/MyriadPro-Bold.svg) format('svg');
	font-weight:700;
	font-style:normal;
}

// variables

@red:#ff0000;
@blue:#1880d0;
@yellow:#fff200;

@text:#000;
@link:#ff1a00;
@placeholder:@blue;
@fs:18px;
@ff:MyriadPro, Arial, Helvetica, sans-serif;

// mixins

.br(@r){
	-moz-border-radius:@r;
	-webkit-border-radius:@r;
	-o-border-radius:@r;
	border-radius:@r;
}

.bs(@s){
	-moz-box-shadow:@s;
	-webkit-box-shadow:@s;
	-o-box-shadow:@s;
	box-shadow:@s;
}

.t(@s){
	-moz-transition:@s;
	-webkit-transition:@s;
	-o-transition:@s;
	transition:@s;
}

.lg(@from,@col1,@col2){
	background-color:@col2;
	background-image:-o-linear-gradient(@from,@col1,@col2);
	background-image:-moz-linear-gradient(@from,@col1,@col2);
	background-image:-webkit-linear-gradient(@from,@col1,@col2);
	background-image:linear-gradient(@from,@col1,@col2);
}

.flex{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
}

.usn{
	-webkit-user-select:none;
	-moz-user-select:none;
	-o-user-select:none;
	-ms-user-select:none;
	user-select:none;
}

/* all */

*{
	margin:0;
	padding:0;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	&:after,
	&:before{
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
	}
}

html{
	overflow-x:auto;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}

body{
	font-family:@ff;
	color:@text;
	font-size:@fs;
	-webkit-font-smoothing:subpixel-antialiased;
	overflow:hidden;
	line-height:1.3;
	background:#fff url(../img/bg.jpg) center top no-repeat;
	background-size:cover;
	background-attachment:fixed;
}

a{
	color:@link;
	text-decoration:none;
	&:focus,
	&:active{
		outline:none;
	}
}

b,
strong{
	font-weight:700;
}

small{
	font-size:80%;
}

sub,
sup{
	font-size:75%;
	line-height:0;
	position:relative;
	vertical-align:baseline;
}

sup{
	top:-0.5em;
}

sub{
	bottom:-0.25em;
}

h1,h2,h3,h4,h5,h6{
	font-weight:400;
}

input,
button,
select,
textarea{
	color:inherit;
	font:inherit;
	margin:0;
	&:focus{
		outline:none;
	}
}

input{
	padding-top:0;
	padding-bottom:0;
}

::-moz-placeholder{
	font-family:@ff;
	font-size:@fs;
	color:@placeholder;
}
:-ms-input-placeholder{
	font-family:@ff;
	font-size:@fs;
	color:@placeholder;
}
::-webkit-input-placeholder{
	font-family:@ff;
	font-size:@fs;
	color:@placeholder;
}

table{
	border-collapse:collapse;
	border-spacing:0;
	background-color:transparent;
}

button,
input[type="submit"],
input[type="reset"],
input[type="button"]{
	cursor:pointer;
	-webkit-appearance:button;
}

button[disabled],
input[disabled]{
	cursor:default;
}

img{
	border:0;
	max-width:100%;
}

ul{
	list-style:none;
}

.container{
	position:relative;
	z-index:1;
}

.row,
.clearfix{
	&:after{
		display:table;
		line-height:0;
		content:'';
		clear:both;
	}
}

/* header */

.header{
	border-top:solid 8px @blue;
	background:url(../img/header.jpg) center bottom no-repeat;
	background-size:cover;
	.bs(0 5px 20px rgba(0,0,0,.3));
	position:relative;
	z-index:1111;
}

.header-row{
	.flex;
	padding:20px 0 15px;
	margin:0 -15px;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-around;
	-ms-flex-pack: justify;
	justify-content: space-around;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	text-align:center;
}

.header-col{
	padding-right:15px;
	display:inline-block;
	vertical-align:middle;
	text-align:right;
}
.header-soc{
        padding: 0 15px 7px;
    display: inline-block;
    vertical-align: middle;
    text-align: right;
}
.header-col--contacts{
    display:flex;align-items: center;white-space: nowrap;
    justify-content: center;
}

.logo{
	font-size:24px;
	font-weight:700;
	color:#fff;
	white-space:nowrap;
	span{
		color:#d9193b;
	}
}

.header-col-menu{
	padding-bottom:2px;
}

.nav-top{
	&.fixed{
		padding:7px 0 0;
		background:rgba(255,242,0,.9);
		position:fixed;
		left:0;
		right:0;
		top:0;
		z-index:66666666;
		text-align:center;
		.menu-top{
			display:inline-block;
		}
	}
}

.menu-top{
	font-size:16px;

	li{
		display:inline-block;
		float:left;
		margin:0 10px 5px 0;
		&:last-child{
			margin-right:0;
		}
	}
	a{
		display:block;
		color:inherit;
		text-decoration:underline;
		/*border-bottom: 1px dashed #000080;*/
		&:hover{
			text-decoration:none;
		}
	}
}

.header-tel{
	display:inline-block;
	position:relative;
	padding-left:40px;
	font-size:24px;
	color:inherit;
	white-space:nowrap;
	&:before{
		content:'';
		position:absolute;
		width:22px;
		height:22px;
		left:0;
		top:50%;
		margin-top:-12px;
		background:url(../img/header-tel.png);
	}
}

.main-title-wrapp{
	padding-bottom:10px;
	text-align:center;
}

.main-title-body{
	display:inline-block;
	background:@yellow;
	line-height:1.2;
	padding:24px 0 18px;
	position:relative;
	&:before{
		content:'';
		position:absolute;
		top:0;
		bottom:0;
		left:-50px;
		right:-50px;
		background:@yellow;
		-webkit-transform:skew(20deg);
		-moz-transform:skew(20deg);
		-o-transform:skew(20deg);
		-ms-transform:skew(20deg);
		transform:skew(20deg);
	}
}

.main-title{
	font-size:46px;
	font-weight:700;
	text-transform:uppercase;
	position:relative;
	z-index:1;
	span{
		color:#fff;
		background:@red;
		line-height:1;
		padding:0 7px;
		display:inline-block;
	}
}

.main-img{
	padding-bottom:75px;
	img{
		display:block;
		margin:0 auto;
	}
}

/* work */

.work{
	background:url(../img/work.jpg) left bottom repeat-x;
	position:relative;
	padding-bottom:17px;
	&:before{
		content:'';
		position:absolute;
		top:0;
		left:0;
		right:0;
		height:797px;
		background:url(../img/work.png) center top no-repeat;
	}
}

.work-title-body{
	padding-bottom:60px;
}

.work-title{
	font-size:40px;
}

.work-btn-wrapp{
	text-align:center;
	margin-top:-40px;
}

.work-btn{
	display:block;
	width:450px;
	height:76px;
	font-weight:700;
	color:#fff;
	font-size:32px;
	text-transform:uppercase;
	-webkit-transform:skew(20deg);
	-moz-transform:skew(20deg);
	-o-transform:skew(20deg);
	-ms-transform:skew(20deg);
	transform:skew(20deg);
	background:@blue;
	border:0;
	position:relative;
	margin:auto;
	.t(.2s);
	&:hover{
		background:lighten(@blue,10%);
	}
	&:active{
		&:after{
			height:0;
		}
		-webkit-transform:skew(20deg) translateY(5px);
		-moz-transform:skew(20deg) translateY(5px);
		-o-transform:skew(20deg) translateY(5px);
		-ms-transform:skew(20deg) translateY(5px);
		transform:skew(20deg) translateY(5px);
	}
	span{
		display:block;
		position:relative;
		z-index:1;
		-webkit-transform:skew(-20deg);
		-moz-transform:skew(-20deg);
		-o-transform:skew(-20deg);
		-ms-transform:skew(-20deg);
		transform:skew(-20deg);
	}
	&:after{
		content:'';
		position:absolute;
		width:95%;
		height:5px;
		left:50%;
		top:100%;
		background:#084c80;
		-webkit-transform:skew(20deg) translateX(-50%);
		-moz-transform:skew(20deg) translateX(-50%);
		-o-transform:skew(20deg) translateX(-50%);
		-ms-transform:skew(20deg) translateX(-50%);
		transform:skew(20deg) translateX(-50%);
		.t(.2s);
	}
}

/* seal */

.seal-body{
	padding:80px 0 15px;
}

.section-title-wrapp{
	text-align:center;
	margin-bottom:35px;
}

.section-title-body{
	display:inline-block;
	.br(25px);
	.lg(top, rgba(181,226,0,1), rgba(126,204,48,1));
	padding:15px 35px 5px;
}

.section-title{
	display:inline-block;
	vertical-align:middle;
	position:relative;
	font-size:100px;
	line-height:1.1;
	margin:0 25px 15px 0;
	font-weight:700;
	text-transform:uppercase;
}

.seal-title{
	padding-right:160px;
}

.section-title-icon{
	position:absolute;
	right:0;
	top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-o-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
	background-size:100% 100%;
}

.seal-title-icon{
	width:142px;
	height:200px;
	margin-top:-30px;
	background:url(../img/seal-title-icon.png);
}

.section-title-action{
	display:inline-block;
	vertical-align:middle;
	font-size:32px;
	font-weight:700;
	color:#fff;
	background:@red;
	padding:10px 15px;
	text-align:left;
	margin-bottom:15px;
}

.section-form{
	padding-bottom:60px;
}

.form-blocks{
	text-align:center;
	.form-block,
	.submit-wrapp{
		margin:0 5px 15px;
		display:inline-block;
		vertical-align:middle;
	}
	.form-block{
		width:250px;
	}
	.submit-wrapp{
		width:325px;
	}
}

.alert{
	position:absolute;
	height:20px;
	padding:0 10px;
	background:red;
	color:#fff;
	font-size:12px;
	line-height:20px;
	top:0;
	right:0;
	font-style:normal;
	.br(4px);
	.t(all .3s);
	opacity:0;
	z-index:-2;
	white-space:nowrap;
	&:after{
		content:'';
		position:absolute;
		width:0;
		height:0;
		border-top:solid 8px red;
		border-left:solid 5px transparent;
		border-right:solid 5px transparent;
		bottom:-8px;
		right:20px;
	}
	&.active{
		opacity:1;
		z-index:2;
		top:-19px;
	}
}

.form-block{
	position:relative;
}

.input{
	display:block;
	width:100%;
	height:65px;
	padding:0 20px;
	border:solid 2px #2085d1;
	.br(25px);
	background:transparent;
	text-align:center;
}

.submit{
	width:100%;
	height:65px;
	background:transparent;
	position:relative;
	border:0;
	font-size:32px;
	font-weight:700;
	color:#fff;
	.br(25px);
	.t(.2s);
	&:after{
		content:'';
		position:absolute;
		top:5px;
		left:12px;
		right:12px;
		bottom:-5px;
		.br(25px);
		background:#be1300;
		.t(.2s);
	}
	&:hover{
		.btn-text{
			background:lighten(@link, 10%);
		}
	}
	&:active{
		&:after{
			top:0;
			bottom:0;
			left:5px;
			right:5px;
		}
		-webkit-transform:translateY(5px);
		-moz-transform:translateY(5px);
		-o-transform:translateY(5px);
		-ms-transform:translateY(5px);
		transform:translateY(5px);
	}
}

.btn-text{
	display:table;
	width:100%;
	position:relative;
	height:100%;
	z-index:1;
	background:@link;
	.br(25px);
	.t(.2s);
	span{
		display:table-cell;
		vertical-align:middle;
	}
}

.seal-row{
	margin-bottom:30px;
}

.seal-col{
	padding-bottom:30px;
}

.seal-block{
	text-align:center;
}

.seal-block-title{
	font-size:25px;
	text-transform:uppercase;
	font-weight:700;
	padding-bottom:10px;
	min-height:60px;
	line-height:1;
	span{
		font-size:15px;
		display:inline-block;
		position:relative;
		top:2px;
	}
}

.seal-block-img{
	margin-bottom:20px;
	display:table;
	width:100%;
	table-layout:fixed;
	span{
		display:table-cell;
		vertical-align:bottom;
	}
	img{
		display:block;
		max-width:none;
		position:relative;
		left:50%;
		-webkit-transform:translateX(-50%);
		-moz-transform:translateX(-50%);
		-o-transform:translateX(-50%);
		-ms-transform:translateX(-50%);
		transform:translateX(-50%);
	}
}

.seal-block-img-1{
	span{
		padding-bottom:40px;
	}
}

.seal-block-img-left{
	img{
		right:0;
		left:100%;
		-webkit-transform:translateX(-100%);
		-moz-transform:translateX(-100%);
		-o-transform:translateX(-100%);
		-ms-transform:translateX(-100%);
		transform:translateX(-100%);
	}
}

.seal-block-img-translate{
	img{
		-webkit-transform:translateX(-40%);
		-moz-transform:translateX(-40%);
		-o-transform:translateX(-40%);
		-ms-transform:translateX(-40%);
		transform:translateX(-40%);
	}
}

.order-block{
	text-align:center;
	max-width:100%;
}

.order-button{
	display:block;
	margin:0 auto 15px;
	width:100%;
	max-width:190px;
	height:38px;
	background:transparent;
	position:relative;
	border:0;
	font-weight:700;
	color:#fff;
	.br(15px);
	.t(.2s);
	&:after{
		content:'';
		position:absolute;
		top:3px;
		left:10px;
		right:10px;
		bottom:-3px;
		.br(15px);
		background:#be1300;
		.t(.2s);
	}
	&:hover{
		.btn-text{
			background:lighten(@link, 10%);
		}
	}
	&:active{
		&:after{
			top:0;
			bottom:0;
			left:8px;
			right:8px;
		}
		-webkit-transform:translateY(3px);
		-moz-transform:translateY(3px);
		-o-transform:translateY(3px);
		-ms-transform:translateY(3px);
		transform:translateY(3px);
	}
}

.order-block-desc{
	font-style:italic;
}

.seal-types{
	position:relative;
	&:after{
		content:'';
		position:absolute;
		right:0;
		left:0;
		height:50%;
		top:50%;
		.bs(0 5px 20px rgba(0,0,0,.3));
	}
}

.seal-types-body{
	padding:50px 0 30px;
	background:url(../img/seal-types.jpg) center bottom no-repeat;
	background-size:cover;
	position:relative;
	z-index:1;
}

.seal-types-row{
	text-align:center;
	margin:0 -15px;
}

.seal-types-col{
	display:inline-block;
	vertical-align:bottom;
	padding:0 15px 30px;
	max-width:100%;
}

.seal-types-block{
	text-align:center;
}

.seal-types-block-title{
	font-size:18px;
	text-transform:uppercase;
	font-weight:700;
	margin-bottom:10px;
}

.seal-types-block-price{
	-webkit-transform:skew(20deg);
	-moz-transform:skew(20deg);
	-o-transform:skew(20deg);
	-ms-transform:skew(20deg);
	transform:skew(20deg);
	background:@yellow;
	padding:8px 20px;
	font-size:26px;
	font-weight:700;
	color:@link;
	margin:0 auto 15px;
	white-space:nowrap;
	width:190px;
	&>span{
		display:inline-block;
		-webkit-transform:skew(-20deg);
		-moz-transform:skew(-20deg);
		-o-transform:skew(-20deg);
		-ms-transform:skew(-20deg);
		transform:skew(-20deg);
		span{
			font-weight:400;
		}
	}
}

.seal-types-block-img{
	img{
		display:block;
		margin:auto;
	}
}

/* stamps */

.stamps-title{
	padding-right:320px;
	margin-right:0;
	font-size:96px;
}

.stamps-title-icon{
	width:306px;
	height:171px;
	background:url(../img/stamps-title-icon.png);
}

.stamp-block-translate-right{
	-webkit-transform:translateX(6%);
	-moz-transform:translateX(6%);
	-o-transform:translateX(6%);
	-ms-transform:translateX(6%);
	transform:translateX(6%);
}

.stamp-block-translate-left{
	-webkit-transform:translateX(-6px);
	-moz-transform:translateX(-6px);
	-o-transform:translateX(-6px);
	-ms-transform:translateX(-6px);
	transform:translateX(-6px);
}

.seal-block-img-top{
	span{
		vertical-align:top;
	}
}

.stamp-block-img-1{
	span{
		padding-bottom:15px;
	}
}

/* facsimile */

.facsimile-title{
	font-size:70px;
}

.seal-block-img-row{
	text-align:center;
	margin:0 -15px;
}

.seal-block-img-col{
	display:inline-block;
	vertical-align:middle;
	padding:0 15px 30px;
}

.order-block-row{
	margin:0 -4px;
}

.order-block-col{
	display:inline-block;
	vertical-align:middle;
	padding:0 4px 10px;
	.order-button{
		width:190px;
		margin-bottom:0;
	}
}

/* bookplate */

.bookplate-block-img-row{
	margin:0 -30px;
	.seal-block-img-col{
		padding:0 30px 30px;
	}
}

/* equipment */

.equipment{
	position:relative;
	background:url(../img/equipment.jpg) center top no-repeat;
	background-size:cover;
	// background-attachment:fixed;
}

.page-title{
	-webkit-transform:skew(20deg);
	-moz-transform:skew(20deg);
	-o-transform:skew(20deg);
	-ms-transform:skew(20deg);
	transform:skew(20deg);
	padding:20px 50px 10px;
	background:@yellow;
	font-size:70px;
	text-transform:uppercase;
	font-weight:700;
	span{
		display:block;
		-webkit-transform:skew(-20deg);
		-moz-transform:skew(-20deg);
		-o-transform:skew(-20deg);
		-ms-transform:skew(-20deg);
		transform:skew(-20deg);
	}
}

.page-title{
	position:absolute;
	top:0;
	left:50%;
	z-index:3;
	-webkit-transform:translateX(-50%) skew(20deg);
	-moz-transform:translateX(-50%) skew(20deg);
	-o-transform:translateX(-50%) skew(20deg);
	-ms-transform:translateX(-50%) skew(20deg);
	transform:translateX(-50%) skew(20deg);
}

.equipment-block-wrapp{
	position:relative;
	&:after{
		content:'';
		position:absolute;
		right:0;
		left:0;
		height:20px;
		bottom:0;
		.bs(0 5px 20px rgba(0,0,0,.3));
	}
}

.equipment-block{
	position:relative;
	z-index:1;
	&:before{
		content:'';
		position:absolute;
		bottom:0;
		right:0;
		left:0;
		height:168px;
		background:url(../img/equipment-block.jpg) center bottom no-repeat;
		background-size:cover;
	}
	.container{
		z-index:2;
	}
}

.equipment-block-1{
	padding:20px 0 40px;
	.equipment-row{
		/*text-align:right;*/
		padding-top: 200px;
	}
}
.equipment-block-2{
	padding:35px 0 10px;
}
.equipment-block-3{
	padding:50px 0 10px;
}
.equipment-block-4{
	padding:20px 0 20px;
}

.equipment-row{
	text-align:center;
	margin:0 -20px;
}

.equipment-col{
	display:inline-block;
	vertical-align:bottom;
	max-width:100%;
	padding:0 20px 30px;
}

/* paints */

.paints{
	background:#fff;
	padding-bottom:125px;
}

.page-title-wrapp{
	text-align:center;
}

.paints-title{
	position:static;
	display:inline-block;
	-webkit-transform:translateX(0) skew(20deg);
	-moz-transform:translateX(0) skew(20deg);
	-o-transform:translateX(0) skew(20deg);
	-ms-transform:translateX(0) skew(20deg);
	transform:translateX(0) skew(20deg);
	margin-bottom:50px;
}

.paint-row{
	margin-bottom:20px;
}

/* delivery */

.delivery{
	padding:140px 0 110px;
	.lg(top,#b5e200,#7ecc30);
	position:relative;
}

.delivery-title{
	transform:translate(-50%,50%) skew(20deg);
	bottom:100%;
	top:auto;
}

.delivery-row-wrapp{
	text-align:center;
}

.delivery-row{
	display:inline-block;
	margin:0 -30px;
}

.delivery-col{
	display:inline-block;
	float:left;
	padding:0 30px 30px;
	text-align:left;
}

.delivery-col-icon{
	float:right;
	img{
		display:block;
		margin:auto;
	}
}

.delivery-list{
	max-width:625px;
	font-size:30px;
	text-transform:uppercase;
	font-weight:700;
	margin:auto;
	li{
		padding:5px 30px 5px 70px;
		position:relative;
		border-bottom:solid 1px rgba(255,255,255,.25);
		&:before{
			content:'';
			position:absolute;
			width:19px;
			height:19px;
			left:35px;
			top:15px;
			background:#fff;
			.br(50%);
		}
	}
}

/* questions */

.questions{
	background:#fff;
}

.questions-title-wrapp{
	display:table;
	width:100%;
	/*height:100%;*/
}

.questions-title-cell{
	display:table-cell;
	vertical-align:middle;
	padding:40px 0;
	text-align:center;
}

.questions-title{
	font-weight:700;
	font-size:80px;
	margin-bottom:20px;
	text-transform:uppercase;
}

.questions-title-desc{
	font-size:25px;
	text-transform:uppercase;
	max-width:360px;
	margin:auto;
}

.questions-form-wrapp{
	width:432px;
	height:587px;
	background:url(../img/questions-form-wrapp.png);
	margin:-106px auto 0;
	padding:140px 55px 20px;
}

.questions-form{
	text-align:center;
}

.questions-form-title{
	font-size:25px;
	margin-bottom:30px;
	span{
		text-transform:uppercase;
		font-weight:700;
	}
}

.questions-form-blocks{
	margin:0 auto 20px;
	max-width:285px;
	.form-block{
		margin-bottom:13px;
	}
}

.questions-input{
	border:solid 1px #a6a6a6;
	font-size:15px;
	height:70px;
	.br(30px);
}

.questions-input::-moz-placeholder{
	font-size:15px;
	color:#9f9f9f;
	text-transform:uppercase;
}
.questions-input:-ms-input-placeholder{
	font-size:15px;
	color:#9f9f9f;
	text-transform:uppercase;
}
.questions-input::-webkit-input-placeholder{
	font-size:15px;
	color:#9f9f9f;
	text-transform:uppercase;
}

.questions-submit{
	width:100%;
	height:70px;
	.br(30px);
	text-transform:uppercase;
	font-size:25px;
	font-weight:700;
	text-transform:uppercase;
	border:0;
	.lg(top,#ff1a00,#cd0000);
	color:#fff;
	&:hover{
		.lg(bottom,#ff1a00,#cd0000);
	}
}

.form-privat{
	color:#9f9f9f;
	font-size:15px;
}

/* map */

.map{
	height:400px;
}

/* footer */

.footer{
	padding:40px 0 20px;
	background:#fff;
}

.footer-row{
	.flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	text-align:center;
}

.footer-col{
	padding:0 40px 25px;
}

.footer-address{
	font-size:24px;
	text-align:left;
	p:not(:last-child){
		margin-bottom:5px;
	}
}

.footer-contacts{
	font-size:24px;
	text-align:right;
	p:not(:last-child){
		margin-bottom:5px;
	}
	[href*="mailto"]{
		color:inherit;
		border-bottom:solid 1px transparent;
		.t(.1s);
		font-weight:700;
		&:hover{
			border-bottom-color:@text;
		}
	}
}

/* modal */

.modal{
	display:none;
	color:@text;
	font-family:@ff;
	padding:55px 100px;
	width:750px;
	.br(50px);
	position:relative;
	text-align:center;
}

.modal-close{
	border:0;
	background:transparent;
	position:absolute;
	.usn;
	width:35px;
	height:35px;
	top:50px;
	right:50px;
	&:before,
	&:after{
		content:'';
		position:absolute;
		top:50%;
		margin-top:-1px;
		height:2px;
		left:0;
		right:0;
		background:#b6b6b6;
	}
	&:before{
		-webkit-transform:rotate(-45deg);
		-moz-transform:rotate(-45deg);
		-o-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}
	&:after{
		-webkit-transform:rotate(45deg);
		-moz-transform:rotate(45deg);
		-o-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
		transform:rotate(45deg);
	}
}

.fancybox-overlay{
	background:rgba(18,18,18,.45);
}

.modal-title{
	font-weight:700;
	text-transform:uppercase;;
	font-size:40px;
	margin-bottom:25px;
}

.fancybox-opened .fancybox-skin{
	.bs(none);
	.br(50px);
	color:@text;
	background:#fff;
}

.form-blocks-modal{
	max-width:270px;
	margin:auto;
	.form-block{
		margin-bottom:20px;
	}
}

.submit-wrapp{
	padding-top:5px;
	max-width:325px;
	margin:auto;
}

.form-block-required{
	&:before{
		content:'\002A';
		position:absolute;
		width:24px;
		right:100%;
		top:50%;
		color:@red;
		font-size:36px;
		line-height:15px;
	}
}

.textarea{
	text-align:left;
	padding-top:15px;
	padding-bottom:15px;
	height:185px;
	resize:none;
}

.required-desc{
	font-size:13px;
	margin-bottom:15px;
	position:relative;
	padding-left:22px;
	display:inline-block;
	&:before{
		content:'\002A';
		position:absolute;
		left:0;
		top:50%;
		color:@red;
		margin-top:-2px;
		font-size:36px;
		line-height:15px;
	}
}

.file-title{
	font-size:13px;
	font-weight:700;
	text-transform:uppercase;
	margin-bottom:18px;
}

.form-block-file-wrapp{
	max-width:270px;
	margin:0 auto 10px;
}

.form-block-file{
	padding-left:155px;
	text-align:left;
	cursor:pointer;
	width:100%;
	overflow:hidden;
	-o-text-overflow:ellipsis;
	text-overflow:ellipsis;
	white-space:nowrap;
	.usn;
	display:inline-block;
	line-height:34px;
	font-size:13px;
}

.input-file{
	display:none;
}

.file-btn{
	position:absolute;
	left:0;
	top:50%;
	margin-top:-17px;
	width:135px;
	height:34px;
	.br(15px);
	display:table;
	line-height:1;
	text-align:center;
	border:solid 2px;
	padding:0 15px;
	.lg(top,#fff,#d9d9d7);
	span{
		display:table-cell;
		vertical-align:middle;
	}
}

.send{
	font-size:24px;
}

/* menu-top-toggle */

.menu-top-toggle{
	width:30px;
	height:20px;
	border-bottom:solid 2px @text;
	border-top:solid 2px @text;
	position:relative;
	margin:10px auto 15px;
	cursor:pointer;
	.usn;
	display:none;
	&:before,
	&:after{
		content:'';
		position:absolute;
		height:2px;
		top:50%;
		margin-top:-1px;
		left:0;
		right:0;
		background:@text;
	}
	&.active{
		border-top-color:transparent;
		border-bottom-color:transparent;
		&:before{
			-webkit-transform:rotate(45deg);
			-moz-transform:rotate(45deg);
			-o-transform:rotate(45deg);
			-ms-transform:rotate(45deg);
			transform:rotate(45deg);
		}
		&:after{
			-webkit-transform:rotate(-45deg);
			-moz-transform:rotate(-45deg);
			-o-transform:rotate(-45deg);
			-ms-transform:rotate(-45deg);
			transform:rotate(-45deg);
		}
	}
}

/*  */

.main-title-top{
	white-space:nowrap;
	padding:5px 20px;
	background:rgba(0,0,0,.6);
	color:#fff;
	font-size:50px;
	text-transform:uppercase;
	position:absolute;
	left:50%;
	bottom:0;
	-weebkit-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	-o-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
	transform:translateX(-50%);
}

.main-title-desc{
	background:rgba(0,0,0,.6);
	padding:5px 20px;
	display:inline-block;
	color:#fff;
	font-size:35px;
	text-transform:uppercase;
}

.seal-types-body-title{
	font-size:50px;
	text-align:center;
	margin-bottom:20px;
	font-weight:700;
	text-transform:uppercase;
}

.header-mail{
	color:inherit;
	&:hover{
		color:@link;
	}
}









/* SEO / FAQ / Contacts */

.seo{
	padding:60px 0;
	background:#f7f7f7;
}
.seo-lead{
	font-size:18px;
	line-height:1.6;
	margin:0 0 25px;
}
.seo-card{
	background:#fff;
	border-radius:8px;
	padding:20px;
	box-shadow:0 10px 30px rgba(0,0,0,.08);
	margin-bottom:20px;
	h3{
		margin:0 0 12px;
		font-size:20px;
		font-weight:700;
	}
	ul{
		margin:0;
		padding-left:18px;
		list-style:disc;
		li{ margin:8px 0; }
	}
	ol{
		margin:0;
		padding-left:18px;
		list-style:decimal;
		li{ margin:8px 0; }
	}
}
.seo-hints{
	margin-top:15px;
	background:#fff;
	border-radius:8px;
	padding:18px 20px;
	box-shadow:0 10px 30px rgba(0,0,0,.08);
}
.seo-hints-title{
	font-weight:700;
	margin-bottom:10px;
}
.seo-tags{
	list-style:none;
	padding:0;
	margin:0 0 10px;
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	li{
		padding:6px 10px;
		border:1px solid #e6e6e6;
		border-radius:999px;
		background:#fafafa;
		font-size:14px;
	}
}
.seo-hints-note{
	font-size:14px;
	color:#666;
}

.faq{
	padding:60px 0;
	background:#fff;
}
.faq-list{
	max-width:980px;
	margin:0 auto;
}
.faq-item{
	border:1px solid #e9e9e9;
	border-radius:10px;
	padding:0;
	margin:0 0 12px;
	background:#fafafa;
	overflow:hidden;
}
.faq-item summary{
	cursor:pointer;
	padding:16px 18px;
	font-weight:700;
	list-style:none;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-body{
	padding:0 18px 16px;
	p{ margin:0; line-height:1.6; }
}

.contacts{
	padding:60px 0;
	background:#f7f7f7;
}
.contacts-card{
	background:#fff;
	border-radius:10px;
	padding:20px;
	box-shadow:0 10px 30px rgba(0,0,0,.08);
	margin-bottom:20px;
}
.contacts-actions{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:10px;
}
.contacts-btn{
	display:inline-block;
	padding:10px 14px;
	border-radius:8px;
	background:@link;
	color:#fff;
	text-decoration:none;
	font-weight:700;
	&:hover{ background:darken(@link, 8%); color:#fff; }
}
.contacts-map-placeholder{
	min-height:320px;
	border:1px dashed #d7d7d7;
	border-radius:10px;
	padding:16px;
	background:#fcfcfc;
	line-height:1.6;
}
.contacts-note{
	margin:12px 0 0;
	color:#666;
}

.modal--wide .modal-content{
	padding:15px 25px 25px;
	color:#333;
	font-size:15px;
	line-height:1.6;
}



/* === CUSTOM UPDATES 2026-03-01 === */

.main-title-sub{
	font-size:28px;
	font-weight:700;
	text-transform:uppercase;
	line-height:1.15;
	margin:8px 0 0;
	position:relative;
	z-index:1;
}

/* Buttons: make long text fit better */
.submit{
	font-size:clamp(22px, 2.2vw, 32px);
}
.submit .btn-text span{
	padding:0 10px;
	white-space:nowrap;
}
.order-button{
	max-width:230px;
	font-size:16px;
}
.order-button .btn-text span{
	padding:0 8px;
	white-space:nowrap;
}

/* Footer legal links */
.footer-legal{
	text-align:center;
	font-size:12px;
	line-height:1.4;
	padding:0 15px 25px;
	color:#666;
}
.footer-legal a{
	color:#666;
	text-decoration:underline;
}
.footer-legal a:hover{
	text-decoration:none;
}
.footer-legal-sep{
	display:inline-block;
	margin:0 8px;
	color:#999;
}

/* Service area block */
.service-area{
	padding-top:20px;
	padding-bottom:10px;
}
.service-area-lead{
	font-size:22px;
	line-height:1.45;
	margin:0;
}
.service-area-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:20px;
	margin-top:18px;
}
.service-area-col{
	min-width:0;
}
.service-area-col--left{
	display:flex;
	flex-direction:column;
	gap:20px;
}
.service-area-col h3{
	font-size:18px;
	margin:0 0 8px;
	font-weight:700;
	text-transform:uppercase;
}
.service-area-col p{
	font-size:14px;
	line-height:1.45;
	margin:0;
}
.service-area-metro{
	/* desktop columns are set below */
}
.service-area-note{
	font-size:13px;
	color:#666;
	margin-top:15px;
}

@media (min-width: 992px){
	.service-area-grid{
		grid-template-columns: 1fr 1fr 1fr;
		gap:30px;
	}
	.service-area-col--left{
		grid-column-start: 1;
		grid-column-end: 2;
	}
	.service-area-col--metro{
		grid-column-start: 2;
		grid-column-end: 4;
	}
	.service-area-metro{
		column-count:2;
		column-gap:30px;
	}
}

/* FAQ arrows */
.faq summary{
	position:relative;
	padding-right:45px;
	cursor:pointer;
}
.faq summary::-webkit-details-marker{
	display:none;
}
.faq summary::after{
	content:'';
	position:absolute;
	right:10px;
	top:50%;
	width:12px;
	height:12px;
	margin-top:-6px;
	border-right:2px solid @text;
	border-bottom:2px solid @text;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	.t(all .2s);
}
.faq details[open] summary::after{
	-webkit-transform:rotate(-135deg);
	-ms-transform:rotate(-135deg);
	transform:rotate(-135deg);
	margin-top:-3px;
}
.faq-body{
	padding-left:20px;
}

/* Floating placeholders */
.float-placeholder{
	position:absolute;
	left:50%;
	top:50%;
	-webkit-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
	color:#b5b5b5;
	font-size:18px;
	line-height:1.1;
	pointer-events:none;
	.t(all .2s);
	z-index:1;
	white-space:nowrap;
	max-width:90%;
	overflow:hidden;
	text-overflow:ellipsis;
}
.form-block.is-focused .float-placeholder,
.form-block.has-value .float-placeholder{
	top:12px;
	font-size:12px;
	color:#888;
}

/* File uploader */
.file-uploader{
	margin-bottom:15px;
}
.form-block-file-wrapp--single{
	position:relative;
	padding-right:45px;
	max-width:270px;
	margin:0 auto 10px;
}
.file-add-btn{
	position:absolute;
	right:0;
	top:50%;
	margin-top:-17px;
	width:34px;
	height:34px;
	.br(50%);
	border:solid 2px;
	background:#fff;
	font-size:22px;
	line-height:28px;
	text-align:center;
	cursor:pointer;
	.usn;
}
.file-add-btn:hover{
	opacity:.85;
}
.file-list{
	max-width:270px;
	margin:0 auto;
	font-size:12px;
	line-height:1.3;
	color:#333;
}
.file-item{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:4px 0;
	border-bottom:1px dotted #ddd;
}
.file-name{
	flex:1 1 auto;
	min-width:0;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.file-remove{
	flex:0 0 auto;
	border:none;
	background:transparent;
	cursor:pointer;
	font-size:18px;
	line-height:1;
	padding:0 4px;
	color:@red;
}
.file-error{
	max-width:270px;
	margin:6px auto 0;
	font-size:12px;
	color:@red;
	min-height:16px;
}
.file-hint{
	max-width:270px;
	margin:8px auto 0;
	font-size:11px;
	color:#777;
}

/* Thank you modal */
.send{
	font-size:18px;
	text-align:center;
	line-height:1.35;
}
.send-title{
	font-size:28px;
	font-weight:700;
	margin-bottom:10px;
	text-transform:uppercase;
}
.send-text{
	margin:0;
}
.send-actions{
	margin-top:15px;
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	justify-content:center;
}
.send-btn{
	display:inline-block;
	padding:10px 16px;
	border:solid 2px;
	.br(22px);
	text-decoration:none;
	color:@text;
	font-weight:700;
	text-transform:uppercase;
	font-size:14px;
}
.send-btn:hover{
	text-decoration:none;
	opacity:.85;
}

/* Mobile contact bar */
.mobile-contact-bar{
	position:fixed;
	left:0;
	right:0;
	bottom:0;
	z-index:8000;
	background:#fff;
	border-top:1px solid #ddd;
	display:none;
	padding-bottom:env(safe-area-inset-bottom);
}
.mobile-contact-item{
	flex:1 1 33.33%;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:6px;
	padding:10px 6px;
	font-size:12px;
	color:@text;
	text-decoration:none;
	.usn;
}
.mobile-contact-item:hover{
	text-decoration:none;
	opacity:.85;
}
.mobile-contact-icon{
	width:22px;
	height:22px;
	fill:@text;
	flex:0 0 auto;
}