/* =========================================================
   SIMPLIA — CONTACTO (60/40 · Nom/Apellidos 47.5/5/47.5)
   ========================================================= */

/* ---------- Wrapper + Intro ---------- */
.simplia-contact-wrapper{
  width:100%; max-width:1400px; margin:0 auto;
  padding:0 1rem 80px 1rem; box-sizing:border-box; display:block !important;
}
.simplia-contact-intro{
  max-width:820px; margin:3.2rem auto 2.6rem auto; text-align:center;
  color:#f6f6f9; line-height:1.75; font-size:1.08rem;
}
.simplia-contact-intro a{ color:#f6f6f9; text-decoration:underline; }

/* ---------- Caixa de contacte ---------- */
.simplia-contact-container{
  display:flex !important; flex-direction:row !important; align-items:stretch;
  background:rgba(34,39,51,.99); border-radius:24px;
  box-shadow:0 10px 54px 0 #E0298455, 0 1.5px 14px 0 #4F9DF780;
  overflow:hidden; position:relative !important; z-index:2;
  max-width:980px !important; margin:0 auto !important; min-height:460px;
  border:1px solid #262b36; gap:0;
}

/* ---------- Columnes 60/40 ---------- */
.simplia-contact-form{
  flex:0 1 60% !important; padding:54px 40px 44px 40px;
  display:flex; flex-direction:column; justify-content:center;
  background:rgba(40,64,78,.90);
}
.simplia-contact-side{
  flex:0 1 40% !important; padding:54px 40px 44px 40px;
  display:flex; justify-content:center; border-left:1.5px solid #E02984; background:transparent;
}
.simplia-side-inner{ width:100%; max-width:380px; margin:auto; text-align:left; }

/* ---------- Títols ---------- */
.simplia-contact-title{ font-size:2.3rem; margin-bottom:20px; color:#E02984; font-weight:800; }
.side-title-magenta{ font-size:1.24rem; font-weight:800; margin-bottom:20px; color:#E02984; }

/* ---------- Beneficis ---------- */
.simplia-benefits{ margin-bottom:36px; margin-left:0; padding-left:18px; }
.simplia-benefits li{ margin-bottom:10px; font-size:1.05em; }

/* ---------- SOCIAL CTA ---------- */
.social-cta{ margin-top:12px; }
.social-cta a{
  display:block; margin-bottom:16px; padding:15px 24px; font-weight:600; font-size:1.05em;
  background:transparent; color:#E02984; border:2.5px solid; border-radius:0; text-decoration:none;
  line-height:1.35em; min-height:48px;
  clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
}
.social-cta a img{ margin-right:10px; vertical-align:middle; }
.social-cta .whatsapp-link{ border-color:#25D366; }
.social-cta .telegram-link{ border-color:#229ED9; }

/* =========================================================
   WPForms — Estil base
   ========================================================= */
.wpforms-container,.wpforms-form{
  background:transparent !important; border-radius:0 !important; padding:0 !important;
  max-width:100%; margin:0; box-shadow:none !important; color:var(--simplia-white,#f6f6f9);
  font-family:'Inter', Arial, sans-serif;
}

/* Camps */
.wpforms-field{
  margin-bottom:8px !important;
  background:transparent !important; box-shadow:none !important; border-radius:0 !important;
  position:relative; box-sizing:border-box;
}

/* Inputs / selects / textarea */
.wpforms-field input,.wpforms-field textarea,.wpforms-field select{
  width:100% !important; max-width:100% !important; box-sizing:border-box;
  padding:12px 16px; border:1.5px solid var(--simplia-gray,#2D2D2D); border-radius:8px;
  font-size:1.06rem; background:var(--simplia-white,#f6f6f9); color:var(--simplia-dark,#222733);
  transition:border .2s; margin-top:7px;
}
.wpforms-field input:focus,.wpforms-field textarea:focus,.wpforms-field select:focus{
  border-color:var(--simplia-magenta,#E02984); outline:none;
}

/* Sub-etiquetes */
.wpforms-field .wpforms-field-sublabel{
  display:block; margin-top:6px; margin-bottom:8px; font-size:.78rem; opacity:.7; line-height:1.2;
}

/* Etiquetes */
.wpforms-field-label{ font-weight:600; color:var(--simplia-white,#f6f6f9); margin-bottom:0; margin-top:12px; }
.wpforms-field-required{ color:var(--simplia-magenta,#E02984); font-weight:700; margin-left:4px; }

/* Botó enviar */
.wpforms-submit{
  position:relative; display:inline-block; padding:15px 38px; margin-top:5px;
  font-weight:700; font-size:1.12em; color:#E02984; border:2.5px solid #fff; background:transparent;
  border-radius:0; text-align:center; text-decoration:none;
  transition:background .22s,color .19s,box-shadow .2s,border-color .2s;
  clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
  box-shadow:0 2px 22px 0 #E0298433; white-space:nowrap; outline:none; float:right;
}
.wpforms-submit:hover,.wpforms-submit:focus{ background:#fff; color:#E02984; box-shadow:0 4px 32px 0 #E0298433; border-color:#E02984; }

/* Checkbox 1:1 real */
.wpforms-field input[type="checkbox"]{
  appearance:checkbox !important; -webkit-appearance:checkbox !important; -moz-appearance:checkbox !important;
  width:16px !important; height:16px !important; min-width:16px !important; min-height:16px !important;
  aspect-ratio:1/1 !important; accent-color:var(--simplia-magenta,#E02984);
  vertical-align:middle; margin-right:8px; transform:none !important; box-shadow:none !important; border-radius:2px !important;
}

/* GDPR (etiqueta) */
.wpforms-field-gdpr_checkbox .wpforms-field-label{ display:inline; font-weight:400; font-size:1.02em; }

/* =========================================================
   NOM + COGNOMS — 47.5% + 5% + 47.5% (ID 4186)
   ========================================================= */
#wpforms-4186 .wpforms-field-name,
#wpforms-form-4186 .wpforms-field-name{
  padding-left:0 !important; padding-right:0 !important;
  position:relative !important; /* per ancorar l’error del camp complet */
}

/* Fila sense gutters + gap controlat */
#wpforms-4186 .wpforms-field-name .wpforms-field-row,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-row{
  --name-gap:5%;
  display:flex !important; flex-wrap:nowrap !important;
  gap:var(--name-gap) !important;
  width:100% !important; max-width:100% !important;
  margin-left:0 !important; margin-right:0 !important;
  padding-left:0 !important; padding-right:0 !important;
}

/* Neteja padding/marges que desalineen */
#wpforms-4186 .wpforms-field-name .wpforms-field-row *,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-row *{
  padding-left:0 !important; padding-right:0 !important;
  margin-left:0 !important;  margin-right:0 !important;
  box-sizing:border-box;
}

/* Cada fill directe ocupa 47.5% (100 - gap)/2  */
#wpforms-4186 .wpforms-field-name .wpforms-field-row > *,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-row > *{
  flex:0 0 calc((100% - var(--name-gap)) / 2) !important;
  min-width:0 !important;
}

/* Inputs a 100% dins la seva cel·la */
#wpforms-4186 .wpforms-field-name .wpforms-field-row input,
#wpforms-4186 .wpforms-field-name .wpforms-field-row select,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-row input,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-row select{
  width:100% !important; max-width:100% !important;
}

/* Evita pseudo-elements que afegeixen gap als extrems */
#wpforms-4186 .wpforms-field-name .wpforms-field-row::before,
#wpforms-4186 .wpforms-field-name .wpforms-field-row::after,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-row::before,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-row::after{
  content:none !important; display:none !important;
}

/* Subetiquetes una mica més separades */
#wpforms-4186 .wpforms-field-name .wpforms-field-sublabel,
#wpforms-form-4186 .wpforms-field-name .wpforms-field-sublabel{
  margin-bottom:12px !important;
}

/* =========================================================
   Errors coherents (amb variables d’espai)
   ========================================================= */

/* Base: cada camp reserva espai per l’error */
#wpforms-4186 .wpforms-field,
#wpforms-form-4186 .wpforms-field{
  --err-space:20px;
  padding-bottom:var(--err-space) !important;
}

/* Quan hi ha error, una mica més d’espai */
#wpforms-4186 .wpforms-field.wpforms-has-error,
#wpforms-form-4186 .wpforms-field.wpforms-has-error{
  --err-space:26px;
}

/* Casos especials */
#wpforms-4186 .wpforms-field-textarea,
#wpforms-form-4186 .wpforms-field-textarea{
  --err-space:30px;
}
#wpforms-4186 .wpforms-field-name.wpforms-has-error,
#wpforms-form-4186 .wpforms-field-name.wpforms-has-error{
  --err-space:34px; /* evita trepitjar sublabels */
}

/* Missatge d’error: posició i estil unificats (ID-específic) */
#wpforms-4186 .wpforms-field label.wpforms-error,
#wpforms-4186 .wpforms-field .wpforms-field-row-block label.wpforms-error,
#wpforms-form-4186 .wpforms-field label.wpforms-error,
#wpforms-form-4186 .wpforms-field .wpforms-field-row-block label.wpforms-error{
  left:12px; bottom:6px;
  margin:0 !important; line-height:1.2;
  color:var(--simplia-error,#ff0000) !important; font-weight:700;
  text-align:left;
}

/* RGPD: error centrat verticalment al costat del checkbox */
#wpforms-4186 .wpforms-field-gdpr_checkbox,
#wpforms-form-4186 .wpforms-field-gdpr_checkbox{ position:relative; }
#wpforms-4186 .wpforms-field-gdpr_checkbox label.wpforms-error,
#wpforms-form-4186 .wpforms-field-gdpr_checkbox label.wpforms-error{
  top:50% !important; bottom:auto !important; transform:translateY(-50%);
  left:28px !important; right:auto !important;
  text-align:left; line-height:1.1;
}

/* Inputs amb error no es desplacen */
input.wpforms-error, textarea.wpforms-error, select.wpforms-error{
  position:static !important; border-color:#ff4d4f !important;
  background-color:#fff !important; color:var(--simplia-dark,#222733) !important;
}

/* Contenidor d’errors global */
.wpforms-error{ color:var(--simplia-error,#ff0000) !important; font-weight:700; }
.wpforms-error-container{ text-align:center; min-height:1.6em; }
.wpforms-error-container .wpforms-error{ display:inline-block; font-size:1.05em; line-height:1.4; margin:0; }

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width:1050px){
  .simplia-contact-container{ max-width:98vw !important; }
}
@media (max-width:900px){
  .simplia-contact-container{ flex-direction:column !important; max-width:98vw !important; min-height:unset; }
  .simplia-contact-form,.simplia-contact-side{ padding:30px 12px 24px 12px; flex-basis:100% !important; }
  .simplia-side-inner{ max-width:100%; text-align:center; }
  .side-title-magenta{ text-align:center; }
  .simplia-contact-side{ border-left:none; border-top:1.5px solid #E02984; }
  .wpforms-submit{ float:none; display:block; width:100%; margin-left:0; margin-right:0; text-align:center; font-size:1em; padding:15px 0; }

  /* Nom + cognoms apilat al 100% */
  #wpforms-4186 .wpforms-field-name .wpforms-field-row,
  #wpforms-form-4186 .wpforms-field-name .wpforms-field-row{
    gap:0 !important; flex-wrap:wrap !important;
  }
  #wpforms-4186 .wpforms-field-name .wpforms-field-row > *,
  #wpforms-form-4186 .wpforms-field-name .wpforms-field-row > *{
    flex:0 0 100% !important;
  }
}
@media (max-width:600px){
  .simplia-contact-intro{ font-size:.97rem; margin:2.1rem auto 1.5rem auto; }
  .simplia-contact-container{ border-radius:12px; }
  .simplia-contact-form,.simplia-contact-side{ padding:22px 4vw 16px 4vw; }
}
