.contact-form{display:none!important}

.cf7-contact{
  position:relative;
  overflow:hidden;
  padding:110px 0 120px;
  background:
    radial-gradient(circle at 92% 6%,rgba(137,45,59,.10),transparent 27rem),
    linear-gradient(145deg,#f7f2e9 0%,#eee5d8 100%);
}
.cf7-contact::before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  left:-190px;
  bottom:-210px;
  border:1px solid rgba(137,45,59,.14);
  border-radius:50%;
  box-shadow:0 0 0 42px rgba(137,45,59,.035),0 0 0 84px rgba(137,45,59,.025);
}
.cf7-contact .wrap{position:relative;z-index:1}
.cf7-contact .section-label{color:var(--wine)}
.cf7-contact .section-title{max-width:760px;margin-bottom:14px}
.cf7-contact .section-lead{max-width:680px;color:#6c655d}

.cf7-contact .wpcf7{
  max-width:960px;
  box-sizing:border-box;
  margin-top:42px!important;
  padding:42px 44px 44px!important;
  border:1px solid rgba(44,37,31,.10);
  border-radius:24px;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 24px 70px rgba(58,42,31,.11);
  backdrop-filter:blur(8px);
}
.cf7-contact .wpcf7-form>p{margin:0}
.cf7-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}
.cf7-field{min-width:0;margin:0}
.cf7-field.full{grid-column:1/-1}
.cf7-field label{
  display:block;
  color:#332d28;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.075em;
  line-height:1.35;
  text-transform:uppercase;
}
.cf7-field .wpcf7-form-control-wrap{display:block;margin-top:9px}
.cf7-field input,
.cf7-field select,
.cf7-field textarea{
  display:block;
  width:100%;
  min-height:56px;
  margin:0;
  padding:14px 16px;
  border:1px solid #d9d1c7;
  border-radius:12px;
  outline:0;
  background:#fff;
  color:#29241f;
  font:inherit;
  line-height:1.35;
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.cf7-field select{
  cursor:pointer;
  appearance:auto;
}
.cf7-field textarea{min-height:170px;resize:vertical;line-height:1.6}
.cf7-field input::placeholder,.cf7-field textarea::placeholder{color:#a39b92;opacity:1}
.cf7-field input:hover,.cf7-field select:hover,.cf7-field textarea:hover{border-color:#b9aea2}
.cf7-field input:focus,.cf7-field select:focus,.cf7-field textarea:focus{
  border-color:var(--wine);
  box-shadow:0 0 0 4px rgba(137,45,59,.12),0 8px 22px rgba(58,42,31,.06);
}
.cf7-field input.wpcf7-not-valid,.cf7-field select.wpcf7-not-valid,.cf7-field textarea.wpcf7-not-valid{
  border-color:#b42336;
  background:#fffafb;
  box-shadow:0 0 0 3px rgba(180,35,54,.08);
}
.cf7-contact .wpcf7-not-valid-tip{margin-top:7px;color:#9c2434;font-size:.78rem;font-weight:700;text-transform:none}

.cf7-consent{
  margin:26px 0 28px;
  padding:15px 17px;
  border:1px solid #e1d9cf;
  border-radius:12px;
  background:#faf8f4;
  color:#655e57;
  font-size:.84rem;
  line-height:1.55;
}
.cf7-consent .wpcf7-list-item{display:block;margin:0}
.cf7-consent label{display:flex;align-items:flex-start;gap:11px;cursor:pointer}
.cf7-consent input[type=checkbox]{
  flex:0 0 auto;
  width:18px;
  height:18px;
  margin:2px 0 0;
  accent-color:var(--wine);
}

.cf7-contact .wpcf7-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:220px;
  min-height:56px;
  padding:0 28px;
  border:1px solid var(--wine);
  border-radius:999px;
  background:var(--wine);
  color:#fff;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 12px 24px rgba(137,45,59,.20);
  transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.cf7-contact .wpcf7-submit:hover{background:#fff;color:var(--wine);transform:translateY(-2px);box-shadow:0 16px 28px rgba(137,45,59,.16)}
.cf7-contact .wpcf7-submit:focus-visible{outline:3px solid rgba(137,45,59,.22);outline-offset:4px}
.cf7-contact .wpcf7-submit:disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}
.cf7-contact .wpcf7-spinner{margin:0 0 0 14px;vertical-align:middle}
.cf7-contact .wpcf7-response-output{
  margin:24px 0 0!important;
  padding:15px 18px!important;
  border:1px solid #baa572!important;
  border-radius:12px;
  background:#fffaf0;
  color:#4d4436;
  font-size:.9rem;
  line-height:1.5;
}
.cf7-contact form.sent .wpcf7-response-output{border-color:#568469!important;background:#f2faf5;color:#28573b}
.cf7-contact form.invalid .wpcf7-response-output,.cf7-contact form.failed .wpcf7-response-output{border-color:#b42336!important;background:#fff5f6;color:#7e1e2b}

@media(max-width:760px){
  .cf7-contact{padding:76px 0 84px}
  .cf7-contact .wpcf7{margin-top:30px!important;padding:26px 20px 28px!important;border-radius:18px}
  .cf7-grid{grid-template-columns:1fr;gap:18px}
  .cf7-field.full{grid-column:auto}
  .cf7-contact .wpcf7-submit{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .cf7-contact *{scroll-behavior:auto!important;transition:none!important}
}
