/*
 * Awesomes Divi 5 Contact Form – Strzelnica Bryllandia 1.6.0
 * Tactical, clean design. All key colors can be changed from WordPress settings.
 */

.awcf-wrap{
  --awcf-navy:#181b19;
  --awcf-navy-dark:#101210;
  --awcf-red:#c69a2f;
  --awcf-red-dark:#a97f20;
  --awcf-button:#c69a2f;
  --awcf-button-hover:#a97f20;
  --awcf-text:#343834;
  --awcf-label:#181b19;
  --awcf-muted:#6b706c;
  --awcf-field-bg:#ffffff;
  --awcf-popup-bg:#ffffff;
  --awcf-success:#315c45;
  --awcf-border:#d9ddd9;
  --awcf-border-hover:#aab0ab;
  --awcf-error:#a33535;

  width:100%;
  max-width:900px;
  margin:0 auto;
  color:var(--awcf-text);
  box-sizing:border-box;
  font-family:inherit;
}

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

.awcf-title{
  position:relative;
  margin:0 0 32px;
  padding-top:14px;
  color:var(--awcf-navy);
  font-family:inherit;
  font-size:clamp(30px,4vw,44px);
  font-weight:800;
  line-height:1.05;
  letter-spacing:-.02em;
}

.awcf-title::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:46px;
  height:4px;
  border-radius:99px;
  background:var(--awcf-red);
}

.awcf-form{width:100%}

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

/* Name gets a complete first row; phone + e-mail sit below it. */
.awcf-grid > .awcf-field:first-child{grid-column:1/-1}

.awcf-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.awcf-field label{
  margin:0;
  color:var(--awcf-label);
  font-size:13px;
  font-weight:700;
  line-height:1.35;
  text-transform:uppercase;
  letter-spacing:.045em;
}

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

.awcf-field input,
.awcf-field textarea{
  width:100%;
  min-height:54px;
  margin:0;
  padding:14px 16px;
  border:1px solid var(--awcf-border);
  border-radius:5px;
  outline:0;
  background:var(--awcf-field-bg);
  color:var(--awcf-navy);
  font:inherit;
  font-size:15px;
  line-height:1.5;
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}

.awcf-field textarea{
  min-height:175px;
  resize:vertical;
}

.awcf-field input::placeholder,
.awcf-field textarea::placeholder{
  color:#9da29e;
  opacity:1;
}

.awcf-field input:hover,
.awcf-field textarea:hover{border-color:var(--awcf-border-hover)}

.awcf-field input:focus,
.awcf-field textarea:focus{
  border-color:var(--awcf-red);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--awcf-red) 14%,transparent);
}

.awcf-message-field{margin-top:20px}

.awcf-consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:20px 0 24px;
  color:var(--awcf-muted);
  font-size:12px;
  line-height:1.65;
  cursor:pointer;
}

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

.awcf-submit{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  min-height:56px;
  margin:0;
  padding:14px 28px;
  border:1px solid var(--awcf-button);
  border-radius:5px;
  background:var(--awcf-button);
  color:#fff;
  font:inherit;
  font-size:15px;
  font-weight:800;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.04em;
  cursor:pointer;
  box-shadow:none;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.awcf-submit:hover,
.awcf-submit:focus-visible{
  border-color:var(--awcf-button-hover);
  background:var(--awcf-button-hover);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 9px 24px rgba(0,0,0,.12);
}

.awcf-submit:focus-visible{
  outline:2px solid var(--awcf-red);
  outline-offset:3px;
}

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

.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-form.is-loading .awcf-spinner{display:block}

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

.awcf-status.is-error{
  display:block;
  border:1px solid color-mix(in srgb,var(--awcf-error) 24%,transparent);
  border-left:4px solid var(--awcf-error);
  background:#fff5f5;
  color:var(--awcf-error);
}

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

/* Confirmation popup */
.awcf-popup{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.awcf-popup.is-open{display:flex}

.awcf-popup-backdrop{
  position:absolute;
  inset:0;
  background:rgba(10,12,10,.70);
  backdrop-filter:blur(2px);
}

.awcf-popup-dialog{
  position:relative;
  z-index:1;
  width:min(100%,490px);
  padding:40px 34px 32px;
  border-top:5px solid var(--awcf-red);
  border-radius:6px;
  background:var(--awcf-popup-bg);
  box-shadow:0 28px 80px rgba(0,0,0,.32);
  text-align:center;
}

.awcf-popup-close{
  position:absolute;
  top:10px;
  right:13px;
  width:34px;
  height:34px;
  border:0;
  background:transparent;
  color:#747975;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}

.awcf-popup-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:60px;
  height:60px;
  margin:0 auto 18px;
  border-radius:50%;
  background:var(--awcf-success);
  color:#fff;
  font-size:28px;
  font-weight:800;
}

.awcf-popup-dialog h4{
  margin:0 0 10px;
  color:var(--awcf-navy);
  font-family:inherit;
  font-size:24px;
  font-weight:800;
  line-height:1.2;
}

.awcf-popup-message{
  margin:0;
  color:var(--awcf-text);
  font-size:14px;
  line-height:1.65;
}

.awcf-popup-button{
  min-width:150px;
  margin-top:24px;
  padding:11px 22px;
  border:1px solid var(--awcf-button);
  border-radius:5px;
  background:var(--awcf-button);
  color:#fff;
  font-weight:800;
  text-transform:uppercase;
  cursor:pointer;
}

.awcf-popup-button:hover{
  border-color:var(--awcf-button-hover);
  background:var(--awcf-button-hover);
}

body.awcf-popup-open{overflow:hidden}

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

@media(max-width:767px){
  .awcf-wrap{max-width:100%}
  .awcf-grid{grid-template-columns:1fr;gap:17px}
  .awcf-grid > .awcf-field:first-child{grid-column:auto}
  .awcf-message-field{margin-top:18px}
  .awcf-submit{min-height:55px}
  .awcf-popup-dialog{padding:36px 22px 28px}
}
