/*

BASIC

COMPONENENTS

NAV

HERO

*/

:root {
    --main-color: #0a806c;
    --main-color-rgb: 10, 128, 108;
    --secondary-color:#F45D48;
    --yellow-color: #FFCB44;
    --header-font: 'Poppins', serif;
    --secondary-font: 'Space Grotesk', sans-serif;
    --paragraph-font: 'Inter', sans-serif;
    --background-color: #FFFBF6;
    --footer-background-color: #EBEBEB;
    --black-color: #19191A;
    --font-color: #212529;
    --blue-color: #3927FF;
    --grey-color: #2F2F2F;
    --light-grey-color: #4D4D4D;
    --text-grey-color: #373737;
    --text-light-grey-color: #6D6D6D;
    --green-color: #288F7D;
    --text-green-color: #00A469;
    --box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
    --heavy-box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.1);
    --dark-grey: #363636;
    --light-grey: #f8f9fa;
}

.color-dark-grey{
  color: var(--dark-grey);
}

.color-light-grey{
  color: var(--dark-grey);
}

.color-blue{
  color: var(--blue-color);
}
.color-light-grey{
  color: var(--light-grey-color) !important;
}
.color-green{
  color: var(--green-color) !important;
}
.color-grey{
  color: var(--grey-color) !important;
}
.color-yellow{
  color: var(--yellow-color);
}
.color-main {
  color: var(--main-color);
}
.color-secondary {
  color: var(--secondary-color);
}
.color-black{
  color: var(--black-color);
}
.color-white {
  color: #ffffff;
}
.color-text{
  color: var(--font-color);
}
.color-text-grey-color {
  color: var(--text-grey-color);
}

.color-text-green {
  color: var(--text-green-color);
}

.color-text-light-grey {
  color: var(--text-light-grey-color);
}

.font-inter {
  font-family: Inter;
}

html, body {
  overflow-x: hidden;
}
body {
  position: relative;
  background-color: var(--background-color);
}

h1, h2, h3, h4, h5 {
    font-family: var(--header-font);
    font-weight: 700;
    line-height: 1.0;
}
h3 {
    font-size: 1.25rem;
}

p {
    font-family: var(--paragraph-font);
}

small{
  font-family: var(--paragraph-font)
}
a {
  color: var(--secondary-color);
  font-family: var(--paragraph-font);
}


h2{
    font-size: 2.8rem;
    margin-bottom: 1rem;
}

img{
    max-width: 100%;
}

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

.bg-white{
    background-color: #ffffff;
}

.bg-soft{
  background-color: #f7fcfd;
}

.bg-soft h2{
  font-size: 2rem;
}

.bg-soft img{
  width: 100px;
}

.text-danger{
  color:#F45D48;
}

.emphasize-text{
  color: var(--secondary-color);
}

.font-text{
  font-family: var(--paragraph-font);
}

@media only screen and (max-width:575.98px){
  h2{
    font-size: 28px;
  }
}

.pill{
  width: 125px;
  height: 280.22px;
  /* Yellow */

  background: var(--yellow-color);
  border-radius: 200px;

  overflow: hidden;
}
.pill img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.my-10 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

@media (max-width: 575.98px) {
  .my-10 {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
}

@media (min-width: 576px) {
  .my-10 {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
}

@media (min-width: 768px) {
  .my-10{
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}

@media (min-width: 992px)  {
  .my-10 {
    margin-top: 8rem;
    margin-bottom: 8rem;
  }
}

@media (min-width: 1200px){
  .my-10 {
    margin-top: 10rem;
    margin-bottom: 10rem;
  }
}

@media (min-width: 1400px) {
  .my-10 {
    margin-top: 12rem;
    margin-bottom: 12rem;
  }
}

/*

COMPONENTS

*/

.top-action-banner{
  z-index: 9999;
  position: relative;
}


.btn{
  transition: all 200ms ease-in-out;
}

.btn-rounded{
  border-radius: 50%;
}
.btn-primary, .btn-secondary, .btn-outline-primary, .btn-outline-secondary{

    padding: 7px 37px;
    font-family: var(--secondary-font);
    font-weight: 500;
    border-radius: 40px;
}
.btn-primary{
  background: -webkit-linear-gradient(right, var(--main-color) 50%, #0d9494 50%);
  background: linear-gradient(to left, var(--main-color) 50%, #0d9494 50%);
  background-position: right bottom;
  background-size: 200% 100%;
  border: var(--main-color);
}

.btn-outline-primary{
  border-color: -webkit-linear-gradient(right, var(--main-color) 50%, #0d9494 50%);
  color: var(--main-color);
}
.btn-outline-primary:hover{
  background: #0d9494;
  color:white;
  border-color: #0d9494;
}

.btn-utility{
  border: 1px solid var(--light-grey-color);
  background-color: white;
  font-family: var(--secondary-font);
}

.btn-outline-utility{
  border: 1px solid var(--light-grey-color);
  background-color: white;
  font-family: var(--secondary-font);
  color: var(--light-grey-color);
}

.btn-primary:hover{
  background-position: left bottom;
}

.btn-secondary{
  background: -webkit-linear-gradient(right, #f45d48 50%, #ef523c 50%);
  background: linear-gradient(to left, #f45d48 50%, #ef523c 50%);
  background-position: right bottom;
  background-size: 200% 100%;
  border: var(--secondary-color);
}

.btn-secondary:hover{
  background-position: left bottom;
}

.btn-outline-secondary{
  border: 1px solid var(--secondary-color);
  background-color: white;
  color: var(--secondary-color);
}
.btn-outline-secondary:hover{
  background: var(--secondary-color);
  color:white;
  border-color: var(--secondary-color);
}

.bg-secondary-soft{
  background-color: var(--background-color)
}

.btn-choice{
  padding: 5px 10px;
  border-radius: 25px;
  font-size: 12px;
  font-weight: 200;
}

.btn-sm{
  padding: 5px 10px;
  font-size: 12px;
}

.btn-square{
  border-radius: 8px;
}

.btn-icon{
  background-color: white;
  border: 1px solid var(--secondary-color);
  border-radius: 8px;
  color: var(--secondary-color);
}

.alert{
  box-shadow: var(--box-shadow);
}


@media only screen and (max-width: 1200px) {
    .btn-primary, .btn-secondary, .btn-outline-primary, .btn-outline-secondary {
        padding: 10px 10px;
    }
}

@media only screen and (max-width: 990px) {
    .btn-primary, .btn-secondary, .btn-outline-primary, .btn-outline-secondary {
        padding: 10px 30px;
    }

    .house-icon {
        line-height: 1;
        font-size: 90px;
        margin-top: -30px;
    }
}

@media only screen and (max-width: 575.98px) {
    .btn-secondary, .btn-primary, .btn-outline-primary {
        width: 100%;
    }
    .btn-square{
      border-radius: 4px;
    }

    .house-icon {
        line-height: 1;
        font-size: 100px;
        margin-top: -30px;
    }

    .progress-title {
        font-size: 12px;
    }

}

@media only screen and (min-width: 990px) {
    .house-icon {
        line-height: 1;
        font-size: 108px;
        margin-top: -35px;
    }
}

@media only screen and (max-width: 400px) {

}
/* span{
    color: var(--main-color)
} */

.bg-primary{
    background-color: var(--main-color)!important;
}

.bg-primary span{
    color: white;
    font-family: var(--secondary-font);
}
.bg-secondary{
    background-color: var(--secondary-color)!important;
}

.bg-primary:hover span{
    text-decoration: none;
}

.location-select li {
    list-style: none;
}
a:hover{
    text-decoration: none;
    color: inherit;
}

.form-control:focus{
  border-color: var(--main-color);
  box-shadow: 0 0 0 0.2rem #0a808033;
}

.rounded-top{
  border-top-left-radius: 10px!important;
  border-top-right-radius: 10px!important;
}

.card{
  border: 1px solid #E7E7E7;
  border-radius: 16px;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
}

.card-highlight{
  transform: scale(1.1);
}

@media only screen and (max-width:575.98px){
  .card-highlight{
    transform: scale(1);
  }
}

.cta {
  padding: 130px 0px;
  position: relative;
  color: white;
  background-color: var(--secondary-color);
}

.cta h1{
  line-height: 1.3;
}

@media screen and (max-width: 991px) {
  .cta {
    padding: 100px 0px;
  }
}

.cta div[class*="col-"]{
  z-index: 10;
}


.cta .button {
  color: white;
  background-color: transparent;
  z-index: 10;
}

.cta .pill{
  position:absolute;
  z-index: 9;
}



  .subtitle, .hero-banner .subtitle{
    font-size: 16x;
    color: var(--secondary-color);
    font-family: var(--header-font);
  }

.emoji-bullets{
  padding-left: 25px;
}
.emoji-bullets li{
  position: relative;
}
.emoji-bullets span{
  position: absolute;
  left: -25px;
  top: 2px;
}
/*

NAV

*/

.logo{
    width: 150px;

}

.navbar .navbar-nav li {
  margin-left: 10px;
  margin-right: 10px;
  font-family: 'Inter', sans-serif;
  position: relative;
}
.navbar-light .navbar-nav .nav-link{
  color:black
}
.navbar .navbar-nav li a {
  color: #28224b;
}
.navbar .navbar-nav li.active a.nav-link{
    color: var(--main-color);
    font-weight: 600;
}

.navbar .navbar-nav .nav-item::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -11px;
  width: 100%;
  height: 3px;
  background-color: transparent;
  transition: background-color 0.3s ease;
}

@media (max-width: 767px) {
  .navbar .navbar-nav .nav-item::after {
    width: 90px;
    bottom: 0;
  }
}
.navbar .navbar-nav .nav-item.active::after {
  background-color: var(--main-color);
}

.navbar .navbar-nav .nav-item.active .nav-link {
  color: var(--main-color);

}
.navbar .navbar-nav .login-button{
  padding-top: 0px;
}

.language-item{
  transition: 0.2s ease;
}

.language-item .btn{
  padding: 0px;
  padding-left: .5rem;
}
.language-item .btn-light{
  background-color: transparent;
  border:none;
}
.language-item .show>.btn-light.dropdown-toggle{
  background-color: transparent;
  border:none;
}

.dropdown-item.active{
  background-color: var(--main-color);
}

.language-item .dropdown-menu.show{
  padding-top: 0px;
  padding-bottom: 0px;
}

.language-item .dropdown-menu .show li{
  padding-top: 0px;
  margin: 0px;
}


.translation-flag{
  max-width: 30px;
  height: 20px;
  border-radius: 2px;
}

/* select {
  -webkit-appearance:none;
} */


.selectpicker-language{
  width: 60px;
}

.selectpicker-language .btn {
  background: #FFFFFF !important;
  border-color: #FFFFFF !important;
}

.nav-item .dropdown.bootstrap-select.-language{
  width: 60px!important;
}

.text-main{
  color: var(--main-color);
}

/* 

HERO

*/

.hero{
    background-repeat: no-repeat;
    background-position: 46% 0%;
    margin-bottom: 25px;
}



.hero-banner h1{
  font-size: 3rem;
  text-align: center;
}
.hero-banner .hero-span{
  color: var(--main-color);
}

.hero-banner .hero-image{
  width: 100%;
  height: 100%;
  box-shadow: none;
  background-image: url('/static/roomraider/img/jasper-header-clean.webp');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% 10%;
}

.hero-banner .hero-image-testimonial{
  /* Make this class an absolute overlay on the left bottom */
  width: 500px;
  position: absolute;
  bottom: 5%;
  left: 20%;
}

.hero.zoeken{
  margin-bottom: 150px;
}

.sub-banner{
  background-color: white;
}

@media only screen and (max-width:575.98px){
    .hero{
      min-height: 65vh;
    }
    .hero.zoeken{
      margin-bottom: 0px;
    }
    .hero-wrapper{
      position: relative;
    }
    .hero-banner{
        padding-top: 30px;
    }
    h1{
      font-size: 2rem;
      position: relative;
      z-index: 1;
    }
    .hero-banner h1{
      font-size: 2.5rem;
      position: relative;
      z-index: 1;
    }
    .hero-banner button{
      position: relative;
      z-index: 1;
    }
    .hero-banner .hero-image-fixed{
      position: absolute;
      bottom: -100px;
      left: -2px;
      z-index: 0;
    }
}

@media only screen and (max-width:1024px) {
    .hero-banner .hero-image-testimonial{
      display: none;
      position: relative;
    }
}

@media only screen and (max-width:1200px) {
  .hero-banner .hero-image-testimonial{
    left: 5%;
    bottom: 10%;
  }
}



/*

SECTIONS

*/

section{
    margin: 80px 0px;
}
@media only screen and (max-width:575.98px){
  section{
    margin: 0px 0px;
}
}

.social-proof{
  position: relative;
  z-index: 2;
}


.product-section{
  padding-top: 60px;
  padding-bottom: 30px;
  margin-bottom: 0;
  margin-top: 0;
}

.about-section, .about-stekkies-section, .product-section{
    background-color: #ffffff;
    background-repeat: no-repeat;
    background-position: 54% 72%;
}


.testimonial-section{
  padding-bottom: 60px;
}

.about-section,.about-stekkies-section{
    padding-top: 60px;
    z-index: 2;
    position: relative;
}

/* Write a media query for the about section when the screen is bigger than 1200px */
@media only screen and (min-width:992px) {
  .about-section{
    padding-top: 120px;
  }
}


.product-image{
    max-height: 500px;

}

.card-no-border {
  border-radius: 12px;
  border: none;
  box-shadow: none;
}


div[class^="step"] img{
    height: 120px;
    object-fit: contain;
    position: relative;
    z-index: 1;
    margin-bottom: -15px;
}

div[class^="step"] span.img{
  font-size: 36px;
  font-weight: 700;
  position: absolute;
  top: -12%;
  left: 50%;
  z-index: 5;
}

@media only screen and (max-width:1200.98px){
  div[class^="step"] span.img{
    font-size: 36px;
    font-weight: 700;
    position: absolute;
    top: -15%;
    left: 50%;
    z-index: 5;
  }
}


.features{
  background-color: #FFFFFF;
}

.features div[class*="col-"]{
  position: relative;
}
.features div[class*="col-"] img, .features div[class*="col-"] p, .features div[class*="col-"] h2{
  z-index: 10;
}

.features .pill{
  position: absolute;
  z-index: 0;
}

@media only screen and (max-width:1200.98px){
  .features .pill{
    display: none;
  }
}

.contact-section{
  margin-bottom: 0px;
  padding-bottom: 80px;
  background-position: -10px 105%;
  background-size: 250px;
}

.features-list{
  background-position: -10px 105%;
  background-size: 250px;
}
.contact-list{
  list-style: none;
  padding-left: 0px;
}

.demo-section{
  margin: 0px;
  padding: 140px 0px;
  background-size: 250px;
  background-repeat: no-repeat;
  background-position: -50px 105%;
  /* max-height: 510px; */
}

@media only screen and (max-width:575.98px){
  .about-section{
    padding: 50px 0px 80px;
  }
  .about-stekkies-section {
    padding: 50px 0px 20px;
  }
  .demo-section{
    padding: 120px 0px 180px;
    background-position: -50px 110%;
    /* max-height: 725px; */
  }
  .contact-section{
    background-size: 200px;
    background-position: -50px 105%;
  }
  .features-list{
    background-size: 200px;
    background-position: -50px 105%;
  }
}
.input-group{
  border-radius: 8px;
}
.input-group .bootstrap-select.form-control {
  z-index: inherit;
}
/*

FEATURES

*/


.image-stack {
  display: grid;
  position: relative;
  grid-template-columns: repeat(12, 1fr);
}

.image-stack__item--bottom {
  grid-column: 1 / span 8;

  grid-row: 1;
}

.image-stack__item--top {
  grid-row: 1;
  grid-column: 4 / -1;

  padding-top: 20%;
  z-index: 1;
}

@media only screen and (max-width:575.98px){
  .image-stack__item--bottom {
    grid-column: 1 / span 10;

    grid-row: 1;
  }

  .image-stack__item--top {
    grid-row: 1;
    grid-column: 3 / -1;

    padding-top: 30%;
    z-index: 1;
  }
}

.header-testimonial{
  text-align: center;
  filter: grayscale(100%);
}
.header-testimonial:hover{
  transition: 0.4s;
  filter: none;
}
.header-testimonial .fa-star{
  color: var(--secondary-color);
}

.header-testimonial img {
  height: 30px;

}


.testimonial-card{
  min-height: 100%;
}
.testimonial-card h5{
  line-height: 1.2;
}

/* Make the first, second and third testimonial-card sibling */
.testimonial-card-child0, .testimonial-card-child3{
  background-color: #3927FF;
}
.testimonial-card-child1, .testimonial-card-child4 {
  background-color: #FF5B27;
}
.testimonial-card-child2. .testimonial-card-child5{
  background-color: #D3DFFF;
}
.testimonial-card-child2 h5, .testimonial-card-child5 h5{
  color: black;
}

.testimonial-card-child2 p, .testimonial-card-child5 p{
  color: black;
}

.testimonial-row{
  min-height: 400px;
}

/* Give every testimonial-row child larger than 3 hidden on mobile */
@media only screen and (max-width:992px){
  .testimonial-row{
    min-height: 350px;
  }
  .testimonial-row:nth-child(n+4){
    display: none;
  }
}

.testimonial span{
  color: #f4be18;
  font-size: 18px;
  margin-bottom: auto;
  margin-top: auto;
}

.testimonial-house{
  min-height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

.owl-carousel .owl-nav{
  text-align: center;
}

.owl-prev:focus{
  outline: none !important;
}
.owl-next:focus {
  outline: none !important;
}

.owl-prev:hover{
  background: transparent !important;
}
.owl-next:hover {
  background: transparent !important;
}

.owl-theme .owl-controls .owl-page {
  display: inline-block;
}
.owl-theme .owl-controls .owl-page span {
  border-radius: 20px;
  display: block;
  height: 12px;
  margin: 5px 7px;
  opacity: 0.5;
  width: 12px;
}
.testimonial img{
  position: relative;
  background-color: white;
}

.goto-trustpilot {
  display: none;
  position: absolute;
  bottom: 0;
}

.testimonial {
  cursor: pointer;
}

.testimonial:hover .goto-trustpilot {
  display: block;
}

#go-to-image {
  width: 20px;
}

.testimonial img.portret{
  border-radius: 50%; width: 60px;  height: 60px; object-fit: cover;
  box-shadow: 4px 14px 24px rgba(39,44,49,.04), 0 3px 5px rgba(39,44,49,.05);
}

.text-shadow{
  text-shadow: 1px 1px #000;
}

.testimonial-info-top{
  position: absolute;
  color: white;
  font-weight: 700;
}


.testimonial-info-top-date{
  background-color: #7263604f;

}
.testimonial-info-bottom{
    position: relative;
    background-color: transparent;
    font-size-adjust: inherit;
    min-height: 190px;
    margin-top: -2px;
}


/* Parool highlight */
.headline-quote{
  font-size: 1.25rem;
  font-style: italic;
}


/*

/* 


Review page

*/

.review-page{
  background-color: #fff;
}


/*

FOOTER

*/

footer{
    color: var(--black-color)
}


footer .footer-top {
  background-color: var(--footer-background-color) ;
}

footer .sub-container {
  border-bottom: 1px solid #CECECE;
}

footer .footer-bottom {
  background-color: var(--footer-background-color);
}

footer .footer-legal {
  background-color: #343434;
}

footer img.logo{
  height: 24px;
}

footer ul{
  padding-left: 0px;
  list-style: none;
}

footer li {
  margin-bottom: 10px;
}

.footer-actions li:hover::after {
  content: url("../img/right-caret.svg");
  font-size: 14px;
  margin-left: 10px;
}

.old-price{
  text-decoration: line-through;
}
.social-icon{
  height: 25px;
}

.legal-footer-gap {
  gap: 20px
}

footer .dropdown-menu.show {
  width: 100% !important;
}

footer .payment-icon{
  height: 32px;
  margin-right: 8px;
}

/*

FAQ

*/

.faq_area {
    position: relative;
    z-index: 1;
    background-color: #ffffff;
}

.faq-accordian {
    position: relative;
    z-index: 1;
    max-height: 480px;
    overflow: hidden;
    transition: max-height 0.5s ease-out;
}

.faq-accordian .read-more {
    color: beige;
    z-index: 5;
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    position: absolute;
    bottom: 0%;
    left: 0;
    width: 100%;
    text-align: center;
    height: 100px;
}


.faq-accordian .card {
    position: relative;
    z-index: 1;
    margin-bottom: 1rem;
}
.faq-accordian .card:last-child {
    margin-bottom: 0;
}
.faq-accordian .card .card-header {
    background-color: #ffffff;
    padding: 0;
    border-bottom: 0;
}
.faq-accordian .card .card-header h6 {
    cursor: pointer;
    padding: 1.75rem 2rem;
    /*color: var(--secondary-color);*/
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: 700;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-grid-row-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.faq-accordian .card .card-header h6.collapsed::after{
    font-family: "Font Awesome 5 Free";
    content: "\f078";
    color: var(--black-color);
    font-size: 12px;
}

.faq-accordian .card .card-header h6::after{
    font-family: "Font Awesome 5 Free";
    content: "\f053";
    color: var(--secondary-color);
    font-size: 12px;
}

.faq-accordian .card .card-header h6 span {
    font-size: 1.5rem;
}

.faq-accordian .card  {
    border-radius: 10px !important;
}

.faq-accordian .card:has(div.show){
  border: var(--secondary-color) 1px solid !important;
}

.faq-accordian .card .card-header h6.collapsed {
    color: #212529;
}
.faq-accordian .card .card-header h6.collapsed span {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
}
.faq-accordian .card .card-body {
    padding: 0 2rem 1.75rem 2rem;
    font-family: Inter;
    font-size: 16px;
}
.faq-accordian .card .card-body p:last-child {
    margin-bottom: 0;
}

@media only screen and (max-width: 575px) {
    .support-button p {
        font-size: 14px;
    }
}


/*

PROFILES

*/

.wrapper{
    min-height: 100vh;;
    background-color: var(--background-color);
}

.content{
    padding: 20vh 0px;
}

.content .card{
    box-shadow: 4px 14px 24px rgba(39,44,49,.04), 0 3px 5px rgba(39,44,49,.05);
    border: none;
    border-radius: 10px;
    transition: all .2s ease-in-out;
}

.content .menu .card:hover{
    transform: translateY(-2px);
}

.content .menu a:hover{
    text-decoration: none;
}


#signup .card-logo{
    width: 150px;
    padding: 10px;
    padding-bottom: 0px;
}

#signup .card-image, .profile .card-image{
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    height: 475px;
    max-height: 100%;
    position: absolute;
    bottom: 0;
    object-fit: cover;
}

.city-tooltip-container{
  border-radius: 5px;
  border: 1px solid var(--main-color);
  background-color: rgba(var(--main-color-rgb), 0.1);
  color: var(--black-color);
  font-size: 14px;
}

div.hero-wrapper{
    margin-top: 0px!important;
    margin-bottom: 20px!important;
}
.card-button{
    position: absolute;
    top: 0;
    right: -5px;
    background-color: var(--main-color);
    box-shadow: 4px 14px 24px rgba(39,44,49,.04), 0 3px 5px rgba(39,44,49,.05);
    padding: 5px;
    color: white;
    border-radius: 5px;
}

.btn-outline-danger{
    color: var(--secondary-color);
    border-color: var(--secondary-color);
}

.btn-outline-danger:hover{
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}

.profile-welcome{
    float: left;
}

.profile-header{
    padding-left: 10px;
}
.profile-stats ul{
    width: 100%;
}
.profile .profile-stats li{
    padding-top: 10px;
}


.profile .subscription {
    background-color: white;
    color: var(--main-color);
    border-color: red;
    padding-top:7px;
    border-radius: 10px;
    margin-left: 0px;
    margin-right: 0px;
}

.profile .subscription-type{
  background-color: var(--secondary-color);
  margin-top: -30px;
  margin-left: 0px;
  border-radius: 50%;
  height: 80px;
  width: 80px;
  text-align: center;
  box-shadow: 4px 14px 24px rgba(39,44,49,.04), 0 3px 5px rgba(39,44,49,.05);
}

.profile .subscription-type:before{
  content:" ";
  position: absolute;
  height:80px;
  width:80px;
  border-radius: 50%;
  left: 13px;
  border: 1px solid black;
}

.profile .subscription-type p{
  padding-top: 20px;
  font-size: 14px;
  color: white;
  font-family: var(--header-font);
}
.profile .subscription a{
  transition: 0.2s;
}

.profile ul{
  padding-left: 0px;
  list-style: none;
    width: 100%;
}
.profile ul li{
  padding: 0px 0px
}
.profile ul img{
  max-width: 25px;
  margin-top: -10px;
  margin-right: 5px;
}
.profile .subscription-stats{
  padding: 0px;
}

.whatsapp-web img, .whatsapp-mobile img{
  max-height: 25px;
}

@media only screen and (max-width:575.98px){
  .profile .subscription-type{
    margin-left: auto;
  }
  .profile .subscription-type::before{
    right:13px;
    left: unset;
  }
  .content{
    padding: 5vh 0px;
  }
  .whatsapp-mobile{
    display: inline;
  }
  .whatsapp-web{
    display: none;
  }
}

@media only screen and (min-width:575.98px){
  .whatsapp-mobile{
    display: none;
  }
  .whatsapp-web{
    display: inline;
  }
}



/*

FORMS

*/
.feature-img{
  width: 20px;
  height: 20px;
}

.w3-round-large {
  border-radius: 8px;
}
.w3-light-grey{
  position: relative;
  color: #000!important;
  background-color: #f1f1f1!important;
}

.w3-container, .w3-panel {
  padding: 0.01em 16px;
}

.progress-bar.normal-bar{
  padding-bottom: 0px;
}

.perfect-bar{
  height: 7px;
  position: absolute;
  bottom: 0px;
}

.progress-bar, .perfect-bar{
  transition: 0.2s ease-in-out;
  color: white;
  background-color: var(--secondary-color);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  transition: width .6s ease;

}
.progress-bar.poor, .progress-bar.perfect-bar.good{
  background-color: var(--secondary-color);
}
.progress-bar.medium{
  background-color: #0a806cb6;
}
.progress-bar.good, .progress-bar.perfect-bar.poor{
  background-color: var(--secondary-color);
}

/* 

Home page

*/

.tab-pane .card{
  background-color: var(--background-color);
  border: none;
  border-radius: 16px;
  box-shadow: none;
}

.tab-pane .card-body{
  padding: 1.5rem 1rem;
}
.tab-pane .card-body .sub-heading{
  font-size: 1.25rem;
  font-weight: 600;
  display: flex;
  align-items: top;
}

@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .tab-pane .card-body .sub-heading{
    min-height: 3rem; /* Ensures consistent height for 1-2 line headings */
  }
}

.product-section .nav-pills {
  border: 1px solid #E7E7E7;
  border-radius: 40px;
  padding: 5px;
}
.product-section .nav-pills a.nav-link{
  color: var(--black-color);
  padding: 0.75rem 1rem;
}
.product-section .nav-pills a.nav-link.active{
  color: white;
  background-color: var(--secondary-color);
  border-radius: 40px;
}

/* Make the who-it-for tabs scroll by moving the OUTER container */
@media only screen and (max-width: 767.98px) {
  .whoitfor-tabs-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; /* Firefox */
    margin-right: -15px; /* bleed the bordered container to the right */
  }
  .whoitfor-tabs-wrap::-webkit-scrollbar { /* WebKit */
    display: none;
  }
  .whoitfor-tabs-wrap .nav {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    justify-content: flex-start !important;
    gap: 6px;
    width: max-content;
  }
}

/*

SIGNUP

*/


.form label{
  display: inline;
}

/*

PAYMENTS

*/

.btn-none{
  border: none;
  background-color: transparent;
  color: var(--secondary-color)
}

#payment h1{
  font-size: 2rem;
}
#payment p{
  font-family: var(--header-font);
}

.subscription-title{
  font-size: 18px;
  font-weight: 600;
}


.payment-badge{
  max-width: 100%;
}
.mollie-badge{
  max-width: 250px;
}

.content-text{
  background-color: white;
  box-shadow: 4px 14px 24px rgba(39,44,49,.04), 3px 3px 5px rgba(39,44,49,.05);

}

.price-card{
  border: 3px solid #F1F1F1;
  text-align: center;
  transition: 0.2s;
  padding: 10px;
  cursor: pointer;
}
.price-card p {
  font-family: var(--header-font);
}

.price-card.selected{
  border: 3px solid var(--main-color)
}

.price-card .btn-primary{
  padding: 5px 30px;
  font-size: 14px;
  font-family: var(--header-font);
}

.price-header{
  background-color: white;
  margin-top: -25px;
  width: 140px;
  margin-left: auto;
  margin-right: auto;
}

.price-card p {
  font-size: 14px;
}
.price-card .price{
  font-size: 16px;
  margin-bottom: 0.5rem;
}

.upper-price{
  font-size: 20px;
}

.price-trapezoid{
  position: relative;
  width: 100px;
  margin-left: auto;
  margin-right: auto;
}

.price-header p{
  color: white;
  background-color: var(--secondary-color);
  margin-left: auto;
  margin-right: auto;
}
.trapezoid-left{
  position: absolute;
  top: 0px;
  width: 0px;
  height: 0px;
  border-top: 21px solid var(--secondary-color);
  left: -5px;
  border-left: 6px solid transparent;
}
.trapezoid-right{
  position: absolute;
  top: 0px;
  width: 0px;
  height: 0px;
  border-top: 21px solid var(--secondary-color);
  right: -5px;
  border-right: 6px solid transparent;
}


#startPayment:hover .fa-arrow-right {
  transform: translateX(5px);
}


.proof-row{
  height: 250px;
  overflow-y: hidden;
}

@media only screen and (max-width:575.98px){
  .proof-row{
    height: 275px;
  }

  #payment h1{
    font-size: 28px;
    padding: 5px;
    margin-top: -8%;
    background-color: white;
  }
}

.proof-testimonial{
  border-radius: 5px;
  border: 3px solid var(--main-color)
}

.invoice{
  margin-top: 10vh;
}
.invoice-table{
  border-radius: 10px;
  background-color: white;
  box-shadow: 4px 14px 24px rgba(39,44,49,.04), 0 3px 5px rgba(39,44,49,.05);
  padding: 30px;
}

.invoice-table table{
  width: 100%;
}
.invoice-table thead{
  border-bottom: 1px solid #f9f9f9;
}
.invoice-table td{
  padding: 5px;
}
.invoice-table tfoot{
  border-top: 1px solid var(--main-color);
}

#payment-form p{
  margin-bottom: -5px;

}
#payment-form small{
  color: #212525;
}

.payment-container {
  overflow: hidden;
  transition: height 0.25s ease-in-out;
}

/* Checkout animations */

.subscription-selection,
.checkout-section {
  transition: transform 0.3s ease-in-out, opacity 0.1s ease-in-out;
  position: relative;
  width: 100%;
}

.subscription-selection {
  transform: translateX(0);
  opacity: 1;
}

.subscription-selection.slide-left {
  transform: translateX(-100%);
  opacity: 0;
  position: absolute;
  visibility: hidden;
}

.checkout-section {
  transform: translateX(100%);
  opacity: 0;
  display: none;
}

.checkout-section.slide-in {
  transform: translateX(0);
  opacity: 1;
  display: block;
}
/* Listing page */

.seo-title{
  font-size: 1rem;
  font-weight: normal;
  padding: 1rem;
  line-height: inherit;
}

@media (min-width: 576px){
  .modal-dialog {
      max-width: 1000px;
      margin: 1.75rem auto;
  }
}

@media (max-width: 576px){
  .modal-dialog-end{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: end;
    min-height: calc(100%);

  }
}



.status{
  position: absolute;
  top: 10px;
  left: 25px;
  padding: 0.1rem 1.1rem;
  background-color: var(--blue-color);
  color: white;
  font-size: 0.75rem;
  font-weight: bold;
  border-radius: 5px;
}

.is-viewed-banner{
  position: absolute;
  top: 10px;
  left: 25px;
  padding: 0.1rem 1.1rem;
  background-color: var(--background-color);
  color: var(--secondary-color);
  font-size: 0.75rem;
  font-weight: bold;
  border-radius: 5px;
}

.rented-out-banner{
  position: absolute;
  font-size: 0.75rem;
  font-weight: bold;
  border-radius: 5px;
  color: var(--black-color);
}

.house-card-site{
  background-color: var(--blue-color);
  color: white;
}
.house-card-time{
  position: absolute;
  top: 5;
  left: 5;
  padding: 0px 10px;
  margin: 0.75rem;
}


.breadcrumbs-wrapper{
  color: black;
}
.breadcrumbs-wrapper a{
  color: var(--secondary-color);
}
.breadcrumb{
  background-color: transparent;
  margin-bottom: 0;
}
.breadcrumb-item +  .breadcrumb-item::before {
  content: "/";
  color: black;
}

.video-player{
  height: 400px;
  object-fit: cover;
}
.cta-image{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Media query for breadcrumb on smaller screens */
@media only screen and (max-width:575.98px){
  .breadcrumb{
    padding: 0 0;
    padding-top: 0.75rem;
  }
  .seo-title{
    padding: 0.5rem 0rem;
    margin: 0;
  }
  .breadcrumb-item +  .breadcrumb-item{
    padding-left: 0.2rem;
  }
  .breadcrumb-item +  .breadcrumb-item::before {
    padding-right: 0.1rem;
  }
  .video-player{
    height: 250px;
  }
  .cta-image{
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
  }
}

.filters.navbar .navbar-nav li a{
  color: var(--secondary-color);
}
.filters.navbar .navbar-nav li a.active{
  font-weight: bold;
}

.blurry-text {
  color: transparent;
  text-shadow: 0 0 4px rgba(0,0,0,0.5);
}
.blurry-text:hover {
  color: transparent;
  text-shadow: 0 0 4px rgba(0,0,0,0.5);
}

.hidden-house{
  cursor: pointer;
}
.hidden-house .progress-bar{
  background-color: var(--blue-color);
}


.hidden-house-image {
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  width: 100%;
  height: 100%;
}
.hidden-house-image img {
  -webkit-filter: blur(5px);
}

.hidden-house-lock{
  position: absolute;
  /* Center the div in the parent div */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  border-radius: 10px;
  color: black;
  line-height: 1;
  z-index: 10;
}




label {
    width: 100%;
    font-size: 1rem;
  }
.card-select{
  position: relative;
}

  .card-input-element+.card {
    color: var(--black-color);
    border: 1px solid #fff;
    border-radius: 10px;
    transition: all .2s ease-in-out;
  }
  .card-input-element+.card.payment-card {
    border: 1px solid #E7E7E7;
  }

  .card-input-element+.card:hover {
    cursor: pointer;
    transform: translateY(-2px);
  }

  .card-input-element:checked+.card {
    border: 1px solid var(--secondary-color);
    -webkit-transition: border .3s;
    -o-transition: border .3s;
    transition: border .3s;
    transition: all .2s ease-in-out;
  }

  .card-input-element:checked+.card:hover {
    transform: translateY(-2px);

  }
  .card-input-element+.card .card-select::before {
    content: '\f1db';
    color: lightgray;
    font-family: 'Font Awesome 5 Free';
    font-size: 24px;

  }
  .card-input-element.input-checkbox+.card .card-select::before {
    content: '\f0c8';
    color: var(--secondary-color);
    font-family: 'Font Awesome 5 Free';
    font-size: 24px;
  }

  .card-input-element:checked+.card .card-select::before {
    content: url("../img/selected_radio.svg");
    color: var(--secondary-color);
    font-family: 'Font Awesome 5 Free';
    font-size: 24px;
    -webkit-animation-name: fadeInCheckbox;
    animation-name: fadeInCheckbox;
    -webkit-animation-duration: 0s;
    animation-duration: 0s;
    -webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);

    transform: translateY(4px);
  }

  .card-input-element.input-checkbox:checked+.card .card-select::before {
    content: '\f14a';
    color: var(--secondary-color);
    font-family: 'Font Awesome 5 Free';
    font-size: 24px;
    -webkit-animation-name: fadeInCheckbox;
    animation-name: fadeInCheckbox;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);


  }
  label .card img{
    position: absolute;
    top: -5%;
    right: 0;
  }

  label sup{
    font-weight: bold;
  }





  @-webkit-keyframes fadeInCheckbox {
    from {
      opacity: 0;
      -webkit-transform: rotateZ(-20deg);
    }
    to {
      opacity: 1;
      -webkit-transform: rotateZ(0deg);
    }
  }

  @keyframes fadeInCheckbox {
    from {
      opacity: 0;
      transform: rotateZ(-20deg);
    }
    to {
      opacity: 1;
      transform: rotateZ(0deg);
    }
  }


/* Moving Checklist */
#moving_checklist .list-group-item{
  background-color: unset;
  border: none;
}

/* 

Review page and discount page

*/

.image-container {
  overflow: hidden;
}
.image-container img {
  transition: transform 0.6s ease;
}


/* Listing page */

.listing-house-image{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; /* Ensures the image behaves as a block element */
  max-height: 275px;
}
.price-label{
  position: absolute;
  bottom:5px;
  padding: 5px;
  padding-right: 10px;
  color: white;
  background-color: rgb(10, 128, 108, 0.9);
  border-top-right-radius: 10%;
  border-bottom-right-radius: 10%;
}

.error-box {
  border: unset;
  background: rgba(244, 93, 72, 0.15);
  border: 1px solid var(--secondary-color) !important;
}

#insufficient-matches {
  text-align: center;
  font-family: Space Grotesk;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
}

.error-text {
  color: #FC0E0E;
  text-align: center;
  font-family: Space Grotesk;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
}

.header-font {
  font-family: var(--header-font);
}

.underlined {
  text-decoration: underline;
}


.radius-toast {
  position: absolute;
  top: -50px;
  left: 50%;
  transform: translateX(-50%);
  background-color: var(--main-color);
  z-index: 901;
  color: #fff;
  padding: 5px 15px;
  border-radius: 5px;
  opacity: 0;
  width: max-content; 
  transition: all 0.3s ease-in-out;
  pointer-events: none;
}

.radius-toast.show {
  top: 5px;
  opacity: 1;
}

#neighborhood-tooltip {
  position: absolute;
  transform: none;
  background-color: rgba(0, 0, 0, 0.75);
  color: white;
  padding: 5px 10px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  z-index: 2000;
  pointer-events: none;
  max-width: 200px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  opacity: 1;
  transition: opacity 0.2s ease;
}

.map-loading-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 900;
}

.map-loading-overlay p {
  transition: all 0.3s ease-in-out;
}

.spinner-border {
  width: 3rem;
  height: 3rem;
}

/* BS4 Grid XXL breakpoint */

.card-body-small {
  padding: 1rem;
}

/* adding col-xxl */
.col-xxl, .col-xxl-1, .col-xxl-2, .col-xxl-3, .col-xxl-4, .col-xxl-5, .col-xxl-6, .col-xxl-7, .col-xxl-8, .col-xxl-9, .col-xxl-10, .col-xxl-11, .col-xxl-12, .col-xxl-auto {position: relative; width: 100%; padding-right: 15px; padding-left: 15px;}

@media (min-width: 1570px){

  /* grid columns xxl */
  .col-xxl {-ms-flex-preferred-size: 0; flex-basis: 0; -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; max-width: 100%;}
  .col-xxl-auto {-webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; width: auto; max-width: none;}
  .col-xxl-1 {-webkit-box-flex: 0; -ms-flex: 0 0 8.333333%; flex: 0 0 8.333333%; max-width: 8.333333%;}
  .col-xxl-2 {-webkit-box-flex: 0; -ms-flex: 0 0 16.666667%; flex: 0 0 16.666667%; max-width: 16.666667%;}
  .col-xxl-3 {-webkit-box-flex: 0; -ms-flex: 0 0 25%; flex: 0 0 25%; max-width: 25%;}
  .col-xxl-4 {-webkit-box-flex: 0; -ms-flex: 0 0 33.333333%; flex: 0 0 33.333333%; max-width: 33.333333%;}
  .col-xxl-5 {-webkit-box-flex: 0; -ms-flex: 0 0 41.666667%; flex: 0 0 41.666667%; max-width: 41.666667%;}
  .col-xxl-6 {-webkit-box-flex: 0; -ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}
  .col-xxl-7 {-webkit-box-flex: 0; -ms-flex: 0 0 58.333333%; flex: 0 0 58.333333%; max-width: 58.333333%;}
  .col-xxl-8 {-webkit-box-flex: 0; -ms-flex: 0 0 66.666667%; flex: 0 0 66.666667%; max-width: 66.666667%;}
  .col-xxl-9 {-webkit-box-flex: 0; -ms-flex: 0 0 75%; flex: 0 0 75%; max-width: 75%;}
  .col-xxl-10 {-webkit-box-flex: 0; -ms-flex: 0 0 16.666667%; flex: 0 0 16.666667%; max-width: 16.666667%;}
  .col-xxl-11 {-webkit-box-flex: 0; -ms-flex: 0 0 16.666667%; flex: 0 0 16.666667%; max-width: 16.666667%;}
  .col-xxl-12 {-webkit-box-flex: 0; -ms-flex: 0 0 16.666667%; flex: 0 0 16.666667%; max-width: 16.666667%;}

  /* order xxl */
  .order-xxl-0 {-webkit-box-ordinal-group: 1; -ms-flex-order: 0; order: 0;}
  .order-xxl-1 {-webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1;}
  .order-xxl-2 {-webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2;}
  .order-xxl-3 {-webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3;}
  .order-xxl-4 {-webkit-box-ordinal-group: 5; -ms-flex-order: 4; order: 4;}
  .order-xxl-5 {-webkit-box-ordinal-group: 6; -ms-flex-order: 5; order: 5;}
  .order-xxl-6 {-webkit-box-ordinal-group: 7; -ms-flex-order: 6; order: 6;}
  .order-xxl-7 {-webkit-box-ordinal-group: 8; -ms-flex-order: 7; order: 7;}
  .order-xxl-8 {-webkit-box-ordinal-group: 9; -ms-flex-order: 8; order: 8;}
  .order-xxl-9 {-webkit-box-ordinal-group: 10; -ms-flex-order: 9; order: 9;}
  .order-xxl-10 {-webkit-box-ordinal-group: 11; -ms-flex-order: 10; order: 10;}
  .order-xxl-11 {-webkit-box-ordinal-group: 12; -ms-flex-order: 11; order: 11;}
  .order-xxl-12 {-webkit-box-ordinal-group: 13; -ms-flex-order: 12; order: 12;}

  /* text-align xxl */
  .text-xxl-center {text-align: center!important;}
  .text-xxl-left {text-align: left!important;}
  .text-xxl-right {text-align: right!important;}

  /* float xxl */
  .float-xxl-left {float: left!important;}
  .float-xxl-right {float: right!important;}
  .float-xxl-none {float: none!important;}

  /* display xxl */
  .d-xxl-none {display: none!important;}
  .d-xxl-inline {display: inline!important;}
  .d-xxl-inline-block {display: inline-block!important;}
  .d-xxl-block {display: block!important;}
  .d-xxl-table {display: table!important;}
  .d-xxl-table-cell {display: table-cell!important;}
  .d-xxl-table-row {display: table-row!important;}
  .d-xxl-flex {display: flex!important;}
  .d-xxl-inline-flex {display: inline-flex!important;}

  /* offsets xxl */
  .offset-xxl-1 {margin-left: 8.333333%;}
  .offset-xxl-2 {margin-left: 16.666667%;}
  .offset-xxl-3 {margin-left: 25%;}
  .offset-xxl-4 {margin-left: 33.333333%;}
  .offset-xxl-5 {margin-left: 41.666667%;}
  .offset-xxl-6 {margin-left: 50%;}
  .offset-xxl-7 {margin-left: 58.333333%;}
  .offset-xxl-8 {margin-left: 66.666667%;}
  .offset-xxl-9 {margin-left: 75%;}
  .offset-xxl-10 {margin-left: 83.333333%;}
  .offset-xxl-11 {margin-left: 91.666667%;}

  /* spacing xxl */
  .m-xxl-0{margin:0!important}.mt-xxl-0,.my-xxl-0{margin-top:0!important}.mr-xxl-0,.mx-xxl-0{margin-right:0!important}.mb-xxl-0,.my-xxl-0{margin-bottom:0!important}.ml-xxl-0,.mx-xxl-0{margin-left:0!important}.m-xxl-1{margin:.25rem!important}.mt-xxl-1,.my-xxl-1{margin-top:.25rem!important}.mr-xxl-1,.mx-xxl-1{margin-right:.25rem!important}.mb-xxl-1,.my-xxl-1{margin-bottom:.25rem!important}.ml-xxl-1,.mx-xxl-1{margin-left:.25rem!important}.m-xxl-2{margin:.5rem!important}.mt-xxl-2,.my-xxl-2{margin-top:.5rem!important}.mr-xxl-2,.mx-xxl-2{margin-right:.5rem!important}.mb-xxl-2,.my-xxl-2{margin-bottom:.5rem!important}.ml-xxl-2,.mx-xxl-2{margin-left:.5rem!important}.m-xxl-3{margin:1rem!important}.mt-xxl-3,.my-xxl-3{margin-top:1rem!important}.mr-xxl-3,.mx-xxl-3{margin-right:1rem!important}.mb-xxl-3,.my-xxl-3{margin-bottom:1rem!important}.ml-xxl-3,.mx-xxl-3{margin-left:1rem!important}.m-xxl-4{margin:1.5rem!important}.mt-xxl-4,.my-xxl-4{margin-top:1.5rem!important}.mr-xxl-4,.mx-xxl-4{margin-right:1.5rem!important}.mb-xxl-4,.my-xxl-4{margin-bottom:1.5rem!important}.ml-xxl-4,.mx-xxl-4{margin-left:1.5rem!important}.m-xxl-5{margin:3rem!important}.mt-xxl-5,.my-xxl-5{margin-top:3rem!important}.mr-xxl-5,.mx-xxl-5{margin-right:3rem!important}.mb-xxl-5,.my-xxl-5{margin-bottom:3rem!important}.ml-xxl-5,.mx-xxl-5{margin-left:3rem!important}
  .p-xxl-0{padding:0!important}.pt-xxl-0,.py-xxl-0{padding-top:0!important}.pr-xxl-0,.px-xxl-0{padding-right:0!important}.pb-xxl-0,.py-xxl-0{padding-bottom:0!important}.pl-xxl-0,.px-xxl-0{padding-left:0!important}.p-xxl-1{padding:.25rem!important}.pt-xxl-1,.py-xxl-1{padding-top:.25rem!important}.pr-xxl-1,.px-xxl-1{padding-right:.25rem!important}.pb-xxl-1,.py-xxl-1{padding-bottom:.25rem!important}.pl-xxl-1,.px-xxl-1{padding-left:.25rem!important}.p-xxl-2{padding:.5rem!important}.pt-xxl-2,.py-xxl-2{padding-top:.5rem!important}.pr-xxl-2,.px-xxl-2{padding-right:.5rem!important}.pb-xxl-2,.py-xxl-2{padding-bottom:.5rem!important}.pl-xxl-2,.px-xxl-2{padding-left:.5rem!important}.p-xxl-3{padding:1rem!important}.pt-xxl-3,.py-xxl-3{padding-top:1rem!important}.pr-xxl-3,.px-xxl-3{padding-right:1rem!important}.pb-xxl-3,.py-xxl-3{padding-bottom:1rem!important}.pl-xxl-3,.px-xxl-3{padding-left:1rem!important}.p-xxl-4{padding:1.5rem!important}.pt-xxl-4,.py-xxl-4{padding-top:1.5rem!important}.pr-xxl-4,.px-xxl-4{padding-right:1.5rem!important}.pb-xxl-4,.py-xxl-4{padding-bottom:1.5rem!important}.pl-xxl-4,.px-xxl-4{padding-left:1.5rem!important}.p-xxl-5{padding:3rem!important}.pt-xxl-5,.py-xxl-5{padding-top:3rem!important}.pr-xxl-5,.px-xxl-5{padding-right:3rem!important}.pb-xxl-5,.py-xxl-5{padding-bottom:3rem!important}.pl-xxl-5,.px-xxl-5{padding-left:3rem!important}
  .m-xxl-auto{margin:auto!important}.mt-xxl-auto,.my-xxl-auto{margin-top:auto!important}.mr-xxl-auto,.mx-xxl-auto{margin-right:auto!important}.mb-xxl-auto,.my-xxl-auto{margin-bottom:auto!important}.ml-xxl-auto,.mx-xxl-auto{margin-left:auto!important}

}

.founder-story .video-container {
    width: 100%;
    max-width: 315px; /* Adjust the size as needed */
    overflow: hidden;
    border-radius: 15px; /* Adjust the radius as needed */
}

.founder-story .video-container video {
    width: 100%;
    display: block;
    border-radius: 15px; /* Ensure the video itself also has rounded corners */
}

.founder-story h2 {
  font-size: 40px;
  font-family: var(--header-font);
}

.founder-story p{
  font-family: Inter;
  font-size: 16px;
}

.founder-story p.reason-text{
  font-weight: 500;
}

.stekkies-text {
  color: #FF5B27 !important;
}

.pricing-section {
  background: #FFFFFF !important;
}

.pricing-card {
  background: #F2ECE3;
  max-width: 700px !important;
  border-radius: 20px !important;
}

.btn-search{
  background-color: white;
  color: var(--secondary-color);
  border: none;
  border-radius: 25px;
  padding: 10px 20px;
  cursor: pointer;
  font-weight: bold;
}

.search-box {
  display: flex;
  align-items: center;
  border: 2px solid #FFFFFF;
  border-radius: 25px;
  padding: 0 0 0 20px;
  width: 100%;
  max-width: 500px;
  position: relative;
}

.search-box .city-search-options {
  position: absolute;
  top: 50px;
}

.search-box .city-search-options ul {
  border: 2px #FFF solid;
  border-top: 0;
  min-width: 260px;
  padding: 0 20px 20px;
  max-height: 170px;
  overflow: auto;
  list-style-type: none;
  z-index: 999;
  background-color: var(--secondary-color);
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.search-box .city-search-options ul li {
  padding: 5px 10px;
  cursor: pointer;
  /*border-bottom: 1px white solid;*/
  transition: all 0.3s ease;
  border-bottom: 2px transparent solid;
}

.search-box .city-search-options ul li:hover {
  border-bottom: 2px white solid;
}
.search-box input {
  border: none;
  outline: none;
  background: var(--secondary-color);
  color: white;
  flex: 1;
  padding: 10px;
  /*border-radius: 25px 0 0 25px;*/
}

.search-box input:focus {
  background: var(--secondary-color);
  color: white;
  border: none;
  box-shadow: none;
}

.search-box input::placeholder {
  color: white;
}

.search-box .btn-search {
  background-color: white;
  color: var(--secondary-color);
  border: none;
  border-radius: 0 25px 25px 0;
  padding: 10px 20px;
  cursor: pointer;
  font-weight: bold;
}

.travel-time-input-wrapper {
  position: relative;
}
.travel-time-input-wrapper::after {
  content: '';
  position: absolute;
  top: 20%;
  right: 10px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 2px solid #f3f3f3;
  border-top: 2px solid var(--secondary-color);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  display: none;
}
.travel-time-input-wrapper.loading::after {
  display: block;
}
@keyframes spin {
  0% { transform: translateY(-50%) rotate(0deg); }
  100% { transform: translateY(-50%) rotate(360deg); }
}
#address-suggestions {
  position: absolute;
  width: 100%;
  z-index: 1000;
  max-height: 200px;
}
.address-warning {
  padding: 10px;
  color: #856404;
  background-color: #fff3cd;
  border: 1px solid #ffeeba;
}

.travel-time-sentence select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background: none;
  font-weight: bold;
  padding-right: 15px;
  margin: 0 3px;
  cursor: pointer;
  position: relative;
}
.travel-time-sentence select::-ms-expand {
  display: none;
}
.travel-time-sentence select:focus {
  outline: none;
  box-shadow: none;
}
.travel-time-sentence {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.travel-time-sentence > * {
  margin: 2px 0;
}
.select-wrapper {
  position: relative;
  display: inline-block;
}
.select-wrapper::after {
  content: '\25BC';
  font-size: 0.7em;
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  pointer-events: none;
}

/* New styles for the tab-like filter */
/* Location metric toggle */
.location-metric-toggle {
  background-color: var(--light-grey);
  border-radius: 8px;
  overflow: hidden;
  padding: 5px 5px;
}

.btn-group-toggle .btn {
  background-color: transparent;
  border: none;
  color: #6c757d;
  padding: 1.6% 4%;
  transition: all 0.3s ease;
  font-size: 12px;
}


.btn-group-toggle .btn:hover {
  color: #495057;
}

.btn-group-toggle .btn.active {
  background-color: white;
  color: var(--secondary-color);
  border-radius: 8px!important;
  border-bottom: none;
  box-shadow: var(--heavy-box-shadow);
}

/* Remove outline on focus for all browsers */
.btn-group-toggle .btn:focus {
  outline: none;
  box-shadow: none;
}

/* Custom focus styles for accessibility */
.btn-group-toggle .btn:focus-visible {
  outline: 2px solid #ff6600;
  outline-offset: 2px;
}

.btn-group-toggle .btn i {
  margin-right: 5px;
}

/* Update styles for the polygon list to match the button group */
.polygon-list {
  background-color: var(--light-grey);
  border-radius: 8px;
  overflow: hidden;
  padding: 5px 5px;
}

.polygon-item {
  display: flex;
  align-items: center;
  background-color: transparent;
  border: none;
  color: #6c757d;
  padding: 1.6% 4%;
  transition: all 0.3s ease;
  font-size: 12px;
  border-radius: 8px;
  margin-bottom: 5px;
  box-shadow: var(--heavy-box-shadow);
}

.polygon-item:hover {
  color: #495057;
  background-color: white;
}

.polygon-item .remove-icon {
  margin-left: auto;
  cursor: pointer;
  color: red;
}

/* Custom focus styles for accessibility */
.polygon-item:focus-visible {
  outline: 2px solid #ff6600;
  outline-offset: 2px;
}

.map-controls-container {
  transition: opacity 0.3s ease-in-out;
}

.map-controls {
  bottom: 10px;
  right: 10px;
  display: flex;
  flex-direction: column;
  z-index: 1000;
}

.map-controls button {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  background: white;
  border: 1px solid #ddd;
  padding: 5px 10px;
  border-radius: 4px;
  font-size: 16px;
}

.map-controls button:hover {
  background-color: #f8f9fa;
}

/* Hide container when not in draw mode */
.map-controls-container.hidden {
  opacity: 0.5;
  pointer-events: none;
}



@media (max-width: 767px) {
  #mapFullscreenModal{
    z-index: 999999999;
  }
  #mapFullscreenModal.modal {
    padding-right: 0 !important;
    margin: 0;
  }
}


#mapFullscreenModal .modal-content {
  height: 90vh;
  position: relative;
}

#mapFullscreenModal .modal-header {
  display: none;
}

#mapFullscreenModal .modal-body {
  padding: 0;
  position: relative;
}

#mapFullscreenModal .close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  background: white;
  opacity: 0.8;
  padding: 5px 10px;
  border-radius: 4px;
  margin: 0;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  transition: opacity 0.2s;
}

#mapFullscreenModal .close:hover {
  opacity: 1;
}

#mapFullscreenModal .modal-footer {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: white;
  border-radius: 4px;
  padding: 8px 16px;
  margin: 0;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  z-index: 2;
  border: none;
  width: auto;
}

@media (max-width: 767px) {
  #mapFullscreenModal .modal-footer {
    width: 100%;
    background: transparent;
    padding: 0px;
    box-shadow: none;
  }
}

#enlarged-map {
  width: 100%;
  height: 100%;
}
#enlarged-polygon-list {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  margin-bottom: 8px;
  background-color: white;
}

@media (max-width: 767px) {
  #enlarged-polygon-list {
    background-color: transparent;
  }
  .polygon-list {
    background-color: transparent;
  }

  .mapbox-fullscreen-btn{
    padding: 10px 15px;
  }
}

#enlarged-polygon-list .polygon-item {
  background: #f8f9fa;
  padding: 4px 8px;
  border-radius: 4px;
  margin-right: 8px;
}

#enlarged-polygon-list .remove-icon {
  cursor: pointer;
  margin-left: 5px;
}

.polygon-controls {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.polygon-controls .btn{
  min-width: fit-content;
  font-family: var(--secondary-font);
}

@media only screen and (max-width: 575.98px) {
  .polygon-controls .btn {
    padding: 8px 8px;
  }
}


/*.search-box .btn-search:hover {*/
/*  background-color: #ffe3e1; !* Hover effect for the button *!*/
/*}*/

.inter-font {
  font-family: Inter;
}

.poppins-font {
  font-family: Poppins;
}

.semi-bold {
  font-weight: 600;
}

.medium-bold {
  font-weight: 500;
}

.home-hero-container {
  max-height: 690px;
  overflow: hidden
}

@media screen and (max-width: 1200px) {
  .home-hero-container {
    max-height: 790px ;
  }
}

.most-popular-tag {
  background: rgb(244, 93, 72, 0.2) ;
  color: var(--secondary-color) ;
  font-size: 14px;
  font-weight: 600;
}

.sub-heading {
  font-size: 18px;
}

.product-section .sub-heading {
  line-height: 1.25; 
  display: flex;
  align-items: start;
  margin-bottom: 0.5em; /* Add some space below the heading */
  overflow: hidden; /* Hide any overflow text */
}

.font-normal {
  font-size: 16px;
}

.font-xs {
  font-size: 14px;
}



.cta-heading {
  font-size: 32px;
}

.testimonial-image {
    object-fit: cover;
    border-radius: 10px 10px 0 0;
    max-height: 353px;
}

@media (max-width: 1440px) {

    .testimonial-section .testimonial-image {
        height: 250px ;
    }

    .testimonial-info-bottom {
      height: 250px;
    }
}

@media (max-width: 900px) {

    .testimonial-section .testimonial-image {
        height: 240px;
    }

    .testimonial-info-bottom {
      height: 220px;
    }
}

#ratings, #stars-row span{
    color: #E29F1B;
}

.locale-selector button{
  background: #FFFFFF;
  border-radius: 10px;
}

.cursor-pointer{
  cursor: pointer;
}

@keyframes wiggle {
  0% { transform: rotate(0deg); }
  25% { transform: rotate(5deg); }
  50% { transform: rotate(0deg); }
  75% { transform: rotate(-5deg); }
  100% { transform: rotate(0deg); }
}

.wiggle-animation {
  display: inline-block;
  cursor: pointer;
  animation: wiggle 1s ease-in-out infinite;
}

.wiggle-animation:hover {
  animation: none;
}