:root {
  --black-color: #231f1e;
  --white-color: #FFFFFF;
  --red-color: #8b2623;
  --beige-color: #ebe5df;
  /**/
  --little-text: 0.6rem;
  --regular-text: 1rem;
  --medium-text: 1.75rem;
  --big-text: 2.5rem;
  --extra-text: 3.5rem;
  --footer-text: 0.8rem;
}
html, body {
  padding: 0px;
  margin: 0px;
  color: var(--black-color);
  outline: none;
  font-size: 20px;
  line-height: 1.4;
  font-weight: 400;
  background-color: var(--white-color);
  font-family: "pt-serif";
}
html, body {
  -webkit-font-smoothing: antialiased;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
  -moz-osx-font-smoothing: grayscale;
}
* {
  outline: none !important;
}
a {
  text-decoration: none;
  color: inherit;
  transition: color 0.2s;
}
a:hover {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}
.align-center {
  text-align: center;
}
.align-right {
  text-align: right;
}
.align-justify {
  text-align: justify;
}
._block {
  display: block !important;
}
.nomargin {
  margin: 0 !important;
}
.nopadding {
  padding: 0 !important;
}
.nopaddingtop {
  padding-top: 0 !important;
}
.nopaddingbottom {
  padding-bottom: 0 !important;
}
dl, ol, ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
/*li:last-of-type {
  margin-bottom: 0 !important;
}*/
/**main setting**/
.container-main {
  position: relative;
  overflow: hidden;
  padding: 15px 15px 15px 15px;
}
section {
  position: relative;
  margin-bottom: 10rem;
}
section.section-hero {
  padding: 0;
}
section.section-focus {
  padding-top: 10rem;
  background: linear-gradient(180deg, rgba(35, 35, 35, 1) 0%, rgba(0, 0, 0, 1) 100%)
}
.bottom-bar {
  height: 10rem;
  width: 100%;
  background-image: url("../img/icon/texture.png");
  filter: contrast(0.7);
}
.container {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 10rem;
  /**/
  overflow: hidden;
}
.container:last-of-type {
  margin-bottom: 0;
}
.container.container-mini {
  width: 1400px;
  max-width: 80%;
}
.container.container-full {
  width: 100%;
  max-width: 100%;
}
.wrapper {
  padding: 0;
  overflow: hidden;
}
.container-fluid {
  padding: 0;
}
.row {
  position: relative;
  margin-bottom: 5rem;
}
.row.row-mini {
  margin-bottom: 2.5rem;
}
.row:last-of-type {
  margin-bottom: 0;
}
.el-margin {
  margin-top: 5em;
}
.el-margin-mini {
  margin-top: 2.5em;
}
.col-pad {
  padding: 0 5rem;
}
.col-pad-full {
  padding: 5rem;
}
.col-pad-center {
  padding: 0 10%;
}
.col-pad-top {
  padding-top: 5rem;
}
.col-pad-left {
  padding-left: 5rem;
}
.m-bottom {
  margin-bottom: 5rem;
}
.separator {
  display: block;
  width: 100%;
  margin-top: 5rem;
  height: 1.5rem;
  background-image: url(../img/icon/hexagon.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.separator-section {
  margin-bottom: 10rem;
}
.separator-footer {
  margin: 5rem 0;
}
.red-color {
  color: var(--red-color);
}
.bg-brown {
  background-color: var(--beige-color);
}
.bg-gray {
 background: rgb(255,255,255);
 background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(238,238,238,0.75) 100%);
}
.bg-gray-reverse {
 background: rgb(255,255,255);
 background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(238,238,238,0.75) 100%);
}
/**end main setting**/
/**hackrow*/
.big-gutters {
  margin-right: -5rem !important;
  margin-left: -5rem !important;
}
.big-gutters > .col, .big-gutters > [class*=col-] {
  padding-right: 5rem;
  padding-left: 5rem;
}
/**end hackrow*/
/**image setting**/
.cover {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.cover.cover-top {
  object-position: top;
}
.cover.cover-bottom {
  object-position: bottom right;
}
.cover.cover-right {
  object-position: right;
}
.cover.cover-left {
  object-position: left;
}
.img-free, .img-free img {
  width: 100%;
  max-width: 100%;
}
/*end image setting*/
/*typo*/
h1, h2, h3, h4, h5, h6 {
  padding: 0px;
  margin: 0 0 0 0;
  line-height: 1.2;
  margin-bottom: 3rem;
}
h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-bottom: 0;
}
h1, h2, h3 {
  font-family: "bodoni-urw";
  color: var(--red-color);
  font-size: var(--extra-text);
  letter-spacing: 0.025rem;
  font-weight: 500;
}
h2, h3 {
  font-size: var(--big-text);
}
h3 {
  font-size: var(--medium-text);
}
h4, h5 {
  font-family: "open-sans";
  font-size: var(--little-text);
  font-weight: 400;
  color: var(--red-color);
  letter-spacing: 0.2rem;
  text-transform: uppercase;
  margin-bottom: 1.5rem;
}
h4 span {
  padding: 5px 8px;
  background-color: var(--red-color);
  color: var(--white-color);
}
p {
  font-size: var(--regular-text);
  margin-bottom: 1rem;
  line-height: 1.6;
}
p a {
  font-weight: 7500;
}
p strong {
  font-weight: 700;
}
p:last-child, p:last-of-type {
  margin-bottom: 0;
}
strong, b {
  font-weight: 500;
}
/*p::first-letter {
  color: var(--red-color);
  font-size: 250%;
  float: left;
  padding: 6px 3px;
  margin-right: 6px;
}*/
/*end typo*/
/*img*/
figure {
  position: relative;
  margin-bottom: 2.5rem;
  width: 100%;
  overflow: hidden;
}
/*figure img {
	filter: brightness(1.1);
}*/
figure:last-of-type {
  margin-bottom: 0;
}
figure.img-box {
  height: 800px;
  min-height: 800px;
}
figure.img-box-mini {
  height: 450px;
}
figure.img-big {
  height: 80vh;
  min-height: 750px;
}
figure.img-hero {
  height: 100vh;
  height: 100svh;
  min-height: 800px;
}
.my_video {
  position: absolute;
  right: 50%;
  top: 55%;
  transform: translate(50%, -55%);
  min-width: 110%;
  min-height: 110%;
}
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.8) 100%);
  opacity: 0.6;
  z-index: 2;
}
/*end img*/
/*btn*/
.btn-more {
  position: relative;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: transparent;
  padding: 0;
  margin-top: 2.5rem;
  transition: background 0.3s;
  overflow: hidden;
}
.btn-more span {
  display: block;
  font-family: "open-sans";
  font-size: var(--little-text);
  font-weight: 400;
  color: var(--red-color);
  letter-spacing: 0.2rem;
  text-transform: uppercase;
  transition: color 0.6s;
  min-width: 160px;
  z-index: 2;
}
.btn-more span::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 5rem;
  height: 1px;
  background-color: var(--red-color);
  margin-right: 1rem;
}
.btn-more.btn-white span {
  color: var(--white-color);
}
.btn-more.btn-white span::before {
  background-color: var(--white-color);
}
.btn-more.btn-cta {
  padding: 15px 35px;
  border-radius: 4px;
  background-color: var(--red-color);
}
.btn-more.btn-cta span {
  color: var(--white-color);
  min-width: 0;
}
.btn-more.btn-cta span::before {
  display: none;
}
@media only screen and (min-width: 992px) {}
/*end btn*/
/*home*/
.banner-hero {
  position: absolute;
  padding: 0 3rem;
  width: 100%;
  max-width: 800px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 4;
}
.banner-hero .logo {
  width: 400px;
  max-width: 80%;
  margin: 0 auto;
  margin-bottom: 2.5rem;
}
.banner-hero .logo img {
  width: 100%;
}
.banner-hero h1, .banner-hero h4 {
  color: var(--white-color);
}
.banner-hero-home h1 {
  font-size: var(--medium-text);
}
.section-focus h2, .section-focus h3, .section-focus h4, .section-focus p {
  color: var(--white-color);
}
.hero-ill {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 50%;
  z-index: 3;
  opacity: 0.07;
  background-image: url("../img/icon/hexagon-white.png");
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: contain;
}
.galleryHero {
  height: 100vh;
  height: 100svh;
  min-height: 800px;
}
.logo-terra {
  display: block;
  height: 85px;
}
.logo-terra img {
  height: 100%;
}
.pileum {
  width: 150px;
  max-width: 30%;
  margin: 0 4rem 0 0;
  float: left;
  height: 100%;
}
.pileum img {
  width: 100%;
  filter: brightness(1.2);
}
@media only screen and (min-width: 992px) {
	span.bg-right {
		display: block;
		position: absolute;
		top:auto;
		right:-12%;
		height: 100vh;
		height: 100svh;
		width:50%;
		min-width: 280px;
		z-index: 100;
		opacity: 0.05;
		-webkit-pointer-events: none;
		pointer-events: none;
		-webkit-user-select: none;
		-moz-user-select: none;
		user-select: none;
		background-image: url("../img/logo-right.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: right;
	}
}
/*end home*/
/*page*/
.box-intro {
  padding: 5rem 5%;
  background: linear-gradient(180deg, rgba(35, 35, 35, 1) 0%, rgba(0, 0, 0, 1) 100%)
}
.box-intro h4, .box-intro h2 {
  color: var(--white-color);
}
.box-intro div {
  position: relative;
  padding-top: 1rem;
  padding-left: 5rem;
}
.box-intro div::before {
  content: "";
  width: 20px;
  height: 20px;
  background-image: url(../img/icon/hexagon.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
.box-title h2 {
  margin-bottom: 1.5rem;
}
.box-focus {
  height: 100%;
  min-height: 450px;
  display: flex;
  align-items: center;
  background: linear-gradient(180deg, rgba(35, 35, 35, 1) 0%, rgba(0, 0, 0, 1) 100%)
}
.box-focus h5, .box-focus h2, .box-focus p {
  color: var(--white-color);
}
.box-focus div {
  z-index: 2;
}
.box-focus figure {
  position: absolute;
  top: 0;
  left: 15px;
  width: calc(100% - 30px);
  height: 100%;
  opacity: 0.1;
  filter: brightness(1.5);
  z-index: 1;
}
/*end page*/
/*margin hack*/
.row.remove-margin-list {
  margin-bottom: -5rem !important;
}
.row.remove-margin-list > [class*=col-] {
  margin-bottom: 5rem;
}
/*end margin hack*/
/*swiper*/
.swiper-button-next {
  width: 80px;
  height: 80px;
  right: 0;
  background-color: var(--red-color);
  border-radius: 0;
  top: 0;
  margin-top: 0;
  left: auto;
  transition: background 0.3s;
}
.swiper-button-next:after, .swiper-button-prev:after {
  font-size: 25px;
  color: var(--white-color);
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--red-color);
}
@media only screen and (min-width: 992px) {
  .swiper-button-next:hover {
    background-color: var(--black-color);
  }
}
/*end swiper*/
/*footer*/
footer {
  background-color: var(--white-color);
  text-align: center;
}
.footer-container {
  padding: 10rem 5rem;
  border-top: 1px solid var(--red-color);
}
.logo-footer {
  display: block;
  width: 240px;
  margin: 0 auto;
  margin-bottom: 3rem;
}
.logo-footer img {
  width: 100%;
}
.logo-collectioneurs {
  display: block;
  width: 320px;
  max-width:80%;
  margin: 0 auto;
}
.logo-collectioneurs img {
  width: 100%;
}
.logo-hiphotels {
  display: block;
  width: 200px;
  max-width:50%;
  margin: 0 auto;
}
.logo-hiphotels img {
      width: 100%;
    filter: brightness(1.5);
}
.footer-container h4 {
  color: var(--red-color);
}
.social-footer {
	margin-top: 3rem;
	text-align: center;
}
.social-footer a {
	display: inline-block;
	width:45px;
	height: 45px;
	border-radius:45px;
	margin: 0 5px;
	background-color: var(--red-color);
	background-position: center;
	background-size: 18px;
	background-repeat: no-repeat;
}
.social-footer a.social-fb {
	background-image: url("../img/icon/social-fb.png");
}
.social-footer a.social-in {
	background-image: url("../img/icon/social-in.png");
}
/*end footer*/
/*hack scrollbar*/
/*body::-webkit-scrollbar {
  display: none;
}
body {
  -ms-overflow-style: none;
  scrollbar-width: none;
}*/
/*end hack scrollbar*/
/*preloader*/
.preloader {
  position: fixed;
  top: 0;
  left: 0;
  background-color: var(--white-color);
  width: 100%;
  height: 100%;
  z-index: 999000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 1s, transform 1s;
  pointer-events: none;
}
.is-complete .preloader {
  transition-delay: 0;
  opacity: 0;
}
/*end preloader*/
/*selection*/
::-moz-selection {
  color: var(--red-color);
  background: transparent;
}
::selection {
  color: var(--red-color);
  background: transparent;
}
/*end selection*/
/*iubenda*/
.iubenda-tp-btn[data-tp-float][data-tp-float=bottom-right] {
	display: none !important;
}