:root {
  --bg-dark-1: #002133;
  --bg-dark-2: #022538;
  --bg-light-1: #eff6f8;
  --bg-light-2: #E4EFF5;
  --primary: #033043;
  --primary-hover: #053950;
}

body {
  font-family: "Euclid Circular A", sans-serif;
  font-size: 15px;
}

a,
a:hover,
a:focus {
  text-decoration: none;
}

.container.mx-auto {
  padding-left: 15px;
  padding-right: 15px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Euclid Circular A", sans-serif;
}

.btn {
  padding: 8px 23px !important;
}
.btn.btn-rounded {
  border-radius: 30px;
}
.btn svg {
  width: 21px;
  height: auto;
  position: relative;
  top: -1px;
  margin-left: 4px;
}
.btn svg path {
  fill: #fff;
}

.btn-primary {
  background-color: #002E49 !important;
  border-color: #002E49 !important;
  color: #fff !important;
  padding: 7px 30px;
}
.btn-primary:hover, .btn-primary:focus {
  background-color: #003e63 !important;
  border-color: #003e63 !important;
}

.btn-transparent {
  background: transparent !important;
  color: #fff !important;
  border-color: #fff;
}
.btn-transparent:hover, .btn-transparent:focus {
  background-color: #fff !important;
  color: #010101 !important;
}
.btn-transparent:hover svg path, .btn-transparent:focus svg path {
  fill: #010101;
}

.unselectable {
  user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
}

.the-content {
  color: #273656;
}

.bg-dark-gradient {
  background: linear-gradient(180deg, #002133 0%, #001B2A 104.17%);
}

.bg-light-1 {
  background-color: var(--bg-light-1);
}

.bg-light-2 {
  background-color: var(--bg-light-2);
}

.bg-dark-1 {
  background-color: var(--bg-dark-1);
}

.bg-dark-2 {
  background-color: var(--bg-dark-2);
}

.hover-trasition-03 {
  transition: all 0.3s ease;
}

.line-divider {
  display: block;
  height: 2px;
}
.line-divider:not([class*=bg-]) {
  background-color: rgba(39, 54, 86, 0.1803921569);
}
.line-divider:not([class*=mt-], [class*=my-]) {
  margin-top: 40px;
}
.line-divider:not([class*=mb-], [class*=my-]) {
  margin-bottom: 40px;
}
.line-divider.h1 {
  height: 1px;
}

.text-small {
  font-size: 0.88em;
  color: #273656;
}

/* ----- Forms ------ */
.form-control,
.form-select {
  color: #4A4A4A;
  padding: 8px 25px;
}
.form-control:focus, .form-control:active,
.form-select:focus,
.form-select:active {
  outline: none;
  box-shadow: none;
}
.form-control::placeholder,
.form-select::placeholder {
  color: rgba(74, 74, 74, 0.36);
}
.form-control.style-simple,
.form-select.style-simple {
  color: #273656;
  padding: 13px 0px;
  border: 0;
  border-bottom: 1px solid rgba(39, 54, 86, 0.14);
  border-radius: 0;
  transition: border-color 0.3s ease;
}
.form-control.style-simple::placeholder,
.form-select.style-simple::placeholder {
  color: #273656;
  font-weight: 400;
}
.form-control.style-simple:focus,
.form-select.style-simple:focus {
  border-color: var(--bg-dark-2);
}
.form-control .btn,
.form-select .btn {
  background-color: var(--bg-dark-1);
  border-color: var(--bg-dark-1);
}

.form-area .form-row {
  margin-bottom: 26px;
}
.form-area .form-check-input:checked {
  background-color: #273656;
  border-color: #273656;
}

.section-head .section-title {
  letter-spacing: 2px;
  color: #273656;
  font-size: 2.1em;
}
.section-head .section-title.f-size-2 {
  font-size: 2.3em !important;
}
.section-head .section-title.f-size-small {
  font-size: 1.8em !important;
}
.section-head .result {
  color: #6E6C6C;
}
.section-head .detail-subtitle {
  color: #273656;
  font-size: 1.2em;
}
.section-head .detail-subtitle.f-size-2 {
  font-size: 1.1em;
}
.section-head {
  /* ---- Single Property ------ */
}
.page-luxury-property .section-head .section-title {
  font-size: 2.5em;
}

.swiper-pagination.pagination-circle {
  bottom: 15px;
}
.swiper-pagination.pagination-circle .swiper-pagination-bullet {
  background: transparent;
  position: relative;
  border: 2px solid transparent !important;
  padding: 9px;
  opacity: 1;
}
.swiper-pagination.pagination-circle .swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: 2px solid #fff !important;
}
.swiper-pagination.pagination-circle .swiper-pagination-bullet::before {
  content: "";
  display: block;
  height: 6px;
  width: 6px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - 3px);
  left: calc(50% - 3px);
}

#offcanvasMenu {
  background-color: #002133;
  color: #fff;
}
#offcanvasMenu a {
  color: #fff;
}
#offcanvasMenu .offcanvas-body {
  flex-direction: column;
  flex-grow: 1;
}
#offcanvasMenu .btn-close {
  width: 22px;
  height: auto;
}
#offcanvasMenu .btn-close svg {
  width: 100%;
  height: auto;
}
#offcanvasMenu .btn-close svg path {
  fill: #fff;
}
#offcanvasMenu .logo-area {
  margin-bottom: 60px;
}
#offcanvasMenu .main-menu li {
  font-weight: 300;
}
#offcanvasMenu .main-menu li a {
  display: block;
  margin: 60px 0px;
  text-transform: uppercase;
}

header:not(.header-mb) {
  background: linear-gradient(180deg, #002133 0%, #001f2f 104.17%);
}
header nav {
  padding: 10px 0px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.33);
}
header nav .menu-toggle {
  width: 37px;
  padding: 15px 0px;
}
header nav .navbar-brand img {
  height: 100px;
}
header nav .nav-options-toggle svg {
  width: 22px;
  height: auto;
}
header nav .nav-options-toggle svg path {
  fill: #fff;
}

.logged-in header.sticky-top, .logged-in header.fixed-top {
  top: 32px !important;
}
.logged-in .main-banner .caption-area {
  height: calc(100dvh - 32px);
}

.main-banner .main-image {
  pointer-events: none;
  transition: all 1.5s ease-out;
}
.main-banner .main-image.zoom-in {
  transform: scale(1.05);
}
.main-banner .caption-area {
  height: 100dvh;
}
.main-banner .caption-area h1 {
  font-size: 2.25em;
  letter-spacing: 3px;
}
.main-banner .caption-area p {
  font-size: 1.2em;
}
.main-banner .caption-area:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  background: rgba(0, 0, 0, 0.7294117647);
}
.main-banner .floating-area {
  left: 0;
  right: 0;
  bottom: 35px;
}
.main-banner .floating-area .line {
  height: 17dvh;
  width: 2px;
  margin-bottom: 16px;
}
.main-banner .floating-area .line:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.78);
  margin: 0 auto;
  transition: height 0.5s ease;
}
.main-banner .floating-area .line.deploy:before {
  height: 100%;
}
.main-banner .floating-area span:not(.line) {
  font-size: 1.1em;
}

.page-header {
  background: linear-gradient(180deg, #001f2f 0%, #001b2a 104.17%);
  padding: 86px 0px 140px 0px;
}
.page-header h1 {
  font-size: 2.4em;
  letter-spacing: 5px;
  margin-bottom: 17px;
}
.page-header p {
  font-size: 1.2em;
}

/* ----- Loop Properties ------ */
.loop-properties {
  display: grid;
  column-gap: 20px;
  row-gap: 60px;
}
.loop-properties .item {
  color: #191919;
  padding-bottom: 100px;
  min-width: 0;
}
.loop-properties .item .image-area .swiper.listing-item:before, .loop-properties .item .image-area.no-slider:before {
  content: "";
  background: linear-gradient(180deg, transparent 37%, rgba(0, 0, 0, 0.6) 85%);
  width: 100%;
  height: 100%;
  position: absolute;
  display: block;
  z-index: 20;
}
.loop-properties .item .image-area .swiper-pagination {
  z-index: 21;
}
.loop-properties .item .image-area img {
  height: 278px;
}
.loop-properties .item .caption-area {
  padding: 25px 28px;
  color: #191919;
}
.loop-properties .item .caption-area h4 {
  font-size: 1.4em;
}
.loop-properties .item .caption-area .price {
  font-size: 1.05em;
}
.loop-properties .item .caption-area .features {
  font-size: 0.9em;
}
.loop-properties .item .property-bottom {
  bottom: 25px;
  left: 0;
  right: 0;
  padding: 0px 19px;
}
.loop-properties .item .property-bottom .property-bottom-wrap {
  border-top: 1px solid rgba(0, 0, 0, 0.1490196078);
  padding-top: 21px;
}
.loop-properties .item .property-bottom .property-bottom-wrap .location {
  font-size: 0.9em;
}
.loop-properties .item .property-bottom .property-bottom-wrap .location svg {
  margin-right: 6px;
}
.loop-properties .item .property-bottom .property-bottom-wrap .see-more svg {
  width: 19px;
  height: auto;
}
.loop-properties .item .property-bottom .property-bottom-wrap .see-more svg path {
  fill: #181719;
}
.loop-properties .item .property-bottom .property-bottom-wrap a {
  color: #191919;
}

/* ---- Single Property ------ */
.property-hero:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 90%;
  background-color: #002133;
}
.property-hero .swiper.property-hero {
  overflow: inherit;
}
.property-hero .swiper.property-hero .swiper-slide img {
  height: 550px;
}
.property-hero .swiper.property-hero .button-prev,
.property-hero .swiper.property-hero .button-next {
  bottom: 29px;
  z-index: 10;
  background: #fff;
  width: 38px;
  height: 38px;
  transition: all 0.3s ease;
}
.property-hero .swiper.property-hero .button-prev:hover,
.property-hero .swiper.property-hero .button-next:hover {
  background: #273656;
  color: #fff;
}
.property-hero .swiper.property-hero .button-prev.swiper-button-disabled,
.property-hero .swiper.property-hero .button-next.swiper-button-disabled {
  background-color: #9c9c9c;
  color: inherit;
}
.property-hero .swiper.property-hero .button-prev {
  right: 76px;
}
.property-hero .swiper.property-hero .button-next {
  right: 28px;
}
.property-hero .swiper.property-hero .options {
  bottom: 29px;
  left: 28px;
  z-index: 10;
}

.media-area {
  grid-template-columns: repeat(1, 1fr);
  row-gap: 10px;
}
.media-area .media-area-button {
  background-color: #fff;
  color: #273656;
  padding: 5px 22px;
  border-radius: 21px;
  font-size: 0.95em;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
}
.media-area .media-area-button:hover {
  background: #273656;
  color: #fff;
}
.media-area .media-area-button:hover svg path {
  fill: #fff;
}
.media-area .media-area-button svg {
  width: auto;
  height: 16px;
  margin-right: 7px;
}
.media-area.media-area-mobile a {
  padding: 17px 15px;
  border-radius: 9px;
}
.media-area:not(.media-area-mobile) a:not(:last-child) {
  margin-right: 10px;
}

.part-breadcrumbs {
  font-size: 0.9em;
}
.part-breadcrumbs .path-area {
  color: rgba(39, 54, 86, 0.3215686275);
}
.part-breadcrumbs .path-area .current {
  color: #273656;
}
.part-breadcrumbs .options-area ul li a {
  color: #273656;
  margin: 0px 10px;
}
.part-breadcrumbs .options-area ul li a svg {
  margin-right: 6px;
  height: 15px;
  width: auto;
}
.part-breadcrumbs .options-area ul li:last-child a {
  margin-right: 0;
}

.page-luxury-property .price {
  color: #273656;
}
.page-luxury-property .price .price-text {
  font-size: 2em;
  margin-right: 6px;
}
.page-luxury-property .features {
  background-color: #054164;
  padding: 20px 10px;
  border-radius: 50px;
}
.page-luxury-property .features > div {
  margin: 0px 30px;
  font-size: 0.95em;
}
.page-luxury-property .features > div:not(:last-child) {
  border-right: 1px solid rgba(255, 255, 255, 0.3);
  padding-right: 30px;
}
.page-luxury-property .nav-details .nav-link {
  color: rgba(39, 54, 86, 0.5019607843);
  border-bottom: 1px solid transparent;
  padding-bottom: 11px;
  margin: 0px 10px;
  font-size: 0.95em;
}
.page-luxury-property .nav-details .nav-link.active {
  color: #273656;
  border-color: #273656;
}

.agents-cards .agent-card .caption-area * {
  color: #273656;
}
.agents-cards .agent-card .caption-area {
  padding: 30px 15px 58px 15px;
}
.agents-cards .agent-card .caption-area .name {
  font-size: 1.05em;
  margin-bottom: 6px;
}
.agents-cards .agent-card .caption-area .line-divider {
  height: 1px;
  margin: 24px auto;
}
.agents-cards .agent-card .caption-area .position {
  font-size: 0.9em;
  margin-bottom: 25px;
}
.agents-cards .agent-card .caption-area .btn {
  font-size: 0.85em;
  padding: 8px 36px !important;
}
.agents-cards .agent-card .caption-area .btn svg {
  width: 16px;
}

/* ------ Page List Your Property ------ */
.part-smarter-way .features {
  column-gap: 7px;
  row-gap: 10px;
}

.part-seamless .process-steps {
  border-top: 1px solid rgba(39, 54, 86, 0.18);
  border-bottom: 1px solid rgba(39, 54, 86, 0.18);
}
.part-seamless .process-steps li .number {
  color: #273656;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.2509803922);
  font-size: 2.7em;
  margin-bottom: 12px;
}

footer *,
footer a {
  color: #fff;
}
footer .right-property {
  padding: 19px 0px;
  border-bottom: 1px solid rgb(2, 25, 38);
}
footer .right-property button {
  background: transparent;
}
footer .right-property button:first-child {
  font-size: 1.4em;
  padding: 0;
}
footer .right-property button.chevron {
  background-color: var(--primary);
  width: 55px;
  height: 55px;
  border-radius: 50%;
}
footer .right-property button.chevron svg {
  top: 1px;
  transition: all 0.3s ease;
  width: 20px;
  height: auto;
}
footer .right-property button.chevron:hover {
  background-color: var(--primary-hover);
  box-shadow: 0px 0px 15px rgba(5, 54, 75, 0.5);
}
footer .right-property button.chevron:not(.collapsed) svg {
  top: -1px;
  transform: rotate(180deg);
}
footer ul.menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
footer ul.menu li {
  font-weight: 300;
  font-size: 0.95em;
}
footer ul.menu li strong {
  font-weight: 700;
}
footer ul.menu li:not(:last-child) {
  margin-bottom: 18px;
}
footer .right-property-content .widgets-area {
  padding-top: 52px;
}
footer .right-property-content .widgets-area .single-widget .widget-title {
  color: #273656;
}
footer .right-property-content .widgets-area .single-widget .menu li {
  color: #273656;
  font-weight: 400;
}
footer .widgets-area {
  padding: 69px 0px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.23);
}
footer .widgets-area .single-widget .widget-title {
  font-size: 1.1em;
  margin-bottom: 28px;
}
footer .under-widgets-area .newsletter .form-group .input-area {
  padding: 6px 10px 6px 20px;
}
footer .under-widgets-area .newsletter .form-group .input-area input[type=email] {
  color: #4A4A4A;
  min-width: 350px;
  outline: none;
}
footer .under-widgets-area .newsletter .form-group .input-area input[type=email]::placeholder {
  color: rgba(74, 74, 74, 0.36);
}
footer .under-widgets-area .newsletter .form-group .input-area button {
  background-color: #033043;
  padding: 5px;
}
footer .under-widgets-area .newsletter .form-group .input-area button:hover {
  background-color: var(--primary-hover);
}
footer .under-widgets-area .newsletter .form-group .input-area button svg {
  width: 25px;
  height: 25px;
}
footer .under-widgets-area .redes li a {
  margin: 0px 8px;
}
footer .under-widgets-area .redes li a svg {
  width: 21px;
  height: auto;
}
footer .under-widgets-area .redes li:last-child a {
  margin-right: 0;
  /* ---- YouTube ------ */
}
footer .under-widgets-area .redes li:last-child a svg {
  width: 24px;
}
footer .under-footer {
  font-size: 0.9em;
}

@media screen and (min-width: 1600px) {
  .loop-properties {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (max-width: 1600px) {
  .loop-properties {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 992px) {
  .form-area .form-row.two .form-group {
    width: 47%;
  }
  .form-area textarea {
    min-height: 150px;
    max-height: 150px;
  }
  .agents-cards .agent-card {
    width: 25%;
  }
  /* ------ Page List Your Property ------ */
  .part-smarter-way .features {
    grid-template-columns: repeat(3, 1fr);
  }
  .part-seamless .process-steps {
    border-top: 1px solid rgba(39, 54, 86, 0.18);
    border-bottom: 1px solid rgba(39, 54, 86, 0.18);
  }
  .part-seamless .process-steps li {
    width: 33%;
  }
  .part-seamless .process-steps li .number {
    color: #273656;
    text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.2509803922);
    font-size: 2.7em;
    margin-bottom: 12px;
  }
  .part-seamless .process-steps li:first-child:before {
    display: block;
    position: absolute;
    content: "";
    height: 100%;
    width: 1px;
    right: 0;
    top: -29px;
    background-color: rgba(39, 54, 86, 0.18);
  }
  footer .right-property-content .widgets-area {
    flex-wrap: wrap;
  }
  footer .right-property-content .widgets-area .single-widget {
    width: 24%;
  }
  footer .right-property-content .widgets-area .single-widget:nth-last-child(-n+4) {
    margin-bottom: 0;
  }
  footer .widgets-area {
    display: flex;
    justify-content: space-between;
  }
  footer .widgets-area .single-widget:not(:nth-last-child(-n+3)) {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 1300px) and (min-width: 992px) {
  .right-property-content .widgets-area {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  .right-property-content .widgets-area .single-widget {
    width: 100% !important;
  }
}
@media screen and (max-width: 992px) {
  .form-area .form-row.two .form-group {
    width: 100%;
  }
  .form-area .form-row.two .form-group:first-child {
    margin-bottom: 26px;
  }
  .form-area textarea {
    min-height: 200px;
    max-height: 500px;
  }
  .loop-properties {
    grid-template-columns: repeat(1, 1fr);
  }
  .page-luxury-property .features {
    border-radius: 20px;
  }
  .page-luxury-property .features > div {
    width: 100%;
    border-right: 0 !important;
    text-align: center;
    padding-bottom: 30px;
    font-size: 1.1em;
  }
  .page-luxury-property .features > div:first-child {
    padding-top: 20px;
  }
  .page-luxury-property .features > div:not(:last-child) {
    border-bottom: 1px solid rgb(11, 81, 122);
    margin-bottom: 30px;
  }
  /* ------ Page List Your Property ------ */
  .part-smarter-way .features {
    grid-template-columns: repeat(1, 1fr);
  }
  .part-seamless .process-steps {
    border: 0;
  }
  .part-seamless .process-steps li {
    width: 100%;
    border-bottom: 1px solid rgba(39, 54, 86, 0.18);
  }
  footer .right-property-content .widgets-area {
    grid-template-columns: repeat(2, 1fr);
  }
  footer .widgets-area {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 40px;
    row-gap: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 762px) {
  footer .right-property-content .widgets-area {
    grid-template-columns: repeat(1, 1fr);
  }
  footer .widgets-area {
    grid-template-columns: repeat(1, 1fr);
    row-gap: 60px;
  }
}