/* guidelines */

/*
black: #222
blue: #00aeef
blue (hover): #0095cd
-webkit-transition: all .15s ease-out;
-moz-transition: all .15s ease-out;
-o-transition: all .15s ease-out;
transition: all .15s ease-out;
}
*/

/* important */

.display-flex {
  display: flex !important;
}

.display-none {
  display: none !important;
}

.ml-0-75rem {
  margin-left: .75rem !important;
}

.plr-2rem {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.color-f8b02a {
  color: #f8b02a !important;
}

.font-size-0-9rem {
  font-size: .9rem !important;
}

.font-size-1-5rem {
  font-size: 1.5rem !important;
}

.font-size-2rem {
  font-size: 2rem !important;
}

.font-size-28px {
  font-size: 28px !important;
}

.font-weight-500 {
  font-weight: 500 !important;
}

.flex-1 {
  flex: 1 !important;
}

.flex-3 {
  flex: 3 !important;
}

@media (max-width: 767px) {
  .display-none-for-xs {
    display: none !important;
  }

  .width-100proc-for-xs {
    width: 100% !important;
  }

  .ml-0-for-xs {
    margin-left: 0 !important;
  }
}

@media (min-width: 768px) {
  .display-none-for-desktop {
    display: none !important;
  }

  .width-90proc-for-desktop {
    width: 90% !important;
  }

  .m-lr-5proc-for-desktop {
    margin-left: 5% !important;
    margin-right: 5% !important;
  }
}

/* general */

.btn-default {
  padding: 1rem 3rem;
  color: #fff;
  text-transform: uppercase;
  background-color: #00aeef;
  border: 2px solid #00aeef;
  border-radius: 0;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.btn-default:hover {
  color: #fff;
  background-color: #0095cd;
  border-color: #0095cd;
}

/* navigation */

.navbar-brand {
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.navbar-brand img {
  height: 55px;
  width: auto;
}

.navbar-brand img:nth-child(2) {
  display: none;
}

.navbar-shrink .navbar-brand img:nth-child(1) {
  display: none;
}

.navbar-shrink .navbar-brand img:nth-child(2) {
  display: block;
}

@media (max-width: 767px) {
  .navbar-shrink {
    background-color: #fff !important;
  }

  .navbar-brand {
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media (min-width: 768px) {
  .navbar-shrink .navbar-brand {
    padding-top: 0;
    padding-bottom: 0;
  }
}

/* cover */

.front-page-cover h1 {
  font-family: "Playfair Display", serif;
  font-size: 48px;
}

.front-page-cover hr {
  background-color: #fff;
}

.front-page-cover p {
  font-size: 20px;
}

.front-page-cover ul {
  list-style-type: none;
  padding-inline-start: 0;
  margin-bottom: 1rem;
}

.front-page-cover ul li {
  display: inline;
  margin-left: .5rem;
  margin-right: .5rem;
}

.front-page-cover ul li a {
  font-size: 1.5rem;
  color: #fff;
  opacity: 1;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-cover ul li a:hover {
  color: #fff;
  opacity: .8;
}

.btn-cover {
  padding: 1rem 3rem;
  color: #fff;
  text-transform: uppercase;
  background-color: transparent;
  border: 2px solid #fff;
  border-radius: 0;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.btn-cover:hover {
  color: #fff;
  background-color: #00aeef;
  border-color: #00aeef;
}

@media (max-width: 767px) {
  header.masthead {
    background-size: cover;
    background-position-x: 65%;
  }
}

/* services */

.front-page-services-background-div {
  background-image: url("../images/services_cover.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin-left: 24px;
  margin-right: 24px;
  width: calc(33.333333% - 48px);
}

.front-page-individual-service a {
  display: inline-block;
  flex: 1 0 calc(50% - 48px);
  padding: 2.5rem 2rem;
  color: #222;
  /*width: 40%;*/
  background-color: #eee;
  text-align: left;
  text-decoration: none;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-service a:hover {
  color: #222;
  background-color: #e6e6e6;
}

.front-page-individual-service h3 {
  font-size: 1.2rem !important;
  font-weight: 500;
}

.front-page-individual-service p {
  font-weight: 400;
  font-size: .95rem;
  color: #555;
}

.front-page-individual-service p.desc {
  margin-bottom: 1.5rem;
  min-height: 114px;
}

.front-page-individual-service p.more-info {
  margin-bottom: 0;
  color: #00aeef;
  text-transform: uppercase;
  font-weight: 500;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-service a:hover p.more-info {
  color: #0095cd;
}

.front-page-individual-service p.more-info i {
  font-size: .85rem;
  vertical-align: 1px;
}

@media (max-width: 767px) {
  .front-page-individual-service a {
    margin-bottom: var(--bs-gutter-x);
  }

  .front-page-individual-service a:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .front-page-individual-service {
    display: flex;
    flex-wrap: wrap;
  }

  .front-page-individual-service a:nth-child(odd) {
    margin-right: 48px;
  }

  .front-page-individual-service a:nth-child(1),
  .front-page-individual-service a:nth-child(2) {
    margin-bottom: 48px;
  }
}

/* about */

.front-page-about {
  background-color: #eee;
  border-bottom: 2px solid #fff;
}

.front-page-about-me {
  width: calc(50% - 48px);
  margin-left: 24px;
  margin-right: 24px;
  padding: 2.5rem 2rem;
  color: #222;
  background-color: #fff;
  text-align: left;
}

.front-page-about-me p {
  margin-bottom: 1.5rem;
  font-weight: 400;
  font-size: .95rem;
  color: #555;
}

.front-page-about-me p:last-child {
  margin-bottom: 0;
}

.front-page-about-background-div {
  background-image: url("../images/about_cover.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin-left: 24px;
  margin-right: 24px;
  width: calc(50% - 48px);
}

@media (max-width: 767px) {
  .front-page-about-me {
    width: calc(100% - 24px);
    margin-left: 12px;
    margin-right: 12px;
  }
}

/* estate objects */

.front-page-estate-objects {
  background-color: #fff;
}

.front-page-individual-object {
  display: block;
  color: #222;
  text-decoration: none;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-object > a {
  display: block;
  position: relative;
  height: 250px;
  width: 100%;
  background-size: 100%;
  text-decoration: none;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-object > a:hover {
  background-size: 103%;
}

.front-page-individual-object > a div {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  z-index: 1;
}

.front-page-individual-object > a div.compare {
  bottom: auto;
  left: auto;
  top: 1.5rem;
  right: 1.5rem;
  display: inline-block;
  text-align: center;
  background-color: rgba(255, 255, 255, .6);
  width: 40px;
  height: 40px;
  border-radius: 50%;
}

.front-page-individual-object > a div.compare i {
  font-size: 16px;
  line-height: 40px;
  color: #222;
  -webkit-transition: all .075s ease-out;
  -moz-transition: all .075s ease-out;
  -o-transition: all .075s ease-out;
  transition: all .075s ease-out;
}

.front-page-individual-object > a div.compare:hover i {
  color: #00aeef;
}

.front-page-individual-object > a span {
  display: inline-block;
  padding: .3rem .6rem;
  margin-right: .3rem;
  font-size: .85rem;
  color: #fff;
  pointer-events: none;
}

.front-page-individual-object > a span.new-object {
  background-color: #f39c12;
}

.front-page-individual-object > a span.for-rent {
  background-color: #34495e;
}

.front-page-individual-object > a span.for-sale {
  background-color: #00aeef;
}

.front-page-individual-object > a span.sold {
  background-color: #e74c3c;
}

.front-page-individual-object > a span:last-child {
  margin-right: 0;
}

.front-page-individual-object > div {
  background-color: #eee;
}

.front-page-individual-object h3 {
  margin-bottom: 1rem;
  font-size: 1.1rem;
  font-weight: 400;
}

.front-page-individual-object p {
  margin-bottom: 0;
  margin-top: 1rem;
  font-size: .85rem;
}

.front-page-individual-object p.price {
  color: #00aeef;
  font-size: 1.3rem;
  font-weight: 500;
}

@media (max-width: 767px) {
  .front-page-individual-object > a {
    height: 230px;
  }
}

@media (min-width: 768px) {
  .front-page-individual-object > div {
    min-height: 174px;
  }
}

/* articles */

.front-page-articles {
  background-color: #eee;
}

.front-page-individual-article a {
  color: #222;
  background-color: #eee;
  text-decoration: none;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-article a:hover {
  color: #222;
  background-color: #eee;
}

.front-page-individual-article a > div {
  flex: 1;
}

.front-page-individual-article a > div:first-child {
  height: 180px;
  background-size: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-article a > div:first-child:hover {
  background-size: 103%;
}

.front-page-individual-article h3 {
  font-size: 1.15rem !important;
  font-weight: 500;
}

.front-page-individual-article p {
  font-weight: 400;
  font-size: .9rem;
  line-height: 1.25rem;
  color: #555;
}

@media (max-width: 767px) {
  .front-page-individual-article a > div:first-child {
    height: 230px;
    margin-bottom: 1rem;
  }
}

@media (min-width: 768px) {
  .front-page-individual-article a {
    display: flex;
    gap: 30px;
  }
}

/* testimonials */

.front-page-testimonials {
  background-color: #fff;
}

.front-page-testimonials img.google-logo {
  height: 35px;
  width: 110px;
}

.front-page-individual-testimonial {
  padding: 1.25rem;
  background-color: #eee;
}

.front-page-individual-testimonial h5 {
  font-size: 15px;
  color: #222;
  margin-bottom: .25rem;
}

.front-page-individual-testimonial p {
  font-size: .9rem;
  margin-bottom: 0;
}

.front-page-individual-testimonial p.date {
  font-size: 12px;
  color: #222;
  opacity: .5;
}

.front-page-individual-testimonial img {
  width: 40px;
  height: 40px;
}

.front-page-individual-testimonial img.google {
  width: 20px;
  height: 20px;
  display: inline-block;
}

.front-page-individual-testimonial i {
  font-size: .9rem;
}

.front-page-individual-testimonial > div:first-child {
  display: flex;
}

.front-page-individual-testimonial > div:first-child > div:first-child {
  flex: 1;
}

.front-page-individual-testimonial > div:first-child > div:nth-child(2) {
  flex: 5;
}

.front-page-individual-testimonial > div:first-child > div:nth-child(3) {
  flex: 1;
  text-align: right;
}

.front-page-individual-testimonial > div:nth-child(2) {
  margin-top: .6rem;
  margin-bottom: .6rem;
}

.front-page-individual-testimonial > div:nth-child(3) {
  min-height: 87px;
}

/* partners */

.front-page-partners {
  background-color: #eee;
}

.front-page-individual-partner a {
  display: block;
  padding: 2.5rem;
  color: #222;
  background-color: #fff;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-partner a:hover {
  color: #222;
  background-color: #fff;
}

.front-page-individual-partner img {
  height: 80px;
  width: auto;
  max-width: 100%;
  opacity: 1;
  -webkit-transition: all .15s ease-out;
  -moz-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;
}

.front-page-individual-partner a:hover img {
  opacity: .7;
}

@media (max-width: 767px) {
  .front-page-individual-partner a {
    padding: 1.25rem;
  }

  .front-page-individual-partner img {
    height: 60px;
  }
}

/* newsletter */

.front-page-newsletter {
  background-color: #fff;
}

.front-page-newsletter input {
  padding: 1rem 1.5rem;
  border: 2px solid #eee;
  border-radius: 0;
  height: 60px;
  background-color: #eee;
  font-size: .9rem;
}

.front-page-newsletter input:hover,
.front-page-newsletter input:focus {
  border: 2px solid #eee;
  background-color: #eee;
  outline: 0;
  box-shadow: none;
}

/* free consultation */

.front-page-free-consultation {
  background-color: #eee;
}

/* footer */

footer {
  background-color: #004274;
  color: #fff;
}

footer h5 {
  font-size: 1rem;
  text-transform: uppercase;
  margin-bottom: 1.25rem;
}

footer ul {
  list-style-type: none;
  padding-inline-start: 0;
  margin-bottom: 0;
}

footer ul li {
  margin-bottom: .25rem;
}

footer ul li a {
  color: #fff;
  text-decoration: none;
}

footer ul li a:hover {
  color: #fff;
  text-decoration: underline;
}

footer ul li a i {
  width: 28px;
}

footer img {
  height: 90px;
  width: auto;
}

footer hr {
  background-color: #fff !important;
}


/* */
