/*
 * Awesomes Divi 5 Contact Form – Bryllandia 1.3.1
 * Refined to more closely match the submitted mockup:
 * underline inputs, full-width name field, two-column email/phone row,
 * large full-width rounded gold button.
 */

.awcf-wrap{
  --awcf-green:#234d3a;
  --awcf-green-dark:#193b2c;
  --awcf-gold:#d3a52a;
  --awcf-gold-dark:#c49621;
  --awcf-heading:#656565;
  --awcf-text:#575757;
  --awcf-muted:#6c6c6c;
  --awcf-line:#4f4f4f;
  --awcf-line-soft:#8b8b8b;
  --awcf-bg:transparent;
  --awcf-error:#a73a33;

  width:100%;
  max-width:none;
  color:var(--awcf-text);
  background:transparent;
  box-sizing:border-box;
}

.awcf-wrap *,
.awcf-wrap *::before,
.awcf-wrap *::after{
  box-sizing:border-box;
}

/* Optional title if user wants to show it in shortcode. */
.awcf-wrap .awcf-title{
  margin:0 0 24px;
  color:#1d2327;
  font-family:"Libre Bodoni", Georgia, "Times New Roman", serif;
  font-size:clamp(30px,4vw,42px);
  font-weight:600;
  line-height:1.06;
}

.awcf-wrap .awcf-form{
  width:100%;
}

.awcf-wrap .awcf-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:30px 18px;
}

/* Imię i nazwisko – full width like on the mockup. */
.awcf-wrap .awcf-grid > .awcf-field:first-child{
  grid-column:1 / -1;
}

.awcf-wrap .awcf-field{
  display:flex;
  flex-direction:column;
  gap:0;
}

.awcf-wrap .awcf-field label{
  margin:0;
  padding:0 16px 12px;
  color:var(--awcf-heading);
  font-size:15px;
  font-weight:500;
  line-height:1.2;
}

.awcf-wrap .awcf-field label span,
.awcf-wrap .awcf-consent strong{
  color:var(--awcf-gold);
}

.awcf-wrap .awcf-field input,
.awcf-wrap .awcf-field textarea{
  width:100%;
  min-height:auto;
  margin:0;
  padding:0 16px 12px;
  border:none;
  border-bottom:1px solid var(--awcf-line);
  border-radius:0;
  outline:0;
  background:transparent;
  color:#222;
  font:inherit;
  font-size:15px;
  line-height:1.5;
  box-shadow:none;
  transition:border-color .18s ease, color .18s ease;
}

.awcf-wrap .awcf-field textarea{
  min-height:96px;
  padding-bottom:14px;
  resize:vertical;
}

.awcf-wrap .awcf-field input::placeholder,
.awcf-wrap .awcf-field textarea::placeholder{
  color:transparent;
}

.awcf-wrap .awcf-field input:hover,
.awcf-wrap .awcf-field textarea:hover{
  border-bottom-color:var(--awcf-line-soft);
}

.awcf-wrap .awcf-field input:focus,
.awcf-wrap .awcf-field textarea:focus{
  border-bottom-color:var(--awcf-gold);
  color:#111;
  box-shadow:none;
  background:transparent;
}

.awcf-wrap .awcf-message-field{
  margin-top:26px;
}

/* Agreement text */
.awcf-wrap .awcf-consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:26px 0 0;
  color:var(--awcf-muted);
  font-size:12px;
  line-height:1.7;
  cursor:pointer;
}

.awcf-wrap .awcf-consent + .awcf-consent{
  margin-top:18px;
}

.awcf-wrap .awcf-consent input{
  width:18px;
  height:18px;
  flex:0 0 18px;
  margin:4px 0 0;
  accent-color:var(--awcf-gold);
}

/* Full-width CTA */
.awcf-wrap .awcf-submit{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  min-height:62px;
  margin:42px 0 0;
  padding:16px 28px;
  appearance:none;
  border:1px solid var(--awcf-gold);
  border-radius:999px;
  background:var(--awcf-gold);
  color:#fff;
  font:inherit;
  font-size:18px;
  font-weight:700;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.01em;
  box-shadow:none;
  cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.awcf-wrap .awcf-submit:hover,
.awcf-wrap .awcf-submit:focus-visible{
  border-color:var(--awcf-gold-dark);
  background:var(--awcf-gold-dark);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(180,140,24,.18);
}

.awcf-wrap .awcf-submit:focus-visible{
  outline:2px solid rgba(211,165,42,.55);
  outline-offset:3px;
}

.awcf-wrap .awcf-submit:disabled{
  opacity:.6;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}

.awcf-wrap .awcf-spinner{
  display:none;
  width:16px;
  height:16px;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  animation:awcf-spin .7s linear infinite;
}

.awcf-wrap .awcf-form.is-loading .awcf-spinner{
  display:block;
}

.awcf-wrap .awcf-status{
  display:none;
  margin-top:18px;
  padding:13px 15px;
  border-radius:8px;
  font-size:13px;
  line-height:1.55;
}

.awcf-wrap .awcf-status.is-success{
  display:block;
  border:1px solid rgba(35,77,58,.18);
  background:#f2f7f4;
  color:var(--awcf-green);
}

.awcf-wrap .awcf-status.is-error{
  display:block;
  border:1px solid rgba(167,58,51,.18);
  background:#fff5f4;
  color:var(--awcf-error);
}

.awcf-wrap .awcf-hp{
  position:absolute!important;
  left:-99999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

@keyframes awcf-spin{
  to{transform:rotate(360deg)}
}

@media(max-width:767px){
  .awcf-wrap .awcf-grid{
    grid-template-columns:1fr;
    gap:24px;
  }

  .awcf-wrap .awcf-grid > .awcf-field:first-child{
    grid-column:auto;
  }

  .awcf-wrap .awcf-message-field{
    margin-top:22px;
  }

  .awcf-wrap .awcf-submit{
    min-height:58px;
    margin-top:32px;
    font-size:17px;
  }
}
