/* Contact CTA & Shortcode Section */

.contact-cta-section {
  position: relative;
  padding: 40px 0;
  background-image: url('../images/form_bg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  margin: 0 auto;
}

.contact-cta-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.contact-cta-section .container {
  position: relative;
  z-index: 2;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 20px;
}

.contact-cta-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

/* Left Column - CTA Content */
.contact-cta-left {
  color: var(--Color-Palette-White, #FFF);
}

.contact-cta-subtitle {
  font-size: 20px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  margin-bottom: 16px;
  color: var(--Color-Palette-White, #FFF);
}

.contact-cta-title {
  color: var(--Color-Palette-White, #FFF);
  font-family: var(--heading-font);
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 32px;
}

.contact-cta-buttons {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.contact-cta-button {
  display: inline-flex;
  height: 46px;
  padding: 5px 12px;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  text-align: center;
  font-family: var(--body-font);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.48px;
  text-transform: uppercase;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  max-width: max-content;
}

.contact-cta-button.olive {
  background: var(--Color-Palette-Olive, #7D7359);
  color: var(--Color-Palette-White, #FFF);
}

.contact-cta-button.white {
  background: var(--Color-Palette-White, #FFF);
  color: var(--Color-Palette-Olive, #7D7359);
}

.contact-cta-button:hover {
  opacity: 0.9;
  transform: translateY(-2px);
}

.contact-cta-button-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact-cta-button-icon svg {
  width: 100%;
  height: auto;
}

/* Right Column - Form Content */

.contact-cta-form-title {
  color: var(--Color-Palette-White, #FFF);
  font-family: var(--body-font) !important;
  font-size: 20px !important;
  font-style: normal;
  font-weight: 300;
  line-height: 20px;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  margin-bottom: 24px;
}

/* Form Styling */
.contact-cta-right .gform_wrapper,
.contact-cta-right .wpcf7-form {
  max-width: none;
}

.contact-cta-right .gform_wrapper label {
  display: none;
}

.contact-cta-right input[type="text"],
.contact-cta-right input[type="email"],
.contact-cta-right input[type="tel"],
.contact-cta-right input[type="url"],
.contact-cta-right textarea,
.contact-cta-right select,
.contact-cta-right .gfield_select {
  background-color: var(--Color-Palette-Khaki) !important;
  border: none !important;
  border-radius: 0px !important;
  padding: 12px 16px;
  width: 100%;
  margin-bottom: 16px;
  font-family: var(--body-font) !important;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.42px;
  color: var(--Color-Palette-Olive, #7D7359) !important;
}

.contact-cta-right input[type="text"]::placeholder,
.contact-cta-right input[type="email"]::placeholder,
.contact-cta-right input[type="tel"]::placeholder,
.contact-cta-right input[type="url"]::placeholder,
.contact-cta-right textarea::placeholder {
  color: var(--Color-Palette-Olive, #7D7359) !important;
  font-family: var(--body-font) !important;
  font-size: 14px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.42px;
}

.contact-cta-right textarea {
  min-height: 100px;
  resize: vertical;
}

.contact-cta-right input[type="submit"],
.contact-cta-right .gform_button,
.contact-cta-right .wpcf7-submit {
  display: inline-flex;
  height: 46px;
  padding: 5px 12px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  background-color: var(--Color-Palette-Olive, #7D7359) !important;
  color: var(--Color-Palette-White, #FFF) !important;
  border: none;
  border-radius: 0 !important;
  font-family: var(--body-font) !important;
  font-size: 16px !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 24px !important;
  letter-spacing: 0.48px !important;
  text-transform: uppercase !important;
  width: max-content;
  cursor: pointer;
  transition: all 0.3s ease;
  margin: 16px auto 0;
  display: block;
}

.contact-cta-right input[type="submit"]:hover,
.contact-cta-right .gform_button:hover,
.contact-cta-right .wpcf7-submit:hover {
  opacity: 0.9;
  transform: translateY(-2px);
}

/* Gravity Forms specific styling */
.contact-cta-right .gform_wrapper .gform_fields {
  padding: 0;
}

.contact-cta-right .gform_wrapper .gfield {
  margin-bottom: 16px;
  padding: 0;
}

.contact-cta-right .gform_wrapper .gfield_label {
  display: none;
}

.contact-cta-right .gform_wrapper .gfield_required {
  color: transparent;
}

.contact-cta-right .gform_wrapper .validation_error {
  color: #d32f2f;
  font-size: 12px;
  margin-top: 4px;
  text-align: left;
}

/* Contact Form 7 specific styling */
.contact-cta-right .wpcf7-form p {
  margin-bottom: 16px;
}

.contact-cta-right .wpcf7-form label {
  display: none;
}

.contact-cta-right .wpcf7-not-valid {
  border: 2px solid #d32f2f !important;
}

.contact-cta-right .wpcf7-validation-errors {
  color: #d32f2f;
  font-size: 14px;
  margin-top: 16px;
  text-align: center;
}

/* SVG Icons */
.contact-cta-icon-phone {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='26' viewBox='0 0 25 26' fill='none'%3E%3Cpath d='M15.7147 17.5465C14.683 17.2088 13.6213 16.9012 12.571 16.6279C11.6632 16.3933 10.9535 16.771 10.3506 17.4234C10.1226 17.6695 9.80767 18.1388 9.44 18.0801C9.16352 18.0415 8.9013 17.7496 8.70892 17.5665C8.43529 17.3075 8.17165 17.0371 7.9137 16.761C7.00591 15.7809 6.11664 14.6592 5.52522 13.4517C5.27155 12.9323 5.42547 12.6819 5.8929 12.3843C6.12234 12.2413 6.36319 12.1096 6.5855 11.9551C7.8282 11.0709 7.37359 9.28394 7.28666 7.98769C7.25388 7.49408 7.28666 6.91034 7.13417 6.43247C6.76792 5.31506 5.60218 5.32794 4.62883 5.22206C4.08729 5.16293 3.54622 5.09664 3.00563 5.02319C2.47264 4.95165 1.90972 5.02319 1.51639 5.42952C1.21142 5.73856 1.12164 6.15634 1.07888 6.57411C1.00591 7.26593 0.983522 7.96218 1.0119 8.65727C1.10958 11.2431 1.84403 13.7643 3.14957 15.9955C5.61928 20.1661 9.96729 23.3138 14.8682 23.7087C15.1097 23.7397 15.355 23.7125 15.5838 23.6291C15.8126 23.5457 16.0182 23.4087 16.1836 23.2294C16.1987 23.2131 16.2121 23.1954 16.2235 23.1764V23.1678C16.5456 22.7229 16.5655 22.2264 16.604 21.6999C16.6468 21.1018 16.7252 20.5067 16.7836 19.9115C16.8392 19.3578 16.9432 18.8155 16.661 18.3048C16.4537 17.9399 16.1151 17.6686 15.7147 17.5465ZM14.4706 23.0519C13.8277 22.9732 13.1924 22.8416 12.571 22.6585C11.454 22.3486 10.3765 21.9098 9.36019 21.3508C7.36742 20.2046 5.65422 18.6269 4.34523 16.7324C2.91919 14.7341 2.01828 12.407 1.72588 9.9664C1.5962 8.79748 1.49074 7.53414 1.71448 6.36952C1.84274 5.70709 2.39426 5.54112 3.00848 5.63269C3.51154 5.70852 4.01603 5.76432 4.52052 5.81868C5.33426 5.90739 6.49572 5.82584 6.60688 6.89174C6.65961 7.40394 6.67529 7.92187 6.70949 8.43551C6.74654 8.99493 6.78929 9.55291 6.82065 10.1109C6.86767 10.9479 6.39311 11.3585 5.74897 11.7563C5.15897 12.1197 4.60888 12.5689 4.82549 13.3301C4.96801 13.8437 5.31431 14.3158 5.60075 14.7608C5.91998 15.2544 6.26485 15.7323 6.63111 16.1915C7.009 16.6723 7.41241 17.1322 7.8396 17.5694C8.21583 17.9528 8.62341 18.4278 9.1393 18.6238C9.88748 18.9028 10.4219 18.2361 10.8779 17.7425C11.3739 17.2059 11.9268 17.0786 12.6123 17.2789L14.4136 17.804C14.8283 17.9256 15.3057 18.0014 15.6962 18.1903C16.309 18.4879 16.2549 19.106 16.1979 19.6811C16.1409 20.2563 16.0853 20.7971 16.0268 21.3551C15.9741 21.8587 16.014 22.3824 15.7261 22.8173C15.377 23.1864 14.9395 23.1077 14.4706 23.0519ZM18.7673 8.83182H15.0122C14.6203 8.83182 14.6203 8.22233 15.0122 8.22233H18.7673C19.1592 8.22233 19.1578 8.83182 18.7673 8.83182ZM19.5511 7.03338H14.2269C13.835 7.03338 13.8365 6.42246 14.2269 6.42246H19.5511C19.943 6.42246 19.943 7.03338 19.5511 7.03338ZM15.0122 4.62402H18.7673C19.1592 4.62402 19.1578 5.23351 18.7673 5.23351H15.0122C14.6203 5.23351 14.6203 4.62402 15.0122 4.62402ZM23.1253 3.52807C20.5045 -0.666861 13.8379 -0.799919 10.925 3.12889C9.2248 5.42952 9.50412 8.50132 11.3796 10.5802C11.2504 11.142 11.1202 11.7043 10.9891 12.267C10.9321 12.516 10.8281 12.7864 10.9962 13.0139C11.1843 13.2685 11.4537 13.1713 11.7002 13.0954L13.8251 12.4401C13.9153 12.3974 14.0113 12.3685 14.1101 12.3543L14.1343 12.3457C14.0744 12.4144 14.1101 12.4473 14.2383 12.4459C14.3891 12.5165 14.548 12.5679 14.7115 12.599C15.4241 12.7993 16.1604 12.9022 16.9004 12.9051C19.2675 12.8865 21.6204 11.8478 22.9899 9.86196C23.624 8.93398 23.9746 7.84038 23.9987 6.71529C24.0227 5.59019 23.7192 4.4825 23.1253 3.52807ZM16.889 12.2971C16.0137 12.2936 15.1457 12.1372 14.3238 11.8349C13.9747 11.7033 13.7652 11.8206 13.4203 11.9279L12.0779 12.3429C11.9354 12.3886 11.7244 12.4859 11.5392 12.5317C11.5748 12.3529 11.6389 12.1626 11.6817 12.0023L11.9667 10.8062C11.985 10.7319 11.9978 10.6564 12.0052 10.5802C12.0294 10.2783 11.7515 10.1037 11.5777 9.88485C11.1107 9.31576 10.7654 8.65636 10.563 7.94762C9.87893 5.49677 11.1772 3.04591 13.3049 1.81404C14.4322 1.17674 15.708 0.851632 17.0016 0.871995C18.2952 0.892358 19.5601 1.25746 20.667 1.92993C22.6892 3.19328 23.8735 5.58404 23.2151 7.94906C22.4455 10.7132 19.6138 12.2756 16.889 12.2971Z' fill='white' stroke='white' stroke-width='0.4'/%3E%3C/svg%3E");
}

.contact-cta-icon-shield {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='26' viewBox='0 0 21 26' fill='none'%3E%3Cpath d='M10.4997 25.3915C10.4366 25.3913 10.3743 25.3765 10.3176 25.3483L6.14206 23.2434C4.59451 22.4712 3.29118 21.2683 2.38167 19.7729C1.47215 18.2774 0.993296 16.5499 1.00007 14.7887V5.17717C1.00015 5.07922 1.03356 4.98436 1.09456 4.90886C1.15556 4.83335 1.24034 4.78192 1.33437 4.76338C5.58858 3.92849 8.40672 2.64988 10.2031 0.737946C10.2415 0.697106 10.2875 0.664622 10.3385 0.642444C10.3895 0.620266 10.4443 0.608852 10.4997 0.608887C10.5552 0.608801 10.6101 0.620189 10.6612 0.642367C10.7123 0.664545 10.7584 0.697056 10.7969 0.737946C12.5933 2.64988 15.4147 3.93115 19.665 4.76338C19.7591 4.78178 19.8441 4.83316 19.9052 4.90867C19.9663 4.98419 19.9998 5.07913 19.9999 5.17717V14.7887C20.0066 16.5499 19.5276 18.2773 18.6181 19.7727C17.7086 21.2682 16.4054 22.4711 14.8579 23.2434L10.6818 25.3483C10.6251 25.3767 10.5628 25.3914 10.4997 25.3915ZM1.82412 5.52443V14.7887C1.81818 16.3925 2.25437 17.9655 3.08265 19.3273C3.91093 20.6891 5.09774 21.7844 6.50693 22.4877L10.5003 24.5001L14.4944 22.4877C15.9036 21.7844 17.0904 20.6891 17.9187 19.3273C18.7469 17.9655 19.1831 16.3925 19.1772 14.7887V5.52443C15.1506 4.69752 12.3735 3.45084 10.501 1.62473C8.6272 3.45084 5.85003 4.69752 1.82412 5.52443ZM9.52344 18.0465C9.46935 18.0465 9.41577 18.0357 9.36578 18.0146C9.31578 17.9935 9.27035 17.9625 9.23207 17.9234L4.73917 13.3278C4.70047 13.2887 4.66974 13.242 4.64878 13.1907C4.62781 13.1393 4.61701 13.0841 4.61701 13.0285C4.61701 12.9728 4.62781 12.9177 4.64878 12.8663C4.66974 12.8149 4.70047 12.7683 4.73917 12.7291L6.34498 11.0859C6.42223 11.0068 6.52704 10.9623 6.63636 10.9622C6.74568 10.9623 6.85048 11.0068 6.92773 11.0859L9.52344 13.7409L14.0729 9.09084C14.1517 9.01375 14.2566 8.97072 14.3656 8.97072C14.4746 8.97072 14.5795 9.01375 14.6583 9.09084L16.2641 10.7333C16.3028 10.7725 16.3335 10.8191 16.3545 10.8705C16.3754 10.9219 16.3862 10.977 16.3862 11.0327C16.3862 11.0884 16.3754 11.1435 16.3545 11.1949C16.3335 11.2463 16.3028 11.2929 16.2641 11.3321L9.81807 17.926C9.73929 18.0045 9.63335 18.0478 9.52344 18.0465ZM5.61329 13.0298L9.52344 17.0293L15.3867 11.0314L14.3636 9.98494L9.81481 14.6377C9.73757 14.7168 9.63276 14.7613 9.52344 14.7614C9.46929 14.7615 9.41566 14.7506 9.36564 14.7294C9.31563 14.7082 9.27023 14.677 9.23207 14.6377L6.63636 11.9847L5.61329 13.0298Z' fill='%236F3A20' stroke='%236F3A20' stroke-width='0.3'/%3E%3C/svg%3E");
}

.contact-cta-icon-chat {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='28' viewBox='0 0 33 28' fill='none'%3E%3Cpath d='M13.7237 20.2612C13.724 20.8478 13.9572 21.4103 14.3721 21.825C14.787 22.2397 15.3496 22.4727 15.9362 22.4727H24.2899L28.5761 27.0233V22.4727H29.0062C29.8002 22.4727 30.5617 22.1573 31.1231 21.5958C31.6846 21.0344 32 20.2729 32 19.4789V11.647C32 10.853 31.6846 10.0915 31.1231 9.53007C30.5617 8.96862 29.8002 8.6532 29.0062 8.6532H26.9544M24.0524 3.97087V14.9632C24.0524 15.7572 23.737 16.5187 23.1755 17.0801C22.6141 17.6416 21.8526 17.957 21.0586 17.957H10.4724L5.20731 23.5455V17.957H3.99382C3.19981 17.957 2.43832 17.6416 1.87687 17.0801C1.31542 16.5187 1 15.7572 1 14.9632V3.97087C1 3.17686 1.31542 2.41537 1.87687 1.85392C2.43832 1.29247 3.19981 0.977051 3.99382 0.977051H21.0586C21.8526 0.977051 22.6141 1.29247 23.1755 1.85392C23.737 2.41537 24.0524 3.17686 24.0524 3.97087Z' stroke='white' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Responsive Design - Mobile breakpoint at 920px */
@media (max-width: 920px) {
  .contact-cta-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
  .contact-cta-content {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .contact-cta-title {
    font-size: 36px;
    margin-bottom: 24px;
  }

  .contact-cta-subtitle {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .contact-cta-buttons {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px;
  }

  .contact-cta-button {
    flex: 1;
    min-width: 200px;
    height: 50px;
    padding: 8px 16px;
  }

  .contact-cta-right {
    padding: 30px 20px;
  }

  .contact-cta-form-title {
    font-size: 18px;
    line-height: 18px;
    margin-bottom: 20px;
  }

  .contact-cta-section {
    padding: 30px 0;
  }
  .contact-cta-right {
    text-align: center;
  }
}

@media (max-width: 600px) {
  .contact-cta-buttons {
    flex-direction: column;
  }

  .contact-cta-button {
    width: 100%;
    min-width: auto;
  }

  .contact-cta-title {
    font-size: 28px;
  }

  .contact-cta-right {
    padding: 20px 15px;
  }

  .contact-cta-section .container {
    padding: 0 15px;
  }
} 