/* ------------------------------------------------------------ *\
	Reset
\* ------------------------------------------------------------ */

*,
*:before,
*:after { padding: 0; margin: 0; outline: 0; box-sizing: border-box; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, main { display: block; }
html,
body { height: 100%; }
body { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; text-size-adjust: none; }
img, iframe, video, audio, object { max-width: 100%; }
img, iframe { border: 0 none; }
img { height: auto; display: inline-block; vertical-align: middle; }
b,
strong { font-weight: bold; }
address { font-style: normal; }
svg:not(:root) { overflow: hidden; }
a,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="image"],
label[for] { cursor: pointer; }
a[href^="tel"],
button[disabled],
input[disabled],
textarea[disabled],
select[disabled] { cursor: default; }
button::-moz-focus-inner,
input::-moz-focus-inner { padding: 0; border: 0; }
input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
input[type="color"],
textarea,
a[href^="tel"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button { display: none; -webkit-appearance: none; }
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
textarea { overflow: auto; resize: none; -webkit-overflow-scrolling: touch; }
button,
input,
optgroup,
select,
textarea { font-family: inherit; font-size: inherit; color: inherit; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; }
button,
select { text-transform: none; }
table { width: 100%; border-collapse: collapse; border-spacing: 0; }
nav ul,
nav ol { list-style: none outside none; }

body.nav-open,
html.nav-open { overflow: hidden; }

@font-face {
	font-family: 'Gotham';
	src: url('fonts/Gotham-Light.ttf') format('ttf');
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: 'Gotham';
	src: url('fonts/gotham.ttf') format('ttf');
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: 'Gotham';
	src: url('fonts/Gotham-Book.ttf') format('ttf');
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: 'Gotham';
	src: url('fonts/Gotham-Bold.ttf') format('ttf');
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: 'Carpethen';
	src: url('fonts/Carpethen.otf') format('opentype');
	font-weight: normal;
	font-style: normal;
}

@keyframes spin{
	from{
		--angle: 0deg;
	}
	to{
		--angle: 360deg;
	}
}

/* ------------------------------------------------------------ *\
	Base
\* ------------------------------------------------------------ */

body { min-width: 320px; background: #FAFAFA; font-family: 'Gotham', sans-serif; font-weight: 300; font-size: 24px; line-height: 1.3; color: rgba(0, 0, 0, 0.66); } 

@media screen and (max-width: 1600px ) {
	body { font-size: 20px; }
}

@media screen and (max-width: 1024px ) {
	body { font-size: 18px; }
}

@media screen and (max-width: 480px ) { 
	body { font-size: 16px; }
}

a { color: inherit; text-decoration: underline; }
a:hover { text-decoration: none; }

a[href^="tel"] { text-decoration: none; } 

h1 { font-size: 65px; color: rgba(0, 0, 0, 1); }
h2 { font-size: 65px; color: rgba(0, 0, 0, 1); }
h3 { font-size: 45px; color: rgba(0, 0, 0, 1); }
h4 { font-size: 45px; color: rgba(0, 0, 0, 1); }
h5 { font-size: 35px; color: rgba(0, 0, 0, 1); }
h6 { font-size: 35px; color: rgba(0, 0, 0, 1); }

@media screen and (max-width: 1600px ) {
	h1 { font-size: 50px; }
	h2 { font-size: 50px; } 
	h3 { font-size: 40px; }
	h4 { font-size: 40px; }
	h5 { font-size: 30px; }
	h6 { font-size: 30px; }
}

@media screen and (max-width: 1024px ) {
	h1 { font-size: 40px; }
	h2 { font-size: 40px; }
	h3 { font-size: 30px; }
	h4 { font-size: 30px; }
	h5 { font-size: 25px; }
	h6 { font-size: 25px; }
}

@media screen and (max-width: 767px ) {
	h1 { font-size: 30px; }
	h2 { font-size: 30px }
	h3 { font-size: 25px; }
	h4 { font-size: 25px; }
	h5 { font-size: 20px; }
	h6 { font-size: 20px; }
}

h1,
h2,
h3,
h4,
h5,
h6 { margin-bottom: 25px; }

p,
ul:not([class]),
ol,
dl,
table,
blockquote { margin-bottom: 25px; }

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:not([class]):last-child,
ol:last-child,
dl:last-child,
table:last-child,
blockquote:last-child { margin-bottom: 0; }

/* ------------------------------------------------------------ *\
	Fonts
\* ------------------------------------------------------------ */
 
/* cols */

.cols { display: flex; flex-wrap: wrap; margin: 0 -10px -20px; }
.col { width: 100%; padding: 0 10px; margin-bottom: 20px; }
.col_1of2 { width: 50%; }
.col_1of3 { width: 33.33%; }
 
/* ------------------------------------------------------------ *\
	Helpers
\* ------------------------------------------------------------ */

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

.notext { white-space: nowrap; text-indent: 100%; text-shadow: none; overflow: hidden; }
.notext-old { font-size: 0; line-height: 0; text-indent: -4000px; }

[hidden],
.hidden { display: none; }

.alignleft { float: left; margin-right: 20px; }

.alignright { float: right; margin-left: 20px; }

[disabled],
.disabled { cursor: default; }

.text_center { text-align: center; } 

.main {padding-top: 164px; }

@media screen and (max-width: 1600px ) {
	.main {padding-top: 134px; }
}

@media screen and (max-width: 900px ) {
	.main {padding-top: 95px; }
}

/* ------------------------------------------------------------ *\
	Footer
\* ------------------------------------------------------------ */ 

.footer { padding: 100px 0; background: #000; color: #fff; } 
.footer .footer-logo-wrap { margin-bottom: 100px; }

.footer-inner { display: flex; justify-content: space-between; }
.footer-content { width: 55%; display: flex; justify-content: space-between; }
.footer-aside { width: 45%; }
.footer-aside p { max-width: 230px; margin-bottom: 50px; }
.footer-aside p:last-child { margin-bottom: 0; }

.footer-links { list-style: none; margin-top: 120px; font-weight: 500; text-transform: uppercase; font-size: 16px; }
.footer-links li { margin-top: 72px; text-align: center; }
.footer-links li a { display: inline-block; text-decoration: none; position: relative; } 
.footer-links li a:before { content: ''; position: absolute; top: 120%; left: 0; width: calc(100%);   height: 2px; background: #fff; opacity: 0; }
.footer-links li a:hover:before { opacity: 1; } 


.socials { list-style: none; font-size: 44px; }
.socials a { display: inline-block; text-decoration: none; transition: all .3s; }
.socials a:hover { color: #dd0000; } 

.footer .socials { margin-top: 130px; }
.footer .socials li {  margin-top: 40px; }

.footer-bottom { padding: 40px 0; background: #000; color: #fff; text-align: center; border-top: 1px solid #fff; font-size: 16px; text-transform: uppercase; }

@media screen and (max-width: 767px ) { 
	.footer { padding: 75px 0; }
	.footer-inner { display: block; text-align: center; }
	.footer-aside { width: 100%; }
	.footer-aside p { margin: 0 auto 35px; }
	.footer-content { width: 100%; display: block; }
	.footer .socials { display: flex; justify-content: center; margin-top: 70px; }
	.footer .socials li { margin: 0 10px; }
	.footer .footer-logo-wrap { margin-bottom: 34px;}
	.footer .footer-logo-wrap .logo { width: 35px; }
	.footer .footer-logo-wrap .logo svg { width: 100%; height: 100%; }

	.footer-links { margin-top: 0; padding-top: 30px; }
	.footer-links li { margin-top: 30px;}
}


/* ------------------------------------------------------------ *\
	logo
\* ------------------------------------------------------------ */ 

.logo { display: inline-block; text-decoration: none; }
.logo img { width: 100%; max-width: 76px; display: inline-block; }

@media screen and (max-width: 900px ) { 
	.logo img { max-width: 60px; }
}

@media screen and (max-width: 900px ) { 
	.logo img { max-width: 36px; }
}

/* ------------------------------------------------------------ *\
	Header
\* ------------------------------------------------------------ */

.header { padding: 45px 0; box-shadow: 0px 3px 6px #00000029; background: #fff; z-index: 10; }
.header-content { display: flex; align-items: center; justify-content: space-between; }

.header.headroom { position: fixed; top: 0; left: 0; width: 100%; transition: top .60s; z-index: 5; }
.header.headroom--unpinned { top: -100%; } 

 

/* header headroom headroom--not-bottom headroom--pinned headroom--top */

@media screen and (max-width: 1600px ) {
	.header { padding: 30px 0; }
}

/* ------------------------------------------------------------ *\
	navigation
\* ------------------------------------------------------------ */

.navigation { display: flex; align-items: center; color: #000; }

.nav { list-style: none; display: flex; align-items: center; flex-wrap: wrap; margin-right: 75px; }
.nav a {position: relative;  display: inline-block; text-decoration: none; padding: 10px; font-weight: 500; text-transform: uppercase; font-size: 16px; }
.nav a:before { content: ''; position: absolute; top: 100%; left: 10px; width: calc(100% - 20px); margin-top: -5px; height: 2px; background: #000; opacity: 0; }
.nav a:hover:before { opacity: 1; }
.nav > li { margin: 0 25px; }

@media screen and (max-width: 1600px ) {
	.nav { margin-right: 25px; }
}

@media screen and (max-width: 1200px ) {
	.nav > li { margin: 0 10px; }
	.nav { margin-right: 25px; }
}

@media screen and (max-width: 900px ) {
	.header { position: relative; }
	.navigation { display: block; position: absolute; top: 110%; left: 0; width: 100%; background: #fff; z-index: 1; padding: 30px 30px 40px;
		box-shadow: inset 0px 3px 6px #00000029, 0px 3px 6px #00000029;  text-align: center; opacity: 0; visibility: hidden;
		transition: all .3s;
	}
	.navigation.active { top: 100%; opacity: 1; visibility: visible; }
	.nav { display: block; padding: 0 0 30px; margin: 0; } 
	.nav a { padding: 20px 0; width: 250px; border-bottom: 1px solid #E4E4E4; } 
	.nav a:hover:before { display: none; } 
	.nav a:hover { border-color: #000; } 
}

/* ------------------------------------------------------------ *\
	Shell
\* ------------------------------------------------------------ */

.shell { max-width: 1650px; margin: 0 auto; padding: 0 150px; }

@media screen and (max-width: 1024px ) {
	.shell { padding: 0 50px; } 
}

@media screen and (max-width: 480px ) {
	.shell { padding: 0 30px; } 
}

/* ------------------------------------------------------------ *\
	Wrapper
\* ------------------------------------------------------------ */

.wrapper { position: relative; min-height: 100%; overflow: hidden; }
    
/* ------------------------------------------------------------ *\
	Button
\* ------------------------------------------------------------ */

.btn { display: inline-block; text-decoration: none; }  

.btn { font-weight: 500; font-size: 16px; color: #fff; background: #000; border-radius: 5px; padding: 23px 45px; width: 260px; text-align: center; transition: all .3s;   }
.btn:hover { background: #DD0000; }

.btn_white { background: #fff; color: #000; border-color: #fff; }
.btn_white:hover { color: #fff; }

@media screen and (max-width: 1600px ) {
	.btn { padding: 20px; width: 200px; }
}

@media screen and (max-width: 1200px ) {
	.btn { padding: 15px 25px; width: auto; }
}

/* btn-burger */

.btn-burger { z-index: 3; transition: all .3s; display: none; width: 24px; height: 22px; transform: rotate(0deg); cursor: pointer; } 

.btn-burger span { display: block; position: absolute; height: 2px; width: 100%; background: #000; 
	opacity: 1; left: 0; transform: rotate(0deg); transition: .25s ease-in-out; }

.btn-burger span:nth-child(1) { top: 0px; }
.btn-burger span:nth-child(2) { top: 10px; }
.btn-burger span:nth-child(3) { top: 20px; }

.btn-burger.open span:nth-child(1) { top: 10px; transform: rotate(135deg); }
.btn-burger.open span:nth-child(2) { opacity: 0; left: -60px; }
.btn-burger.open span:nth-child(3) { top: 10px; transform: rotate(-135deg); }

@media screen and (max-width: 900px ) {
	.btn-burger { display: inline-block; }
}

/* ------------------------------------------------------------ *\
	Form Elements
\* ------------------------------------------------------------ */

input::-moz-placeholder { color: inherit; opacity: 1; } 
input:-ms-input-placeholder { color: inherit; opacity: 1; }

input::placeholder { color: inherit; opacity: 1; }
textarea::-moz-placeholder { color: inherit; opacity: 1; }
textarea:-ms-input-placeholder { color: inherit; opacity: 1; }
textarea::placeholder { color: inherit; opacity: 1; } 
.select { width: 100%; } 

.wpcf7-form br { display: none; }

.form-row { margin-bottom: 25px; }
.form-row h6 { font-weight: 400; font-size: 20px; margin-bottom: 10px; }
.form-title { font-size: 25px; margin-bottom: 50px; }
.form-section { margin-bottom: 70px; }
.form-section:last-child { margin-bottom: 0; }

.form-section.mobile_image .mobile-image { display: none; }

@media screen and (max-width: 767px ) {
	.form_row_submit { text-align: center; }
	.form_row_submit button { width: 180px; }
	.form_row_gdpr label span { font-size: 14px; }
	.form-title { font-size: 16px; margin-bottom: 25px; }
	.form-row h6 { font-size: 16px; }

	.form-section.mobile_image { position: relative; }
	.form-section.mobile_image .mobile-image { display: block; position: absolute; top: 37%; transform: translateY(-50%); right: -30px; width: 35%; height: 50%;   }
	.form-section.mobile_image .mobile-image .image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: top left; }
}

.form-separator { margin-bottom: 50px; }

.field { width: 100%; height: 65px; font-size: 20px; padding: 0 25px; color: #00000073;
	border: 1px solid rgba(0, 0, 0, 0); background: #fff; box-shadow: 0px 1px 3px #00000029;
}
.field:focus { border-color: #00000073; }
.textarea { width: 100%; height: 65px; font-size: 20px; padding: 25px; color: #00000073;
	border: 1px solid rgba(0, 0, 0, 0); background: #fff; box-shadow: 0px 1px 3px #00000029; min-height: 200px;
}
.textarea:focus { border-color: #00000073; }

@media screen and (max-width: 767px ) {
	.field {  height: 55px; padding: 0 20px; font-size: 16px; }
	.textarea { min-height: 110px; padding: 20px; font-size: 16px; }
}

.list-checkbox > li { margin-bottom: 20px; }
.list-checkbox > li:last-child { margin-bottom: 0; }

.checkbox { position: relative; }
.checkbox input { position: absolute; top: 0; left: -9999px; opacity: 0; visibility: hidden; }
.checkbox input:checked + label strong { background: #000000B3; position: relative; }
.checkbox input:checked + label strong:before { content: '\2713'; color: #fff; font-size: 17px; position: absolute;
	top: 50%; left: 50%; transform: translate(-50%, -50%); margin-top: 1px; }
.checkbox label { position: relative; display: flex; user-select: none; }
.checkbox label strong { width: 20px; height: 20px; margin-top: 2px; display: inline-block; border: 1px solid #000000B3; border-radius: 5px; }
.checkbox label span { width: calc(100% - 20px); padding-left: 10px; }

.checkbox-wpcf7 .wpcf7-list-item { position: relative; display: block; user-select: none; }
.list-checkbox .checkbox-wpcf7 .wpcf7-list-item { margin-bottom: 7px; }
.checkbox-wpcf7 .wpcf7-list-item { margin: 0; }
.checkbox-wpcf7 .wpcf7-list-item input { position: absolute; top: 0; left: -9999px; opacity: 0; visibility: hidden; }
.checkbox-wpcf7 .wpcf7-list-item label .wpcf7-list-item-label { position: relative; padding-left: 30px; display: block; }
.checkbox-wpcf7 .wpcf7-list-item label .wpcf7-list-item-label:before { content: ''; width: 20px; height: 20px; display: inline-block;  position: absolute; top: 4px; left: 0; border: 1px solid #000000B3; border-radius: 5px; }
.checkbox-wpcf7 .wpcf7-list-item label .wpcf7-list-item-label:after { content: '\2713'; color: #fff; font-size: 17px; position: absolute; top: 4px; left: 0; width: 20px; height: 20px; text-align: center; opacity: 0; } 
.checkbox-wpcf7 .wpcf7-list-item label input:checked + .wpcf7-list-item-label::before { background: #000000B3; } 
.checkbox-wpcf7 .wpcf7-list-item label input:checked + .wpcf7-list-item-label::after { opacity: 1;} 

.wpcf7-form-control-wrap { position: relative; display: block; }
.wpcf7-form-control-wrap .wpcf7-not-valid-tip { position: absolute; top: 100%; left: 0; padding: 3px 0; font-size: 12px; }
.wpcf7-form-control-wrap input.wpcf7-not-valid { color: #dc3232; } 

/* ------------------------------------------------------------ *\
	List
\* ------------------------------------------------------------ */

[class^="list-"] { list-style: none outside none; }

/* ------------------------------------------------------------ *\
	Sections
\* ------------------------------------------------------------ */

.section-hero { position: relative; }
.section-hero .section-image { position: absolute; top: 0; right: 0; width: 38%; }
.section-hero .section-image img { width: 100%; }
.section-hero .section-inner { display: flex; flex-wrap: wrap; }
.section-hero .section-content { width: 50%; padding: 180px 0; }
.section-hero .text { margin-bottom: 100px; max-width: 530px; text-align: justify; }

.section-hero .section-title { margin-bottom: 0; }
.section-hero .section-sub-title { font-weight: 300; letter-spacing: 0.050em; }

@media screen and (max-width: 1600px ) {
	.section-hero .text {  max-width: 409px;  }
}

@media screen and (max-width: 1200px ) {
	.section-hero .section-content { padding: 100px 0; }
	.section-hero .text { padding-right: 10px; margin-bottom: 50px; }
	.section-hero .section-title { font-size: 40px; }
	.section-hero .section-sub-title { font-size: 40px; }

}

@media screen and (max-width: 767px ) { 
	.section-hero .section-title { font-size: 30px; }
	.section-hero .section-sub-title { font-size: 30px; }
	.section-hero .section-content { padding: 70px 0; width: 100%; text-align: center; }
	.section-hero .section-image { position: relative; width: calc(100% + 40px); left: -40px; margin-bottom: 60px; overflow: hidden; }
	.section-hero .section-image .image { margin-top: -50%; }
	.section-hero .text { max-width: 100%; padding: 0; text-align: center; }
}

/* about */

.section-about .section-inner { display: flex; flex-wrap: wrap; align-items: center; }
.section-about .section-sidebar { width: 33.33%;  position: relative; background: #E4E4E4; color: #fff; min-height: 700px; }
.section-about .section-sidebar:before { content: ''; position: absolute; top: 0; bottom: 0; right: 100%; width: 300%; background: #E4E4E4; }
.section-about .section-sidebar p { transform: translateY(-50%) rotate(-90deg); margin-left: -220px; transform-origin: center;  width: 500px; font-size: 85px; font-weight: 700; position: absolute; top: 50%; left: 0; }
.section-about .section-content { width: 66.66%; padding: 100px 0; padding-left: 80px; }
.section-about .section-content h4 { font-size: inherit; }

@media screen and (max-width: 767px ) {
	.section-about .section-sidebar { width: 100%; min-height: 50px; }
	.section-about .section-content { width: 100%; padding: 50px 0 0; }
	.section-about .section-sidebar p { transform: translateY(-0%) rotate(-0deg); margin-left: 0px;  width: 100%; font-size: 50px;  position: static; top: 0%; left: 0; text-align: center; padding: 20px 0; }
	.section-about .section-sidebar:before { right: -100%; }
}

@media screen and (max-width: 480px ) { 
	.section-about .section-sidebar p { font-size: 35px; } 
}

/* services */

.section-services { padding: 165px 0 65px; }
.section-services .section-title { text-align: right; font-size: 110px; position: relative; }
.section-services .section-head { padding-bottom: 120px; }
.section-services .section-title span { padding-left: 20px; background: #FAFAFA; position: relative; z-index: 1; display: inline-block; }
.section-services .section-title:before { content: ''; position: absolute; top: 50%; height: 2px; width: 200%; right: 0; background: #000; }
.section-services .list-services-mobile_slider { display: none; }
 

@media screen and (max-width: 1600px ) {
	.section-services .section-title {  font-size: 80px; }
}

@media screen and (max-width: 1024px ) {
	.section-services { padding: 100px 0; }
	.section-services .section-head { padding-bottom: 50px; }
	.section-services .section-title {  font-size: 50px; }
}

@media screen and (max-width: 767px ) {
	.section-services .section-title {  font-size: 40px; }
	.section-services .list-services { display: none; }
	.section-services .list-services-mobile_slider { display: block; }
}

@media screen and (max-width: 480px ) {
	.section-services .section-title {  font-size: 33px; }
}

/* list-services */

.list-services { display: flex; flex-wrap: wrap; margin: 0 -50px; }
.list-services li { width: 33.33%; padding: 0 50px; margin-bottom: 100px; }
.list-services li div { box-shadow: 0px 3px 6px #00000029; background: #fff; padding: 25px; text-align: center; position: relative; padding-bottom: 75%; }
.list-services li div:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid #e4e4e4; transform: rotate(7deg); border-top-color: #000; border-bottom-color: #dd0000; border-left-color: #dd0000; z-index: -1;
	 transition: all .1s linear; }
.list-services li div:hover:before {  transform: rotate(-7deg); }
.list-services li div strong { display: block; margin-bottom: 20px; color: #000; } 
.list-services li article { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 70%; font-size: 20px; } 

@media screen and (max-width: 1430px ) {
	.list-services li article { font-size: 18px; } 
	.list-services li div {  padding-bottom: 90%; }
}

@media screen and (max-width: 1200px ) {
	.list-services li { width: 50%; }
	.list-services li div {  padding-bottom: 90%; }
}

@media screen and (max-width: 767px ) {
	.list-services li { width: 100%; } 
	.list-services li div { padding: 50px 30px; } 
	.list-services li article { position: static; top: 0%; left: 0%; transform: translate(0%,0%); width: 100%; } 
}

/* list-services-mobile_slider */
  
.list-services-mobile_slider { margin: 0 -40px; }
.list-services-mobile_slider .slick-slide { padding: 40px; }
.list-services-mobile_slider .slick-slide li div { box-shadow: 0px 3px 6px #00000029; background: #fff; padding: 60px 25px; text-align: center; position: relative;  }
.list-services-mobile_slider .slick-slide li div:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid #e4e4e4; transform: rotate(7deg); border-top-color: #000; border-bottom-color: #dd0000; border-left-color: #dd0000; z-index: -1;
	 transition: all .1s linear; }
.list-services-mobile_slider .slick-slide li div:hover:before {  transform: rotate(-7deg); }
.list-services-mobile_slider .slick-slide li div strong { display: block; margin-bottom: 20px; } 
.list-services-mobile_slider li article {  font-size: 14px; } 
.list-services-mobile_slider .slick-dots { list-style: none; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
.list-services-mobile_slider .slick-dots li { margin: 0 5px; }
.list-services-mobile_slider .slick-dots li button { border: 1px solid #000; border-radius: 2px; font-size: 0; width: 8px; height: 8px; }
.list-services-mobile_slider .slick-dots .slick-active button { background: #000; }

/* section-portfolio */

.section-portfolio .section-title { position: relative; font-family: 'Carpethen' , sans-serif; font-size: 168px; font-weight: 400; }
.section-portfolio .section-head { margin-bottom: 60px; }
.section-portfolio .section-title span { display: inline-block; background: #FAFAFA; position: relative; z-index: 1; padding-right: 100px; }
.section-portfolio .section-title:before { content: ''; position: absolute; top: 50%; left: 0; width: 200%; height: 14px; margin-top: -7px; background: #D3D3D3; }
.section-portfolio .list-portfolio-mobile { display: none; }

.list-portfolio { flex-wrap: wrap; display: flex; margin: 0 -50px; }
.list-portfolio li { padding: 0 50px; margin-bottom: 100px; width: 33.33%; }
.list-portfolio li > div { padding-bottom: 76%; position: relative; }
.list-portfolio li .image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; }
.list-portfolio li .image a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.list-portfolio li:nth-child(1) .image { margin-left: -157px; width: calc(100% + 157px); }
.list-portfolio li:nth-child(6) .image { margin-right: -157px; width: calc(100% + 157px); }
.list-portfolio li:nth-child(8) > div { padding-bottom: 150%; }

@property --angle{
	syntax: "<angle>";
	initial-value: 0deg;
	inherits: false;
}
  
.list-portfolio li > div ::after,
.list-portfolio li > div ::before{
	content: ''; position: absolute; height: calc(100% + 4px); width: calc(100% + 4px); background-image: conic-gradient(from var(--angle), #fff,  #ff4545); top: -2px; left: -2px; right: -2px; bottom: -2px; z-index: -1; padding: 4px; opacity: 0; 
}

.list-portfolio li > div:hover ::after,
.list-portfolio li > div:hover ::before {animation: 1s spin linear infinite; }

.list-portfolio li > div:hover ::after{ opacity:1; }
.list-portfolio li > div:hover ::before{ opacity: 0.5; }

@media screen and (max-width: 1200px ) {
	.list-portfolio { flex-wrap: wrap; display: flex; margin: 0 -30px; }
	.list-portfolio li { padding: 0 30px; margin-bottom: 60px; width: 33.33%; }
	.list-portfolio li:nth-child(1) .image { margin-left: -100px; width: calc(100% + 100px); }
	.list-portfolio li:nth-child(6) .image { margin-right: -100px; width: calc(100% + 100px); } 
}

@media screen and (max-width: 1024px ) {
	.section-portfolio .section-title { font-size: 90px; }
	.section-portfolio .section-title span { padding-right: 50px; }

	.list-portfolio { flex-wrap: wrap; display: flex; margin: 0 -20px; }
	.list-portfolio li { padding: 0 20px; margin-bottom: 40px; width: 33.33%; }
	.list-portfolio li:nth-child(1) .image { margin-left: -57px; width: calc(100% + 57px); }
	.list-portfolio li:nth-child(6) .image { margin-right: -57px; width: calc(100% + 57px); } 
}

@media screen and (max-width: 767px ) {
	.section-portfolio .section-title { font-size: 60px; }
	.section-portfolio .section-title span { padding-right: 50px; }
	.section-portfolio .list-portfolio-mobile { display: block; }
	.section-portfolio .list-portfolio { display: none; } 
}

/* list-portfolio-mobile */
 
.list-portfolio-mobile  { margin: 0 -50px 0; } 
.list-portfolio-mobile li > div { padding-bottom: 70%; position: relative; }
.list-portfolio-mobile li .image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; }
 
.list-portfolio-mobile .slick-dots { margin-top: 20px; list-style: none; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
.list-portfolio-mobile .slick-dots li { margin: 0 5px; }
.list-portfolio-mobile .slick-dots li button { border: 1px solid #000; border-radius: 2px; font-size: 0; width: 8px; height: 8px; }
.list-portfolio-mobile .slick-dots .slick-active button { background: #000; }

/* section-cta */

.section-cta { padding: 100px 0 200px; text-align: center; position: relative; }
.section-cta .section-bg-img-left { position: absolute; top: 50%; transform: translateY(-50%); left: -100px; }
.section-cta .section-bg-img-right { position: absolute; top: 50%; margin-top: -100px; transform: translateY(-50%); right: -100px; }
.section-cta h5 { font-weight: 300; margin-bottom: 40px; color: rgba(0, 0, 0, .6); }
.section-cta h5 strong { color: #000; }


@media screen and (max-width: 1400px ) {
	.section-cta { padding-bottom: 100px; }
	.section-cta .section-bg-img-left  { left: -170px; }
	.section-cta .section-bg-img-right  { right: -170px; margin-top: -50px; }
	.section-cta .section-bg-img-left svg { height: 300px; }
	.section-cta .section-bg-img-right svg { height: 300px; }
}

@media screen and (max-width: 767px ) { 
	.section-cta .section-bg-img-left  { left: -225px; margin-top: 40px; }
	.section-cta .section-bg-img-right  { right: -225px;  margin-top: 60px; } 
	.section-cta .section-bg-img-left svg { height: 150px; }
	.section-cta .section-bg-img-right svg { height: 150px; }
}

@media screen and (max-width: 480px ) {
	.section-cta { overflow: hidden; }
	.section-cta .section-bg-img-left { left: -250px; margin-top: 40px; }
	.section-cta .section-bg-img-right { right: -250px;  margin-top: 60px; } 
	.section-cta .section-bg-img-left svg { height: 100px; }
	.section-cta .section-bg-img-right svg { height: 100px; }
}

/* section-request */

.section-request { padding: 140px 0; position: relative; overflow: hidden; }
.section-request .section-head { text-align: center; padding-bottom: 50px; }
.section-request .section-title { font-weight: 300; }
.section-request .section-body { position: relative; padding-top: 100px; } 
.section-request .section-aside { width: 67%;  }
.section-request .section-aside:before { content: ''; position: absolute; top: 0; right: 64%; height: 10px; background: #DD0000; width: 100%; } 
.section-request .section-image { position: absolute; top: 0; right: 0; width: 32%; height: 100%; }
.section-request .section-image .image { position: absolute; top: -100px; right: 0; width: 100%; height: calc(100% + 100px); background-size: cover; }
.section-request .list-services { justify-content: center; }
.section-request .list-services li { width: 66.66%; }
.section-request .list-services li div {  padding-bottom: 50%; }
.section-request .section-thanks { margin-bottom: -50px; padding-top: 40px; }
.section-request .section-thanks:before { content: ''; position: absolute; top: 0; right: 64%; height: 10px; background: #DD0000; width: 100%; } 

@media screen and (max-width: 767px ) { 
	.section-request .section-body { padding-top: 50px; }
	.section-request .section-head { padding-bottom: 22px; }
	.section-request { padding: 70px 0 40px; }
	.section-request .section-image { display: none; }
	.section-request .col_1of2 { width: 100%; }
	.section-request .col_1of3 { width: 100%; }
	.section-request .section-aside { width: 100%; }
	.section-request .section-aside:before { right: 50%; }
	.section-request .list-services li { width: 100%; }
	.section-request .list-services li div {  padding: 50px 30px; }
	.section-request .section-thanks { padding-top: 50px; }
}

/* section-simple */

.section { padding: 100px 0; }