.rppt-wrap{font-family:var(--rppt-font);background:var(--rppt-bg);color:var(--rppt-text);padding:24px;width:100%;box-sizing:border-box}.rppt-form,.rppt-panel{background:var(--rppt-card);border:1px solid var(--rppt-border);border-radius:var(--rppt-radius);padding:28px;max-width:980px;margin:0 auto;box-sizing:border-box}.rppt-head h2,.rppt-panel h2{font-size:var(--rppt-title-size);font-weight:var(--rppt-title-weight);line-height:1.18;margin:0 0 8px;color:var(--rppt-text);letter-spacing:0;word-spacing:0}.rppt-head p{font-size:var(--rppt-text-size);font-weight:var(--rppt-text-weight);color:var(--rppt-muted);line-height:1.65;margin:0 0 22px;letter-spacing:0;word-spacing:0}.rppt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.rppt-form label,.rppt-search input{font-size:var(--rppt-label-size);font-weight:var(--rppt-label-weight);color:var(--rppt-text);line-height:1.4}.rppt-form input,.rppt-form select,.rppt-form textarea,.rppt-search input{display:block;width:100%;margin-top:7px;border:1px solid var(--rppt-border);border-radius:10px;background:#fff;color:var(--rppt-text);font-size:var(--rppt-text-size);font-weight:var(--rppt-text-weight);line-height:1.55;padding:12px 13px;box-sizing:border-box;letter-spacing:0;word-spacing:0}.rppt-full{display:block;margin-top:16px}.rppt-privacy{font-size:13px;line-height:1.55;color:var(--rppt-muted);margin:14px 0}.rppt-button{appearance:none;border:0;border-radius:10px;background:var(--rppt-primary);color:#fff;font-size:var(--rppt-button-size);font-weight:var(--rppt-button-weight);line-height:1.2;padding:13px 20px;cursor:pointer}.rppt-button:hover{filter:brightness(.96)}.rppt-response{margin-top:14px;font-size:var(--rppt-text-size);line-height:1.6}.rppt-response.ok{color:#0f7a3b}.rppt-response.err{color:#b42318}.rppt-search{display:flex;gap:10px;align-items:end;margin-bottom:20px}.rppt-ticket-list{display:grid;gap:12px}.rppt-ticket{border:1px solid var(--rppt-border);border-radius:10px;padding:16px;background:#fff}.rppt-ticket strong{display:block;font-size:18px;margin-bottom:8px}.rppt-ticket span{display:inline-block;color:#fff;background:var(--rppt-primary);border-radius:999px;font-size:12px;padding:4px 9px;margin-bottom:8px}.rppt-ticket p{white-space:pre-line;line-height:1.65;margin:0;color:var(--rppt-muted)}@media(max-width:760px){.rppt-wrap{padding:16px}.rppt-form,.rppt-panel{padding:20px}.rppt-grid{grid-template-columns:1fr}.rppt-search{display:block}.rppt-search .rppt-button{margin-top:10px;width:100%}}

/* v22: formulario integrado en contacto full width */
.rppt-wrap.rppt-wrap--full{padding:0;background:transparent;width:100%}
.rppt-wrap.rppt-wrap--full .rppt-form{max-width:none;width:100%;margin:0}


/* V27 - Evita que el formulario integrado se estire por columnas heredadas */
.rppt-wrap{max-width:100%;box-sizing:border-box}
.rppt-wrap .rppt-form{box-sizing:border-box}

/* v48 formulario de contacto: iconos internos sin MP3/imagenes */
.rppt-wrap.rppt-wrap--full .rppt-form{
  padding:20px 22px!important;
  border-radius:16px!important;
}
.rppt-wrap.rppt-wrap--full .rppt-head h2{margin-bottom:4px!important;}
.rppt-wrap.rppt-wrap--full .rppt-head p{margin-bottom:14px!important;line-height:1.35!important;}
.rppt-wrap.rppt-wrap--full .rppt-grid{gap:10px 18px!important;}
.rppt-field{display:block!important;position:relative!important;}
.rppt-label-text{display:block!important;margin-bottom:5px!important;}
.rppt-input-wrap{position:relative!important;display:block!important;width:100%!important;}
.rppt-field-icon{
  position:absolute!important;
  left:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:18px!important;
  height:18px!important;
  color:var(--rppt-primary)!important;
  opacity:.82!important;
  z-index:2!important;
  pointer-events:none!important;
}
.rppt-input-wrap--textarea .rppt-field-icon{top:18px!important;transform:none!important;}
.rppt-field-icon svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.85!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.rppt-form .rppt-input-wrap input,
.rppt-form .rppt-input-wrap select,
.rppt-form .rppt-input-wrap textarea{
  margin-top:0!important;
  padding-left:40px!important;
  min-height:40px!important;
  height:40px!important;
  border-radius:10px!important;
  background:#fff!important;
}
.rppt-form .rppt-input-wrap textarea{
  height:76px!important;
  min-height:76px!important;
  padding-top:10px!important;
  resize:vertical!important;
}
.rppt-full{margin-top:10px!important;}
.rppt-privacy{margin:10px 0!important;line-height:1.35!important;}
.rppt-button{padding:10px 18px!important;border-radius:10px!important;}
@media(max-width:760px){
  .rppt-wrap.rppt-wrap--full .rppt-form{padding:18px 16px!important;}
  .rppt-form .rppt-input-wrap input,
  .rppt-form .rppt-input-wrap select{height:42px!important;min-height:42px!important;}
}


/* v49 fix real: iconos del formulario con tamaño fijo y sin relleno */
.rppt-form .rppt-input-wrap .rppt-field-icon,
.rppt-wrap .rppt-form .rppt-field-icon{
  position:absolute!important;
  left:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  overflow:hidden!important;
  color:var(--rppt-primary)!important;
  z-index:3!important;
  pointer-events:none!important;
  line-height:1!important;
  font-size:0!important;
}
.rppt-form .rppt-input-wrap--textarea .rppt-field-icon{top:15px!important;transform:none!important;}
.rppt-form .rppt-input-wrap .rppt-field-icon svg,
.rppt-wrap .rppt-form .rppt-field-icon svg,
.rppt-form .rppt-input-wrap .rppt-field-icon svg *,
.rppt-wrap .rppt-form .rppt-field-icon svg *{
  box-sizing:border-box!important;
}
.rppt-form .rppt-input-wrap .rppt-field-icon svg,
.rppt-wrap .rppt-form .rppt-field-icon svg{
  display:block!important;
  width:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.rppt-form .rppt-input-wrap .rppt-field-icon svg path,
.rppt-form .rppt-input-wrap .rppt-field-icon svg circle,
.rppt-form .rppt-input-wrap .rppt-field-icon svg line,
.rppt-form .rppt-input-wrap .rppt-field-icon svg polyline,
.rppt-form .rppt-input-wrap .rppt-field-icon svg polygon,
.rppt-form .rppt-input-wrap .rppt-field-icon svg rect{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  vector-effect:non-scaling-stroke!important;
}
.rppt-form .rppt-input-wrap input,
.rppt-form .rppt-input-wrap select,
.rppt-form .rppt-input-wrap textarea{
  padding-left:42px!important;
  max-width:100%!important;
}
.rppt-wrap.rppt-wrap--full .rppt-form{overflow:hidden!important;}


/* v61 - Formulario contacto: iconos fijos sin pisar texto */
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-input-wrap{
  position:relative!important;
  display:block!important;
  width:100%!important;
}
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-field-icon{
  position:absolute!important;
  left:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:16px!important;
  min-width:16px!important;
  max-width:16px!important;
  height:16px!important;
  min-height:16px!important;
  max-height:16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:4!important;
  pointer-events:none!important;
  overflow:hidden!important;
  color:var(--rppt-primary)!important;
}
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-input-wrap--textarea .rppt-field-icon{
  top:13px!important;
  transform:none!important;
}
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-field-icon svg,
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-field-icon svg *{
  width:16px!important;
  height:16px!important;
  max-width:16px!important;
  max-height:16px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
}
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-input-wrap input,
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-input-wrap select,
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-input-wrap textarea{
  padding-left:46px!important;
  text-indent:0!important;
  box-sizing:border-box!important;
  background:#fff!important;
}
body .rppt-wrap.rppt-wrap--full .rppt-form .rppt-input-wrap textarea{
  padding-top:8px!important;
  min-height:64px!important;
  height:64px!important;
}
