:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-5892fc6 *//* =========================================================
   CONTACT PAGE
   BRAND COLORS

   Burgundy  : #800020
   Cream     : #F3E6D5
   Off White : #FFF9F2
   Rose      : #D45060

   Unique Prefix: contact-
   ========================================================= */


.contact-page {

  --contact-burgundy: #800020;
  --contact-cream: #F3E6D5;
  --contact-offwhite: #FFF9F2;
  --contact-rose: #D45060;
  --contact-dark: #2b1018;
  --contact-text: #654f55;
  --contact-white: #ffffff;

  width: 100%;

  margin: 0;
  padding: 0;

  background: var(--contact-offwhite);

  color: var(--contact-dark);

  font-family: inherit;

  overflow: hidden;
}


.contact-page *,
.contact-page *::before,
.contact-page *::after {

  box-sizing: border-box;
}


.contact-container {

  width: min(1180px, 92%);

  margin-left: auto;
  margin-right: auto;
}


/* =========================================================
   HERO
   ========================================================= */

.contact-hero {

  position: relative;

  min-height: 430px;

  display: flex;

  align-items: center;
  justify-content: center;

  text-align: center;

  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(212, 80, 96, 0.30),
      transparent 28%
    ),
    radial-gradient(
      circle at 10% 85%,
      rgba(243, 230, 213, 0.12),
      transparent 28%
    ),
    linear-gradient(
      135deg,
      #4c0014,
      #800020,
      #600017
    );

  overflow: hidden;
}


.contact-hero::before {

  content: "";

  position: absolute;

  width: 450px;
  height: 450px;

  right: -180px;
  top: -220px;

  border:
    1px solid rgba(243, 230, 213, 0.20);

  border-radius: 50%;
}


.contact-hero::after {

  content: "";

  position: absolute;

  width: 280px;
  height: 280px;

  left: -150px;
  bottom: -160px;

  border:
    1px solid rgba(212, 80, 96, 0.30);

  border-radius: 50%;
}


.contact-hero-content {

  position: relative;

  z-index: 2;

  width: min(850px, 92%);

  padding: 80px 0;
}


.contact-label {

  display: inline-block;

  margin-bottom: 18px;

  color: var(--contact-cream);

  font-size: 13px;

  font-weight: 800;

  letter-spacing: 3px;

  text-transform: uppercase;
}


.contact-hero h1 {

  max-width: 850px;

  margin: 0 auto 20px;

  color: #ffffff;

  font-size: clamp(38px, 5vw, 62px);

  line-height: 1.1;

  font-weight: 800;
}


.contact-hero h1 span {

  color: var(--contact-cream);
}


.contact-hero p {

  max-width: 700px;

  margin: 0 auto;

  color: rgba(255, 249, 242, 0.82);

  font-size: 17px;

  line-height: 1.8;
}


/* =========================================================
   MAIN CONTACT SECTION
   ========================================================= */

.contact-main {

  padding: 105px 0;

  background: var(--contact-offwhite);
}


.contact-grid {

  display: grid;

  grid-template-columns: 0.85fr 1.15fr;

  gap: 75px;

  align-items: start;
}


/* =========================================================
   LEFT INFORMATION
   ========================================================= */

.contact-small-title {

  display: inline-block;

  margin-bottom: 14px;

  color: var(--contact-rose);

  font-size: 12px;

  font-weight: 800;

  letter-spacing: 3px;

  text-transform: uppercase;
}


.contact-info h2 {

  margin: 0 0 20px;

  color: var(--contact-burgundy);

  font-size: clamp(32px, 4vw, 48px);

  line-height: 1.15;

  font-weight: 800;
}


.contact-info h2 span {

  color: var(--contact-rose);
}


.contact-intro {

  margin: 0 0 32px;

  color: var(--contact-text);

  font-size: 15px;

  line-height: 1.85;
}


/* =========================================================
   INFO CARDS
   ========================================================= */

.contact-info-card {

  display: flex;

  align-items: center;

  gap: 18px;

  padding: 18px;

  margin-bottom: 14px;

  background: #ffffff;

  border:
    1px solid rgba(128, 0, 32, 0.10);

  border-radius: 7px;

  text-decoration: none !important;

  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}


.contact-info-card:hover {

  transform: translateX(5px);

  border-color: rgba(212, 80, 96, 0.45);

  box-shadow:
    0 10px 30px rgba(128, 0, 32, 0.08);
}


.contact-icon {

  flex: 0 0 50px;

  width: 50px;
  height: 50px;

  display: flex;

  align-items: center;
  justify-content: center;

  background: var(--contact-cream);

  color: var(--contact-burgundy);

  border-radius: 50%;

  font-size: 20px;

  font-weight: 800;
}


.contact-info-card div:last-child {

  display: flex;

  flex-direction: column;

  gap: 4px;
}


.contact-info-card span {

  color: var(--contact-rose);

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 2px;
}


.contact-info-card strong {

  color: var(--contact-burgundy);

  font-size: 15px;
}


/* =========================================================
   CONTACT NOTE
   ========================================================= */

.contact-note {

  display: flex;

  align-items: flex-start;

  gap: 15px;

  margin-top: 30px;

  padding: 22px;

  background: var(--contact-cream);

  border-left:
    4px solid var(--contact-rose);
}


.contact-note-symbol {

  color: var(--contact-burgundy);

  font-size: 20px;
}


.contact-note p {

  margin: 0;

  color: var(--contact-text);

  font-size: 13px;

  line-height: 1.7;
}


/* =========================================================
   FORM BOX
   ========================================================= */

.contact-form-box {

  padding: 45px;

  background: #ffffff;

  border:
    1px solid rgba(128, 0, 32, 0.10);

  border-radius: 10px;

  box-shadow:
    0 15px 45px rgba(128, 0, 32, 0.07);
}


.contact-form-heading {

  margin-bottom: 30px;
}


.contact-form-heading h2 {

  margin: 0 0 12px;

  color: var(--contact-burgundy);

  font-size: 34px;

  line-height: 1.2;

  font-weight: 800;
}


.contact-form-heading h2 span {

  color: var(--contact-rose);
}


.contact-form-heading p {

  margin: 0;

  color: var(--contact-text);

  font-size: 14px;
}


/* =========================================================
   FORM
   ========================================================= */

.contact-form {

  width: 100%;
}


.contact-form-row {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 18px;
}


.contact-field {

  margin-bottom: 20px;
}


.contact-field label {

  display: block;

  margin-bottom: 8px;

  color: var(--contact-burgundy);

  font-size: 13px;

  font-weight: 700;
}


.contact-field input,
.contact-field textarea {

  width: 100%;

  padding: 14px 15px;

  background: var(--contact-offwhite);

  color: var(--contact-dark);

  border:
    1px solid rgba(128, 0, 32, 0.15);

  border-radius: 5px;

  outline: none;

  font-family: inherit;

  font-size: 14px;

  transition:
    border-color 0.3s ease,
    box-shadow 0.3s ease,
    background 0.3s ease;
}


.contact-field input {

  height: 50px;
}


.contact-field textarea {

  min-height: 140px;

  resize: vertical;
}


.contact-field input::placeholder,
.contact-field textarea::placeholder {

  color: #a89599;
}


.contact-field input:focus,
.contact-field textarea:focus {

  background: #ffffff;

  border-color: var(--contact-rose);

  box-shadow:
    0 0 0 3px rgba(212, 80, 96, 0.10);
}


/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.contact-submit {

  width: 100%;

  min-height: 54px;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 12px;

  padding: 14px 25px;

  background: var(--contact-burgundy);

  color: #ffffff;

  border: 2px solid var(--contact-burgundy);

  border-radius: 5px;

  cursor: pointer;

  font-family: inherit;

  font-size: 14px;

  font-weight: 800;

  transition:
    background 0.3s ease,
    border-color 0.3s ease,
    transform 0.3s ease;
}


.contact-submit span {

  font-size: 20px;

  line-height: 1;
}


.contact-submit:hover {

  background: var(--contact-rose);

  border-color: var(--contact-rose);

  transform: translateY(-2px);
}


.contact-form-disclaimer {

  margin: 15px 0 0;

  color: #8b777c;

  text-align: center;

  font-size: 11px;

  line-height: 1.6;
}


/* =========================================================
   BOTTOM CTA
   ========================================================= */

.contact-cta {

  position: relative;

  padding: 90px 0;

  text-align: center;

  background:
    radial-gradient(
      circle at 85% 50%,
      rgba(212, 80, 96, 0.28),
      transparent 28%
    ),
    linear-gradient(
      135deg,
      #4c0014,
      #800020
    );

  overflow: hidden;
}


.contact-cta::before {

  content: "";

  position: absolute;

  width: 380px;
  height: 380px;

  right: -170px;
  bottom: -190px;

  border:
    1px solid rgba(243, 230, 213, 0.18);

  border-radius: 50%;
}


.contact-cta-content {

  position: relative;

  z-index: 2;

  max-width: 700px;

  margin: 0 auto;
}


.contact-cta .contact-small-title {

  color: var(--contact-cream);
}


.contact-cta h2 {

  margin: 0 0 15px;

  color: #ffffff;

  font-size: clamp(34px, 4vw, 50px);

  line-height: 1.15;
}


.contact-cta p {

  margin: 0 auto 28px;

  color: rgba(255, 249, 242, 0.75);

  font-size: 16px;

  line-height: 1.8;
}


.contact-whatsapp-btn {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  min-height: 52px;

  padding: 14px 30px;

  background: var(--contact-cream);

  color: var(--contact-burgundy) !important;

  border:
    2px solid var(--contact-cream);

  border-radius: 5px;

  text-decoration: none !important;

  font-size: 14px;

  font-weight: 800;

  transition:
    background 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}


.contact-whatsapp-btn:hover {

  background: var(--contact-rose);

  border-color: var(--contact-rose);

  color: #ffffff !important;

  transform: translateY(-3px);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

  .contact-grid {

    grid-template-columns: 1fr;

    gap: 55px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

  .contact-hero {

    min-height: 420px;
  }

  .contact-hero-content {

    padding: 65px 0;
  }

  .contact-hero h1 {

    font-size: 37px;
  }

  .contact-hero p {

    font-size: 15px;
  }

  .contact-main {

    padding: 70px 0;
  }

  .contact-form-box {

    padding: 30px 22px;
  }

  .contact-form-row {

    grid-template-columns: 1fr;

    gap: 0;
  }

  .contact-cta {

    padding: 70px 0;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

  .contact-container {

    width: 90%;
  }

  .contact-hero h1 {

    font-size: 31px;
  }

  .contact-info h2 {

    font-size: 31px;
  }

  .contact-form-heading h2 {

    font-size: 29px;
  }

  .contact-form-box {

    padding: 28px 18px;
  }

  .contact-info-card {

    padding: 15px;
  }

  .contact-icon {

    flex: 0 0 45px;

    width: 45px;
    height: 45px;
  }

  .contact-whatsapp-btn {

    width: 100%;
  }

}/* End custom CSS */