/*
 * Webcotec Frontend Final Patch 20
 * Project form hard replacement + portfolio header/footer sync polish.
 */

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form,
body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form *{
  box-sizing:border-box!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form{
  --p20-blue:#1769ff;
  --p20-purple:#8649ff;
  --p20-pink:#de2e93;
  --p20-orange:#ff8a00;
  --p20-text:#061731;
  --p20-muted:#63738d;
  --p20-line:#d7e4f5;

  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px 18px!important;
  width:100%!important;
  max-width:none!important;
  align-items:start!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-field{
  min-width:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-field.full,
body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-submit{
  grid-column:1 / -1!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-label{
  display:block!important;
  margin:0 0 8px!important;
  color:var(--p20-text)!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:850!important;
  letter-spacing:-.01em!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form input,
body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form select,
body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form textarea{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:50px!important;
  min-height:50px!important;
  border:1px solid var(--p20-line)!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--p20-text)!important;
  outline:0!important;
  padding:0 16px!important;
  margin:0!important;
  font-size:15px!important;
  font-weight:650!important;
  line-height:1.2!important;
  box-shadow:0 8px 22px rgba(15,23,42,.025)!important;
  transition:border-color .18s ease,box-shadow .18s ease!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form textarea{
  height:auto!important;
  min-height:116px!important;
  padding:14px 16px!important;
  resize:vertical!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form select{
  cursor:pointer!important;
  appearance:auto!important;
  padding-right:38px!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form input::placeholder,
body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form textarea::placeholder{
  color:#7b8ca5!important;
  font-weight:600!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form input:focus,
body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form select:focus,
body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form textarea:focus{
  border-color:var(--p20-blue)!important;
  box-shadow:0 0 0 4px rgba(23,105,255,.11),0 14px 30px rgba(15,23,42,.06)!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-submit{
  margin-top:4px!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form button[type="submit"]{
  width:100%!important;
  height:56px!important;
  min-height:56px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(100deg,var(--p20-blue),var(--p20-purple),var(--p20-pink),var(--p20-orange))!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 22px!important;
  margin:0!important;
  font-size:15px!important;
  font-weight:850!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:0 18px 40px rgba(121,73,255,.24)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}

body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form button[type="submit"]:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 24px 48px rgba(121,73,255,.30)!important;
}

/* Force the right form panel to use full available width */
body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-card{
  overflow:hidden!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-card form.wcx-p20-form{
  width:100%!important;
  max-width:none!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-card form.wcx-p20-form,
body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-card form.wcx-p20-form > .wcx-p20-grid{
  min-width:0!important;
}

body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-old-label,
body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-hidden{
  display:none!important;
}

/* Portfolio header/footer sync */
body:not(.wc16-admin):not(.wcx-admin) header[data-wcx-p20-synced],
body:not(.wc16-admin):not(.wcx-admin) footer[data-wcx-p20-synced]{
  width:100%!important;
  max-width:100%!important;
}

@media(max-width:980px){
  body:not(.wc16-admin):not(.wcx-admin) .wcx-p20-grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
}

@media(max-width:640px){
  body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form input,
  body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form select,
  body:not(.wc16-admin):not(.wcx-admin) form.wcx-p20-form textarea{
    font-size:14px!important;
  }
}
