@charset "utf-8";
/*BASIC*/
@font-face {
	font-family: "Didot";
	src: url('../font/Didot.otf');
	src: url('../font/Didot.otf') format('embedded-opentype'),
		 url('../font/Didot\ Bold.otf') format('embedded-opentype'),
		 url('../font/Didot\ Italic.otf') format('embedded-opentype'),
		 url('../font/Didot\ Title.otf') format('embedded-opentype');
}

@font-face {
	font-family: "Raleway";
	src: url('../font/Raleway-Regular.ttf');
	src: url('../font/Raleway-Regular.ttf') format('truetype'),
		 url('../font/Raleway-Bold.ttf') format('truetype'),
		 url('../font/Raleway-Italic.ttf') format('truetype'),
		 url('../font/Raleway-Light.ttf') format('truetype'),;
}

@font-face {
	font-family: "Avenir";
	src: url('../font/AvenirLTStd-Roman.otf');
}

body {
	font-family: "Raleway";
	font-size: 16px;
	color: rgb(106, 104, 104);
	line-height: 2;
	background: transparent;
}

.font-ss {
	font-family: "Avenir"!important;
}

.container {
	width: calc(100vw - 160px);
	max-width: calc(100vw - 160px);
	margin: 0 80px;
}

@media (max-width: 767px) { 
	.container {
		width: 100%;
		max-width: 100%;
		margin: 0;
	}
}

input {
	border-style: solid;
	color: #808080;
}

input:required, textarea:required, select:required {
    box-shadow: none!important;
}

input:invalid, textarea:invalid, select:invalid, select:focus {
    box-shadow: none!important;
}

textarea:focus, input:focus, input[type]:focus, .uneditable-input:focus {   
	outline: 0 none;
}

option[disabled] {
	display: none!important;
}

button:focus {
	box-shadow: none!important;
}

.form-control {
	border: 1px solid#808080!important;
	box-shadow: none!important;
	transition: .15s ease-in-out, ease-in-out;
}

.form-control.is-invalid, .form-select.is-invalid {
	border-color: #dc3545!important;
}

.form-check-input {
	box-shadow: none!important;
}

.form-check-input:not(:checked) {
	border: 1px solid rgba(0,0,0,.25);
}

.loader-form {
	position: relative;
}

.loader-form::after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(255, 255, 255, 0.5);
	background-image: url('../images/loader.gif');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 60px;
}

.invalid-feedback, .valid-feedback {
	font-size: 1em!important;
}

a {
	text-decoration: none;
	color: #808080;
}

a:hover {
	color: #808080;
}

.p1 {
	padding: 0 1%;
}

.line {
	width: 1px;
	height: 70px;
	background-color: rgb(186, 186, 186);
}

.title-text {
	font-family: "Didot";
	font-size: 18px;
	font-style: italic;
	color: rgb(104, 104, 104);
	letter-spacing: 0.1em;
	margin-bottom: 4em;
}

.desc {
	text-align: center;
	font-size: 20px;
	line-height: 1.6;
}


/*HEADER*/
header {
	height: 79px;
	line-height: 79px;
	background-color: #fff;
}

.logo {
	font-weight: bold;
}

#main-navbar {
	height: 50px;
	padding: 0;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}

.navbar-nav {
	position: absolute;
	right: 0;
	background-color: #fff;
}

.navbar-nav li {
	padding: 0 0 0 25px;
	font-size: 14px;
}

.navbar-nav li:last-child {
	padding-right: 0;
}

#navbarNav {
	 transition: height 0.5s ease;
}

@media (max-width: 767px) { 
	header {
		box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
	}

	.navbar-nav {
		top: 0;
		width: 100vw;
		border-top: 1px solid #808080;
	}

	.navbar-nav li {
		padding: 0 0 0 45px;
	}
}

.navbar-toggler span {
	display: block;
	background-color: #808080;
	height: 3px;
	width: 25px;
	margin-top: 5px;
	margin-bottom: 5px;
	position: relative;
	left: 0;
	opacity: 1;
	transition: all 0.4s ease-out;
	transform-origin: center left;
}
  
  
  
.navbar-toggler span:nth-child(1) {
	transform: translate(0%, 0%) rotate(0deg);
}
  
.navbar-toggler span:nth-child(2) {
	opacity: 1;
}
  
.navbar-toggler span:nth-child(3) {
	transform: translate(0%, 0%) rotate(0deg);
}
  
.navbar-toggler span:nth-child(1) {
	margin-top: 0.3em;
}
  
.navbar-toggler:not(.collapsed) span:nth-child(1) {
	transform: translate(15%, -33%) rotate(45deg);
}
  
.navbar-toggler:not(.collapsed) span:nth-child(2) {
	opacity: 0;
}
  
.navbar-toggler:not(.collapsed) span:nth-child(3) {
	transform: translate(15%, 33%) rotate(-45deg);
}


/*BANNER*/
#banner {
	height: calc(100vh - 79px);
}

#banner {
	text-align: center;
}

#banner .container {
	overflow: hidden;
}

#banner .img-banner {
	width: auto;
	height: 100vh;
}

#banner .desc-banner {
	width: 100%;
}

#banner h1 {
	font-size: 2.9vw;
	letter-spacing: 0.5em;
}

#banner p {
	font-size: 1.05vw;
	letter-spacing: 0.65em;
	margin-bottom: 0;
}

@media (max-width: 767px) { 
	#banner h1 {
		font-size: 6vw;
	}
	
	#banner p {
		font-size: 2vw;
	}
}

.overlay {
	background-color: rgba(0, 0, 0, 0.3);
}


/*Portfolio*/
.grid-box {
	aspect-ratio: 1/1;
	cursor: pointer;
}

.grid-box .card {
	border: none;
	border-radius: 0;
}

.grid-box .overlay {
	background-color: rgba(0, 0, 0, 0.5);
	display: none;
}

.grid-box:hover .overlay {
	display: block;
}

.grid-box .overlay .title-text {
	color: #fff;
}


/*Contact*/
#contact {
	margin-bottom: 8em;
}

#subscribe {
	margin-bottom: 3.5em;
}

#subscribe input {
	width: 440px;
	border-radius: 0;
}

@media (max-width: 767px) { 
	#subscribe input {
		width: 100%;
		display: block;
	}
}

#subscribe button {
	width: auto;
	border-radius: 0;
	border: none;
}

#subscribe button:focus, #subscribe button:active {
	border: none;
}


/*Footer*/
footer {
	height: 79px;
	background-color: #fff;
}

footer .site-cr {
	font-family: 'Didot';
	font-style: italic;
}