.elementor-3519 .elementor-element.elementor-element-4a45e55 > .elementor-element-populated{padding:0px 20px 0px 0px;}.elementor-3519 .elementor-element.elementor-element-34c74f9 > .elementor-element-populated{padding:0px 20px 0px 0px;}.elementor-3519 .elementor-element.elementor-element-b477670 > .elementor-element-populated{padding:0px 20px 0px 0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-3519 .elementor-element.elementor-element-b09c43b{padding:0px 10px 0px 10px;}}/* Start custom CSS for section, class: .elementor-element-42ee977 */.elementor-3519 .elementor-element.elementor-element-42ee977 {
  position: relative !important;
  width: 100% !important;
  min-height: 100vh !important;
  padding: 100px 40px !important;
  background: transparent !important;
  overflow: hidden !important;
}

/* large transparent gold glow */
.elementor-3519 .elementor-element.elementor-element-42ee977::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 1200px !important;
  height: 1200px !important;
  border-radius: 50% !important;
  background: radial-gradient(
    circle,
    rgba(197, 165, 114, 0.24),
    transparent 70%
  ) !important;
  transform: translate(-50%, -50%) !important;
  animation: zctSimplePulse707 8s ease-in-out infinite !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 > * {
  position: relative !important;
  z-index: 2 !important;
}

/* main 50/50 two-column layout */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 {
  width: 100% !important;
  max-width: 1400px !important;
  margin: 0 auto !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 70px !important;
  align-items: center !important;
}

/* Elementor wrapper fix */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
  width: 100% !important;
  max-width: 1400px !important;
  margin: 0 auto !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 70px !important;
  align-items: center !important;
}

/* force both columns 50/50 */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .elementor-element,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner > .e-con,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner > .elementor-element {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 0 !important;
}

/* remove default widget spacing where needed */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707 .elementor-widget,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-right-707 .elementor-widget {
  margin-bottom: 0 !important;
}

/* LEFT LABEL */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707 p {
  margin: 0 0 28px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #C5A572 !important;
  text-align: left !important;
  animation: zctSimpleFadeDown707 1s ease-out both !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707 p {
  margin-bottom: 0 !important;
}

/* MAIN TITLE */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
  margin: 0 0 30px !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(48px, 5.6vw, 88px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  text-align: left !important;

  background: linear-gradient(135deg, #C5A572, #D4AF37, #C5A572) !important;
  background-size: 220% 220% !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;

  text-shadow: 0 0 34px rgba(197, 165, 114, 0.20) !important;
  animation: zctSimpleShimmer707 5s ease infinite, zctSimpleFadeUp707 1s ease-out 0.25s both !important;
}

/* DESCRIPTION */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc {
  max-width: 680px !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707 p {
  margin: 0 0 44px !important;
  font-family: "Inter", sans-serif !important;
  font-size: clamp(18px, 1.8vw, 24px) !important;
  line-height: 1.85 !important;
  font-weight: 400 !important;
  color: #B8B8B8 !important;
  text-align: left !important;
  animation: zctSimpleFadeUp707 1s ease-out 0.5s both !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707 p {
  margin-bottom: 0 !important;
}

/* DISCUSSION TEXT EDITOR WIDGET */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-editor-707 {
  width: 100% !important;
  max-width: 700px !important;
  animation: zctSimpleFadeUp707 1s ease-out 0.75s both !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-editor-707 .elementor-widget-container {
  margin: 0 !important;
}

/* DISCUSSION BOX HTML */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 {
  position: relative !important;
  width: 100% !important;
  padding: 38px 36px !important;
  border-radius: 26px !important;
  overflow: hidden !important;

  background:
    radial-gradient(circle at 18% 18%, rgba(197, 165, 114, 0.14), transparent 35%),
    linear-gradient(135deg, rgba(197, 165, 114, 0.10), rgba(20, 20, 20, 0.92)) !important;

  border: 2px solid rgba(197, 165, 114, 0.34) !important;

  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.45),
    inset 0 0 55px rgba(197, 165, 114, 0.05) !important;
}

/* moving shine inside discussion box */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: -120% !important;
  width: 70% !important;
  height: 100% !important;
  z-index: 0 !important;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(197, 165, 114, 0.13),
    transparent
  ) !important;

  transform: skewX(-18deg) !important;
  animation: zctSimpleShine707 5s ease-in-out infinite !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 > * {
  position: relative !important;
  z-index: 2 !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 h3 {
  margin: 0 0 22px !important;
  font-family: "Inter", sans-serif !important;
  font-size: clamp(20px, 2vw, 26px) !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  color: #C5A572 !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 li {
  position: relative !important;
  margin: 0 !important;
  padding: 16px 0 16px 38px !important;
  border-bottom: 1px solid rgba(197, 165, 114, 0.12) !important;

  font-family: "Inter", sans-serif !important;
  font-size: 16.5px !important;
  line-height: 1.75 !important;
  font-weight: 500 !important;
  color: #FFFFFF !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 li:last-child {
  border-bottom: none !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 16px !important;
  color: #C5A572 !important;
  font-size: 21px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

/* CALENDAR TEXT EDITOR WIDGET */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-editor-707 {
  width: 100% !important;
  animation: zctSimpleFadeLeft707 1s ease-out 1s both !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-editor-707 .elementor-widget-container {
  margin: 0 !important;
}

/* CALENDAR BOX */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707 {
  position: relative !important;
  width: 100% !important;
  padding: 46px 42px !important;
  border-radius: 32px !important;
  overflow: hidden !important;

  background:
    radial-gradient(circle at 16% 12%, rgba(197, 165, 114, 0.14), transparent 34%),
    linear-gradient(135deg, rgba(24, 24, 24, 0.96), rgba(8, 8, 8, 0.97)) !important;

  border: 2px solid rgba(197, 165, 114, 0.42) !important;

  box-shadow:
    0 30px 85px rgba(0, 0, 0, 0.58),
    0 0 42px rgba(197, 165, 114, 0.20),
    inset 0 0 65px rgba(197, 165, 114, 0.05) !important;

  transition: all 0.45s ease !important;
}

/* top gold line */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 5px !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, #C5A572, #D4AF37, #C5A572) !important;
  background-size: 220% 100% !important;
  animation: zctSimpleGoldLine707 3s linear infinite !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707:hover {
  transform: translateY(-10px) !important;
  border-color: #C5A572 !important;
  box-shadow:
    0 42px 110px rgba(0, 0, 0, 0.68),
    0 0 60px rgba(197, 165, 114, 0.30),
    inset 0 0 80px rgba(197, 165, 114, 0.08) !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707 > * {
  position: relative !important;
  z-index: 3 !important;
}

/* calendar header */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-header-html-707 {
  text-align: center !important;
  margin: 0 0 30px !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-header-html-707 h3 {
  margin: 0 0 14px !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(28px, 2.6vw, 38px) !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #C5A572 !important;
  text-align: center !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-header-html-707 p {
  margin: 0 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 15.5px !important;
  line-height: 1.7 !important;
  color: #B8B8B8 !important;
  text-align: center !important;
}

/* inner calendar placeholder */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 {
  position: relative !important;
  min-height: 560px !important;
  padding: 44px 32px !important;
  border-radius: 22px !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  background: rgba(0, 0, 0, 0.32) !important;
  border: 1px solid rgba(197, 165, 114, 0.24) !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-icon-html-707 {
  margin: 0 0 24px !important;
  font-size: 76px !important;
  line-height: 1 !important;
  text-align: center !important;
  animation: zctSimpleCalendarFloat707 3s ease-in-out infinite !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 h4 {
  margin: 0 0 14px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 24px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  color: #C5A572 !important;
  text-align: center !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 p {
  margin: 0 0 30px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  color: #B8B8B8 !important;
  text-align: center !important;
}

/* calendar button link */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 18px 42px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  text-decoration: none !important;

  background: linear-gradient(135deg, #C5A572, #D4AF37) !important;
  color: #000000 !important;

  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;

  box-shadow: 0 14px 45px rgba(197, 165, 114, 0.38) !important;
  transition: all 0.35s ease !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 a:hover {
  transform: translateY(-3px) scale(1.03) !important;
  box-shadow: 0 18px 60px rgba(197, 165, 114, 0.56) !important;
}

.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 a span {
  position: relative !important;
  z-index: 2 !important;
}

/* animations */
@keyframes zctSimplePulse707 {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.35;
  }

  50% {
    transform: translate(-50%, -50%) scale(1.28);
    opacity: 0.7;
  }
}

@keyframes zctSimpleShimmer707 {
  0%, 100% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }
}

@keyframes zctSimpleFadeDown707 {
  from {
    opacity: 0;
    transform: translateY(-28px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes zctSimpleFadeUp707 {
  from {
    opacity: 0;
    transform: translateY(28px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes zctSimpleFadeLeft707 {
  from {
    opacity: 0;
    transform: translateX(48px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes zctSimpleShine707 {
  0% {
    left: -120%;
  }

  45% {
    left: 120%;
  }

  100% {
    left: 120%;
  }
}

@keyframes zctSimpleGoldLine707 {
  0% {
    background-position: 0% 0%;
  }

  100% {
    background-position: 220% 0%;
  }
}

@keyframes zctSimpleCalendarFloat707 {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-16px);
  }
}

/* tablet */
@media (max-width: 1024px) {
  .elementor-3519 .elementor-element.elementor-element-42ee977 {
    min-height: auto !important;
    padding: 85px 28px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 55px !important;
    max-width: 780px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707 {
    align-items: center !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707 p,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707 p {
    text-align: center !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
    font-size: 58px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-editor-707 {
    max-width: 760px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 {
    min-height: 500px !important;
  }
}

/* mobile */
@media (max-width: 767px) {
  .elementor-3519 .elementor-element.elementor-element-42ee977 {
    padding: 70px 14px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977::before {
    width: 680px !important;
    height: 680px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
    max-width: 100% !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707 p {
    font-size: 12px !important;
    letter-spacing: 2.4px !important;
    margin-bottom: 20px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
    font-size: 36px !important;
    line-height: 1.12 !important;
    margin-bottom: 22px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707 p {
    font-size: 15px !important;
    line-height: 1.65 !important;
    margin-bottom: 30px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 {
    padding: 28px 22px !important;
    border-radius: 22px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 h3 {
    font-size: 19px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 li {
    font-size: 14px !important;
    line-height: 1.6 !important;
    padding-left: 32px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707 {
    padding: 34px 22px !important;
    border-radius: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-header-html-707 h3 {
    font-size: 25px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 {
    min-height: 430px !important;
    padding: 32px 20px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-icon-html-707 {
    font-size: 58px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 h4 {
    font-size: 21px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 p {
    font-size: 14px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 a {
    width: 100% !important;
    padding: 15px 22px !important;
    font-size: 12px !important;
  }
}/* FIX CONTACT HERO 50/50 LAYOUT */

.elementor-3519 .elementor-element.elementor-element-42ee977 {
  width: 100% !important;
  max-width: none !important;
}

/* force Elementor main wrapper full width */
.elementor-3519 .elementor-element.elementor-element-42ee977 > .e-con-inner {
  width: 100% !important;
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* force real 50/50 grid */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 {
  width: 100% !important;
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 70px !important;
  align-items: center !important;
  justify-content: center !important;
}

/* if Elementor creates inner wrapper */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
  width: 100% !important;
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 70px !important;
  align-items: center !important;
}

/* force both columns to become equal */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-right-707 {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 0 !important;
}

/* also force if Elementor column wrappers are direct children */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .elementor-element,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner > .e-con,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner > .elementor-element {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 0 !important;
}

/* reduce heading size slightly so it fits properly inside 50% column */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
  max-width: 620px !important;
  font-size: clamp(48px, 4.7vw, 76px) !important;
  line-height: 1.08 !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* calendar box should fill right 50% column */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-editor-707,
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707 {
  width: 100% !important;
  max-width: none !important;
}

/* left content should not become too narrow */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707 {
  max-width: none !important;
}

/* discussion box width */
.elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-editor-707 {
  width: 100% !important;
  max-width: 700px !important;
}

/* tablet stack */
@media (max-width: 1024px) {
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
    grid-template-columns: 1fr !important;
    max-width: 780px !important;
    gap: 55px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
    max-width: 760px !important;
    font-size: 56px !important;
    text-align: center !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-right-707 {
    width: 100% !important;
  }
}

/* mobile stack */
@media (max-width: 767px) {
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    gap: 42px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
    max-width: 100% !important;
    font-size: 36px !important;
    line-height: 1.12 !important;
    text-align: center !important;
  }
}/* FORCE CONTACT HERO TO BECOME ONE COLUMN ON TABLET + MOBILE */

@media (max-width: 1024px) {

  .elementor-3519 .elementor-element.elementor-element-42ee977 {
    min-height: auto !important;
    padding: 80px 18px 70px !important;
    overflow: hidden !important;
  }

  /* force parent container into single column */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
    width: 100% !important;
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;

    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 45px !important;
    align-items: stretch !important;
  }

  /* force both columns full width */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-right-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .elementor-element,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner > .e-con,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner > .elementor-element {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 100% !important;
    flex-basis: 100% !important;
  }

  /* center left column content on tablet/mobile */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707 {
    align-items: center !important;
    text-align: center !important;
  }

  /* label */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707 p {
    text-align: center !important;
  }

  /* title should not break word-by-word */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
    max-width: 720px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: 54px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  /* description */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707 p {
    max-width: 620px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  /* discussion box full width */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-editor-707 {
    width: 100% !important;
    max-width: 700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* calendar full width below */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-editor-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707 {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* MOBILE ONLY */
@media (max-width: 767px) {

  .elementor-3519 .elementor-element.elementor-element-42ee977 {
    padding: 65px 14px 70px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977::before {
    width: 620px !important;
    height: 620px !important;
  }

  /* single column */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-grid-707 > .e-con-inner {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    gap: 38px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-left-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-right-707 {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* label */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-label-707 p {
    font-size: 12px !important;
    line-height: 1.4 !important;
    letter-spacing: 2.3px !important;
    margin-bottom: 18px !important;
    text-align: center !important;
  }

  /* main title */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-title-707 .elementor-heading-title {
    max-width: 100% !important;
    font-size: 36px !important;
    line-height: 1.13 !important;
    margin-bottom: 20px !important;
    text-align: center !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  /* description */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707,
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-contact-simple-desc-707 p {
    font-size: 15px !important;
    line-height: 1.65 !important;
    text-align: center !important;
    margin-bottom: 28px !important;
  }

  /* discussion box */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 {
    padding: 26px 20px !important;
    border-radius: 22px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 h3 {
    font-size: 19px !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-discussion-box-html-707 li {
    font-size: 14px !important;
    line-height: 1.6 !important;
    padding: 14px 0 14px 32px !important;
  }

  /* calendar box */
  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-box-html-707 {
    padding: 32px 20px !important;
    border-radius: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-header-html-707 h3 {
    font-size: 25px !important;
    line-height: 1.2 !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-header-html-707 p {
    font-size: 14px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 {
    min-height: 420px !important;
    padding: 30px 18px !important;
    border-radius: 20px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-icon-html-707 {
    font-size: 56px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 h4 {
    font-size: 21px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 p {
    font-size: 14px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-42ee977 .zct-calendar-placeholder-html-707 a {
    width: 100% !important;
    padding: 15px 20px !important;
    font-size: 12px !important;
    letter-spacing: 2px !important;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-4a45e55 */.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 {
  position: relative !important;
  min-height: 300px !important;
  padding: 34px 32px !important;
  border-radius: 18px !important;
  overflow: hidden !important;

  background:
    radial-gradient(circle at 20% 15%, rgba(197, 165, 114, 0.10), transparent 32%),
    linear-gradient(135deg, rgba(22, 22, 22, 0.96), rgba(8, 8, 8, 0.98)) !important;

  border: 1px solid rgba(197, 165, 114, 0.32) !important;
  border-top: 3px solid rgba(212, 175, 55, 0.90) !important;

  box-shadow:
    0 18px 45px rgba(0, 0, 0, 0.45),
    inset 0 0 35px rgba(197, 165, 114, 0.035) !important;

  transition: all 0.45s ease !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: -120% !important;
  width: 75% !important;
  height: 100% !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(197, 165, 114, 0.12),
    transparent
  ) !important;
  transform: skewX(-20deg) !important;
  transition: left 0.8s ease !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(
    circle at 50% 0%,
    rgba(212, 175, 55, 0.12),
    transparent 45%
  ) !important;
  opacity: 0 !important;
  transition: opacity 0.45s ease !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520:hover {
  transform: translateY(-10px) !important;
  border-color: rgba(212, 175, 55, 0.65) !important;
  border-top-color: #D4AF37 !important;
  box-shadow:
    0 28px 70px rgba(0, 0, 0, 0.58),
    0 0 35px rgba(197, 165, 114, 0.18),
    inset 0 0 45px rgba(197, 165, 114, 0.06) !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520:hover::before {
  left: 120% !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520:hover::after {
  opacity: 1 !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 > * {
  position: relative !important;
  z-index: 2 !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-card-icon-520 {
  display: block !important;
  font-size: 34px !important;
  line-height: 1 !important;
  margin-bottom: 18px !important;
  color: #FFAE2C !important;
  filter:
    drop-shadow(0 0 8px rgba(255, 174, 44, 0.35))
    drop-shadow(0 0 18px rgba(197, 165, 114, 0.20));
  animation: bcIconFloat520 3.2s ease-in-out infinite;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 h3 {
  margin: 0 0 16px 0 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  color: #C5A572 !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 p {
  margin: 0 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  font-weight: 500 !important;
  color: #B8B8B8 !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 ul {
  margin: 0 !important;
  padding-left: 18px !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 li {
  margin-bottom: 10px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
}

.elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 li:last-child {
  margin-bottom: 0 !important;
}

@keyframes bcIconFloat520 {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-6px);
  }
}

@media (max-width: 1024px) {
  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 {
    min-height: 280px !important;
    padding: 30px 28px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 h3 {
    font-size: 17px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 p {
    font-size: 13.5px !important;
  }
}

@media (max-width: 767px) {
  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 {
    min-height: auto !important;
    padding: 28px 24px !important;
    border-radius: 16px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-card-icon-520 {
    font-size: 30px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 h3 {
    font-size: 17px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 p {
    font-size: 13px !important;
    line-height: 1.7 !important;
  }

  .elementor-3519 .elementor-element.elementor-element-4a45e55 .bc-problem-html-card-520 li {
    font-size: 12.5px !important;
    line-height: 1.55 !important;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-34c74f9 */.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 {
  position: relative !important;
  min-height: 300px !important;
  padding: 34px 32px !important;
  border-radius: 18px !important;
  overflow: hidden !important;

  background:
    radial-gradient(circle at 20% 15%, rgba(197, 165, 114, 0.10), transparent 32%),
    linear-gradient(135deg, rgba(22, 22, 22, 0.96), rgba(8, 8, 8, 0.98)) !important;

  border: 1px solid rgba(197, 165, 114, 0.32) !important;
  border-top: 3px solid rgba(212, 175, 55, 0.90) !important;

  box-shadow:
    0 18px 45px rgba(0, 0, 0, 0.45),
    inset 0 0 35px rgba(197, 165, 114, 0.035) !important;

  transition: all 0.45s ease !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: -120% !important;
  width: 75% !important;
  height: 100% !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(197, 165, 114, 0.12),
    transparent
  ) !important;
  transform: skewX(-20deg) !important;
  transition: left 0.8s ease !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(
    circle at 50% 0%,
    rgba(212, 175, 55, 0.12),
    transparent 45%
  ) !important;
  opacity: 0 !important;
  transition: opacity 0.45s ease !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520:hover {
  transform: translateY(-10px) !important;
  border-color: rgba(212, 175, 55, 0.65) !important;
  border-top-color: #D4AF37 !important;
  box-shadow:
    0 28px 70px rgba(0, 0, 0, 0.58),
    0 0 35px rgba(197, 165, 114, 0.18),
    inset 0 0 45px rgba(197, 165, 114, 0.06) !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520:hover::before {
  left: 120% !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520:hover::after {
  opacity: 1 !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 > * {
  position: relative !important;
  z-index: 2 !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-card-icon-520 {
  display: block !important;
  font-size: 34px !important;
  line-height: 1 !important;
  margin-bottom: 18px !important;
  color: #FFAE2C !important;
  filter:
    drop-shadow(0 0 8px rgba(255, 174, 44, 0.35))
    drop-shadow(0 0 18px rgba(197, 165, 114, 0.20));
  animation: bcIconFloat520 3.2s ease-in-out infinite;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 h3 {
  margin: 0 0 16px 0 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  color: #C5A572 !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 p {
  margin: 0 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  font-weight: 500 !important;
  color: #B8B8B8 !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 ul {
  margin: 0 !important;
  padding-left: 18px !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 li {
  margin-bottom: 10px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
}

.elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 li:last-child {
  margin-bottom: 0 !important;
}

@keyframes bcIconFloat520 {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-6px);
  }
}

@media (max-width: 1024px) {
  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 {
    min-height: 280px !important;
    padding: 30px 28px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 h3 {
    font-size: 17px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 p {
    font-size: 13.5px !important;
  }
}

@media (max-width: 767px) {
  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 {
    min-height: auto !important;
    padding: 28px 24px !important;
    border-radius: 16px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-card-icon-520 {
    font-size: 30px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 h3 {
    font-size: 17px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 p {
    font-size: 13px !important;
    line-height: 1.7 !important;
  }

  .elementor-3519 .elementor-element.elementor-element-34c74f9 .bc-problem-html-card-520 li {
    font-size: 12.5px !important;
    line-height: 1.55 !important;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-b477670 */.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 {
  position: relative !important;
  min-height: 300px !important;
  padding: 34px 32px !important;
  border-radius: 18px !important;
  overflow: hidden !important;

  background:
    radial-gradient(circle at 20% 15%, rgba(197, 165, 114, 0.10), transparent 32%),
    linear-gradient(135deg, rgba(22, 22, 22, 0.96), rgba(8, 8, 8, 0.98)) !important;

  border: 1px solid rgba(197, 165, 114, 0.32) !important;
  border-top: 3px solid rgba(212, 175, 55, 0.90) !important;

  box-shadow:
    0 18px 45px rgba(0, 0, 0, 0.45),
    inset 0 0 35px rgba(197, 165, 114, 0.035) !important;

  transition: all 0.45s ease !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: -120% !important;
  width: 75% !important;
  height: 100% !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(197, 165, 114, 0.12),
    transparent
  ) !important;
  transform: skewX(-20deg) !important;
  transition: left 0.8s ease !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(
    circle at 50% 0%,
    rgba(212, 175, 55, 0.12),
    transparent 45%
  ) !important;
  opacity: 0 !important;
  transition: opacity 0.45s ease !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520:hover {
  transform: translateY(-10px) !important;
  border-color: rgba(212, 175, 55, 0.65) !important;
  border-top-color: #D4AF37 !important;
  box-shadow:
    0 28px 70px rgba(0, 0, 0, 0.58),
    0 0 35px rgba(197, 165, 114, 0.18),
    inset 0 0 45px rgba(197, 165, 114, 0.06) !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520:hover::before {
  left: 120% !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520:hover::after {
  opacity: 1 !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 > * {
  position: relative !important;
  z-index: 2 !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-card-icon-520 {
  display: block !important;
  font-size: 34px !important;
  line-height: 1 !important;
  margin-bottom: 18px !important;
  color: #FFAE2C !important;
  filter:
    drop-shadow(0 0 8px rgba(255, 174, 44, 0.35))
    drop-shadow(0 0 18px rgba(197, 165, 114, 0.20));
  animation: bcIconFloat520 3.2s ease-in-out infinite;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 h3 {
  margin: 0 0 16px 0 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  color: #C5A572 !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 p {
  margin: 0 !important;
  font-family: "Inter", sans-serif !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  font-weight: 500 !important;
  color: #B8B8B8 !important;
  text-align: left !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 ul {
  margin: 0 !important;
  padding-left: 18px !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 li {
  margin-bottom: 10px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
}

.elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 li:last-child {
  margin-bottom: 0 !important;
}

@keyframes bcIconFloat520 {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-6px);
  }
}

@media (max-width: 1024px) {
  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 {
    min-height: 280px !important;
    padding: 30px 28px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 h3 {
    font-size: 17px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 p {
    font-size: 13.5px !important;
  }
}

@media (max-width: 767px) {
  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 {
    min-height: auto !important;
    padding: 28px 24px !important;
    border-radius: 16px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-card-icon-520 {
    font-size: 30px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 h3 {
    font-size: 17px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 p {
    font-size: 13px !important;
    line-height: 1.7 !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b477670 .bc-problem-html-card-520 li {
    font-size: 12.5px !important;
    line-height: 1.55 !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-b09c43b */.elementor-3519 .elementor-element.elementor-element-b09c43b {
  position: relative !important;
  width: 100% !important;
  padding: 90px 40px 110px !important;
  background: transparent !important;
  overflow: hidden !important;
}

/* keep content above particle background */
.elementor-3519 .elementor-element.elementor-element-b09c43b > * {
  position: relative !important;
  z-index: 2 !important;
}

/* 3-column parent */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 {
  width: 100% !important;
  max-width: 1500px !important;
  margin: 0 auto !important;

  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 42px !important;
  align-items: stretch !important;
}

/* Elementor inner wrapper fix */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner {
  width: 100% !important;
  max-width: 1500px !important;
  margin: 0 auto !important;

  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 42px !important;
  align-items: stretch !important;
}

/* force each column/card to occupy equal width */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con,
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .elementor-element,
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner > .e-con,
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner > .elementor-element,
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303 {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  flex: 1 1 0 !important;
}

/* main card column design */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303 {
  position: relative !important;
  padding: 0 !important;
  border-radius: 28px !important;
  overflow: hidden !important;

  background:
    radial-gradient(circle at 18% 14%, rgba(197, 165, 114, 0.14), transparent 34%),
    linear-gradient(
      135deg,
      rgba(24, 24, 24, 0.96),
      rgba(8, 8, 8, 0.98)
    ) !important;

  border: 2px solid rgba(197, 165, 114, 0.38) !important;

  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.50),
    inset 0 0 60px rgba(197, 165, 114, 0.05) !important;

  transition: all 0.45s ease !important;
}

/* top gold line */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  z-index: 1 !important;

  background: linear-gradient(90deg, #C5A572, #D4AF37, #C5A572) !important;
  background-size: 220% 100% !important;
  animation: zctInfoSimpleGoldLine303 3s linear infinite !important;
}

/* hover */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303:hover {
  transform: translateY(-10px) !important;
  border-color: #C5A572 !important;

  box-shadow:
    0 32px 85px rgba(0, 0, 0, 0.64),
    0 0 44px rgba(197, 165, 114, 0.25),
    inset 0 0 72px rgba(197, 165, 114, 0.08) !important;
}

/* text editor should fill the card */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-editor-303,
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-editor-303 .elementor-widget-container {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

/* content inside text editor */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 {
  position: relative !important;
  z-index: 2 !important;

  width: 100% !important;
  min-height: 360px !important;
  padding: 48px 36px 46px !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;

  text-align: center !important;
}

/* icon */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-icon-303 {
  margin: 0 0 34px !important;
  font-size: 58px !important;
  line-height: 1 !important;
  text-align: center !important;
  animation: zctInfoSimpleIconFloat303 3s ease-in-out infinite !important;
}

/* heading */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 h3 {
  margin: 0 0 22px !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(25px, 2vw, 32px) !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
  color: #C5A572 !important;
  text-align: center !important;
}

/* paragraph */
.elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 p {
  max-width: 360px !important;
  margin: 0 auto !important;
  font-family: "Inter", sans-serif !important;
  font-size: 17px !important;
  line-height: 1.75 !important;
  font-weight: 400 !important;
  color: #B8B8B8 !important;
  text-align: center !important;
}

/* animations */
@keyframes zctInfoSimpleGoldLine303 {
  0% {
    background-position: 0% 0%;
  }

  100% {
    background-position: 220% 0%;
  }
}

@keyframes zctInfoSimpleIconFloat303 {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-12px);
  }
}

/* tablet: stack into one column */
@media (max-width: 1024px) {
  .elementor-3519 .elementor-element.elementor-element-b09c43b {
    padding: 75px 28px 90px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303,
  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner {
    grid-template-columns: 1fr !important;
    max-width: 760px !important;
    gap: 28px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303 {
    width: 100% !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 {
    min-height: auto !important;
    padding: 42px 32px !important;
  }
}

/* mobile */
@media (max-width: 767px) {
  .elementor-3519 .elementor-element.elementor-element-b09c43b {
    padding: 60px 14px 75px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303,
  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    gap: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303 {
    border-radius: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 {
    min-height: auto !important;
    padding: 36px 22px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-icon-303 {
    font-size: 46px !important;
    margin-bottom: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 h3 {
    font-size: 24px !important;
    margin-bottom: 16px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 p {
    font-size: 14.5px !important;
    line-height: 1.65 !important;
  }
}/* MOBILE: make the 3 cards one column */
@media (max-width: 767px) {

  .elementor-3519 .elementor-element.elementor-element-b09c43b {
    padding: 60px 14px 75px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303,
  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    gap: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con,
  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .elementor-element,
  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner > .e-con,
  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-grid-303 > .e-con-inner > .elementor-element,
  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 100% !important;
    flex-basis: 100% !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-simple-card-303 {
    border-radius: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 {
    min-height: auto !important;
    padding: 36px 22px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-icon-303 {
    font-size: 46px !important;
    margin-bottom: 24px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 h3 {
    font-size: 24px !important;
    margin-bottom: 16px !important;
  }

  .elementor-3519 .elementor-element.elementor-element-b09c43b .zct-info-card-content-303 p {
    font-size: 14.5px !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */