.elementor-3641 .elementor-element.elementor-element-7afdf03c:not(.elementor-motion-effects-element-type-background), .elementor-3641 .elementor-element.elementor-element-7afdf03c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://bellavitatulum.com/wp-content/uploads/2025/05/contact-us-Banner.png");background-repeat:no-repeat;background-size:cover;}.elementor-3641 .elementor-element.elementor-element-7afdf03c{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-3641 .elementor-element.elementor-element-7afdf03c > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-3641 .elementor-element.elementor-element-2e00c63f > .elementor-widget-container{margin:120px 0px 120px 0px;}.elementor-3641 .elementor-element.elementor-element-2e00c63f.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3641 .elementor-element.elementor-element-2e00c63f{text-align:center;}.elementor-3641 .elementor-element.elementor-element-2e00c63f .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:600;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1em;letter-spacing:0px;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-3641 .elementor-element.elementor-element-069e680.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3641 .elementor-element.elementor-element-a95ad60.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3641 .elementor-element.elementor-element-bac4e80.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3641 .elementor-element.elementor-element-22ee74f.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3641 .elementor-element.elementor-element-52e31d3.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3641 .elementor-element.elementor-element-1c5edfe.xpro-widget-bg-overlay:before{transition:background 0.3s;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-3641 .elementor-element.elementor-element-2e00c63f .elementor-heading-title{font-size:30px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-3641 .elementor-element.elementor-element-2e00c63f .elementor-heading-title{font-size:25px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}}/* Start custom CSS for text-editor, class: .elementor-element-069e680 *//* VILLA SECTION */
.villa-section {
  padding: 20px 0;
}

.villa-type {
    font-size: 18px;
    color: #000000;
    margin-bottom: 6px;
    font-weight: 400;
}

/* HEADER */
.villa-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}

.villa-title {
  font-size: 42px;
  color: #C29825;
  font-weight: 700;
  margin: 0;
}

.book-btn {
background-color: #C29825;
    color: #ffffff;
        border: 1px solid #ffffff;
    font-family: "Poppins", Sans-serif;
    font-size: 16px;
    font-weight: normal;
    text-transform: uppercase;
    font-style: normal;
    text-decoration: none;
    line-height: 1em;
    letter-spacing: 0px;
    border-style: double;
    border-radius: 0px 0px 0px 0px;
    padding: 018px 30px 018px 30px;
}

/* STATS */
.villa-stats {
  display: flex;
  gap: 22px;
  margin: 18px 0 24px;
  flex-wrap: wrap;
font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;
}

.stat-item {
  display: flex;
  align-items: center;
  gap: 8px;
}
.stat-item .fa {
    color: #555555;
}

/* DESCRIPTION */
.villa-description {
  max-width: 100%;
font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;
}

.villa-description p {
  margin-bottom: 14px;
}

/* HIGHLIGHTS */
.villa-highlights-title {
  margin-top: 36px;
  font-size: 20px;
  font-weight: 600;
}

.villa-highlights {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 12px;
}

.highlight-chip {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border: 1px solid #374151;
  border-radius: 999px;
font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;;
}

/* =====================
   RESPONSIVE
===================== */
@media (max-width: 767px) {
  .villa-title {
    font-size: 32px;
  }

  .villa-header {
    align-items: flex-start;
  }

  .villa-stats {
    gap: 14px;
  }
  .villa-description {
      font-size: 13px;
      line-height: 24px;
  }
  .villa-stats {
      font-size: 13px;
      line-height: 24px;
}
.highlight-chip {
      font-size: 13px;
      line-height: 24px;
}
}

@media (max-width: 480px) {
  .villa-title {
    font-size: 26px;
  }

  .book-btn {
    width: auto;
    font-size: 14px;
    text-align: center;
    padding: 10px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a95ad60 *//* SLEEPING ARRANGEMENTS */
.sleeping-feature-section {

  margin-top: 20px;
}

.sleeping-title {
font-weight: 600;
    margin-bottom: 20px;
    color: #C29825;
    margin: 1.215rem 0 1rem;
}

/* GRID */
.sleeping-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11em, 1fr));
  gap: 20px;
}

/* CARD */
.sleep-card {
  border: 1px solid #e0e0e0;
  padding: 16px;
  min-height: 120px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.sleep-card .fa {
    color:#555555;
}

.sleep-card p {
  
  margin: 10px 0 0;
  max-width: 100%;
    font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 700;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;
}

/* ICON */
.sleep-icon {
  font-size: 28px;
  color: #333;
  margin-bottom: 12px;
}

/* =====================
   RESPONSIVE
===================== */
@media (max-width: 767px) {
  .sleeping-title {
    font-size: 1.4rem;
  }

  .sleep-card {
    min-height: 100px;
  }
  .sleep-card p {
      font-size: 13px;
      line-height:24px;
  }
}

@media (max-width: 480px) {
  .sleeping-feature-section {
    padding: 0 12px;
  }

  .sleep-card {
    align-items: flex-start;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bac4e80 *//* AMENITIES */
.amenities-wrapper {
  padding: 20px 0px 0px 0px;
}

.amenities-title {
font-weight: 600;
    margin-bottom: 20px;
    color: #C29825;
 margin: 1.215rem 0 1rem;
}

/* GRID */
.amenities-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
}

/* ITEM */
.amenity-item p {
  margin: 0;
  font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;
}

/* HEADER */
.amenity-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;
}

.amenity-head .fa, .amenity-head .fas{
  color: #555555;   
}

.amenity-head i {
  font-size: 18px;
  color: #222;
}


/* =====================
   RESPONSIVE
===================== */
@media (max-width: 767px) {
  .amenities-wrapper {
    padding: 16px;
  }

  .amenities-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
    .amenity-item p {
    font-size: 13px;
    line-height:24px;
  }
}

@media (max-width: 480px) {
  .amenities-title {
    font-size: 1.4rem;
  }

  .amenity-head i {
    font-size: 16px;
  }


}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-22ee74f *//* Container */
.house-rules {
  padding: 20px 0px 0px 0px;
}

/* Title */
.section-title {
  font-weight: 600;
    margin-bottom: 20px;
    color: #C29825;
 margin: 1.215rem 0 1rem;
}

/* Wrapper */
.house-rules-wrapper {
  display: flex;
  gap: 50px;
  align-items: flex-start;
  flex-wrap: wrap;
}

/* Left list */
.house-rules-list {
  list-style: none;
  padding: 0;
  margin: 0;
  flex: 1;
  min-width: 280px;
  max-width: 500px;
}

.house-rules-list li {
  display: flex;
  align-items: flex-start;
  gap: 15px;
font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 40px;
    letter-spacing: 0px;
    color: #170D01;
}

.house-rules-list i {
  color: #555;
  margin-top: 10px;
}

/* Right column */
.house-rules-time {
  display: flex;
  flex-direction: column;
  gap: 15px;
  flex: 1;
  min-width: 260px;
}

.time-item {
  display: flex;
  align-items: center;
  gap: 15px;
  font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;
}

.time-item i {
  color: #555;
}

/* Responsive */
@media (max-width: 768px) {
  .house-rules-wrapper {
    gap: 24px;
  }

  .section-title {
    font-size: 1.4rem;
  }
}

@media (max-width: 480px) {
  .house-rules {
    padding: 16px;
  }

  .house-rules-list li,
  .time-item {
    font-size: 13px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-52e31d3 *//* Container */
.services-section {
  padding: 20px 0px 0px 0px;
}

/* Title */
.services-title {
  font-weight: 600;
  margin-bottom: 20px;
  color: #C29825;
  margin: 1.215rem 0 1rem;
}

/* Wrapper */
.services-wrapper {
  display: flex;
  gap: 50px;
  align-items: flex-start;
  flex-wrap: wrap;
}

/* Services List */
.services-list {
  list-style: none;
  padding: 0;
  margin: 0;
  flex: 1;
  min-width: 280px;
  max-width: 500px;
}

.services-list li {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  font-family: "Work Sans", Sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 40px;
  color: #170D01;
}

.services-list i {
  color: #555;
  margin-top: 10px;
}

/* Footer text */
.services-note {
display: flex;
    align-items: flex-start;
    gap: 15px;
    font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 40px;
    color: #170D01;
}

/* Responsive */
@media (max-width: 768px) {
  .services-wrapper {
    gap: 24px;
  }

  .services-title {
    font-size: 1.4rem;
  }
}

@media (max-width: 480px) {
  .services-section {
    padding: 16px;
  }

  .services-list li, .services-note {
    font-size: 13px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1c5edfe */.policy-notes {
  padding: 20px 0px 0px 0px;
}

.section-title {
 font-weight: 600;
    margin-bottom: 20px;
    color: #C29825;
  margin: 1.215rem 0 1rem;
}

.policy-wrapper {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
  margin-bottom: 32px;
}

.policy-column {
  flex: 1;
  min-width: 280px;
  max-width: 520px;
}

.policy-title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 12px;
}

.policy-column p {
font-family: "Work Sans", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 29px;
    letter-spacing: 0px;
    color: #170D01;
 
}

/* Responsive */
@media (max-width: 768px) {
  .policy-wrapper {
    gap: 24px;
  }
  .section-title {
    font-size: 1.4rem;
  }
  .policy-column p {
    font-size: 13px;
    line-height: 24px;
  }
}/* End custom CSS */