/* PS Contact Forms: frontend aislado del tema (AT Movic, Classic, Hummingbird, etc.) */
.pcf-shell{
  --pcf-accent:var(--bs-primary,var(--primary,#2b2b2b));
  --pcf-text:#2b2b2b;
  --pcf-muted:#767676;
  --pcf-border:#d7d7d7;
  --pcf-error:#b42318;
  --pcf-success:#16794b;
  width:100%;
  max-width:820px;
  margin:0 auto;
  padding:0;
  color:var(--pcf-text);
  text-align:left;
}
.pcf-shell,.pcf-shell *{box-sizing:border-box}
.pcf-shell .pscontactforms{
  display:block;
  width:100%;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:left;
}
.pcf-shell .pcf-form-header{display:block;margin:0 0 1.5rem;padding:0;text-align:left}
.pcf-shell .pcf-form-title{display:block;margin:0;padding:0;color:inherit;font:inherit;font-size:1.65rem;font-weight:600;line-height:1.25;text-align:left}
.pcf-shell .pcf-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  column-gap:1.25rem;
  row-gap:1.25rem;
  width:100%;
  margin:0;
  padding:0;
  align-items:start;
}
.pcf-shell .pcf-field{display:block;min-width:0;margin:0;padding:0;text-align:left}
.pcf-shell .pcf-width-25{grid-column:span 3}.pcf-shell .pcf-width-33{grid-column:span 4}.pcf-shell .pcf-width-50{grid-column:span 6}.pcf-shell .pcf-width-66{grid-column:span 8}.pcf-shell .pcf-width-75{grid-column:span 9}.pcf-shell .pcf-width-100{grid-column:1/-1}
.pcf-shell .pcf-label,.pcf-shell .pcf-legend{
  display:flex;
  align-items:baseline;
  justify-content:flex-start;
  gap:.25rem;
  float:none;
  position:static;
  width:100%;
  max-width:none;
  margin:0 0 .45rem;
  padding:0;
  border:0;
  transform:none;
  color:inherit;
  font:inherit;
  font-size:.96rem;
  font-weight:600;
  line-height:1.35;
  text-align:left;
}
.pcf-shell .pcf-required{color:#d93025;font-weight:700}
.pcf-shell .pcf-control{
  appearance:auto;
  display:block;
  float:none;
  width:100%;
  min-width:0;
  min-height:46px;
  margin:0;
  padding:.72rem .9rem;
  border:1px solid var(--pcf-border);
  border-radius:3px;
  background:#fff;
  color:var(--pcf-text);
  font:inherit;
  font-size:1rem;
  line-height:1.35;
  text-align:left;
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.pcf-shell .pcf-textarea{min-height:150px;resize:vertical}
.pcf-shell .pcf-control::placeholder{color:#a1a1a1;opacity:1}
.pcf-shell .pcf-control:focus{border-color:var(--pcf-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--pcf-accent) 18%,transparent);outline:0}
.pcf-shell .pcf-fieldset{display:block;width:100%;margin:0;padding:0;border:0;text-align:left}
.pcf-shell .pcf-choice-list{display:grid;gap:.5rem;width:100%}
.pcf-shell .pcf-choice,.pcf-shell .pcf-check-row{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  gap:.55rem;
  float:none;
  width:100%;
  margin:0;
  padding:0;
  color:inherit;
  font:inherit;
  font-weight:400;
  line-height:1.45;
  text-align:left;
  cursor:pointer;
}
.pcf-shell .pcf-choice input,.pcf-shell .pcf-check-row input{flex:0 0 auto;width:auto;height:auto;margin:.22rem 0 0;padding:0}
.pcf-shell .pcf-choice span,.pcf-shell .pcf-check-row span{display:inline;text-align:left}
.pcf-shell .pcf-help{display:block;margin:.38rem 0 0;color:var(--pcf-muted);font-size:.86rem;line-height:1.4;text-align:left}
.pcf-shell .pcf-field-error{display:block;margin:.38rem 0 0;color:var(--pcf-error);font-size:.86rem;line-height:1.35;text-align:left}
.pcf-shell .pcf-field-error:empty{display:none}
.pcf-shell .pcf-has-error .pcf-control{border-color:var(--pcf-error)}
.pcf-shell .pcf-has-error .pcf-control:focus{box-shadow:0 0 0 3px rgba(180,35,24,.13)}
.pcf-shell .pcf-section-title{display:block;margin:.25rem 0 .15rem;padding:0;color:inherit;font:inherit;font-size:1.15rem;font-weight:600;line-height:1.3;text-align:left}
.pcf-shell .pcf-html{display:block;width:100%;text-align:left}
.pcf-shell .pcf-footer-area{display:grid;gap:1.15rem;width:100%;margin:1.35rem 0 0;padding:0;text-align:left}
.pcf-shell .pcf-privacy,.pcf-shell .pcf-captcha{display:block;width:100%;margin:0;padding:0;text-align:left}
.pcf-shell .pcf-actions{display:flex;justify-content:flex-start;width:100%;margin:0;padding:0}
.pcf-shell .pcf-submit{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:140px;
  margin:0;
  padding:.78rem 1.35rem;
  border:1px solid var(--pcf-accent);
  border-radius:3px;
  background:var(--pcf-accent);
  color:#fff;
  font:inherit;
  font-weight:600;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
  box-shadow:none;
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.pcf-shell .pcf-submit:hover,.pcf-shell .pcf-submit:focus{color:#fff;text-decoration:none;filter:brightness(.9);transform:translateY(-1px);box-shadow:0 5px 14px rgba(0,0,0,.15);outline:0}
.pcf-shell .pcf-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.pcf-page-messages{width:100%;max-width:820px;margin:0 auto}
.pcf-success{display:flex;align-items:flex-start;gap:1rem;margin:0 0 1.5rem;padding:1.15rem 1.25rem;border:1px solid #b8dfca;border-left:4px solid var(--pcf-success,#16794b);border-radius:4px;background:#effaf4;color:#155f3d;text-align:left}
.pcf-success-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#16794b;color:#fff;font-weight:700}
.pcf-success strong{display:block;margin-bottom:.2rem;font-size:1.05rem}.pcf-success p{margin:0}
.pcf-global-error{width:100%;max-width:820px;margin:0 auto 1.25rem;padding:.9rem 1rem;border-left:4px solid #b42318;background:#fff1f0;color:#8f1d16;text-align:left}
@media(max-width:767px){
  .pcf-shell{max-width:100%}
  .pcf-shell .pcf-grid{grid-template-columns:1fr;column-gap:0;row-gap:1rem}
  .pcf-shell .pcf-field{grid-column:1/-1!important}
  .pcf-shell .pcf-submit{width:100%}
}

/* 2.0.5: presentación editorial exclusiva del formulario con slug "contacto" */
.pcf-contact-page{
  --pcf-contact-green:#245b32;
  --pcf-contact-soft:#f6f7f3;
  --pcf-contact-line:#e4e6df;
  width:100%;
}
.pcf-contact-intro{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  width:100%;
  max-width:1180px;
  margin:0 auto 3.25rem;
  overflow:hidden;
  border:1px solid var(--pcf-contact-line);
  border-radius:4px;
  background:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.045);
}
.pcf-contact-visual{
  position:relative;
  min-height:420px;
  overflow:hidden;
  background:#ecebe6;
}
.pcf-contact-visual img{
  display:block;
  width:100%;
  height:100%;
  min-height:420px;
  object-fit:cover;
  object-position:center center;
}
.pcf-contact-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:3.15rem 3.25rem;
  color:#2b2b2b;
  text-align:left;
}
.pcf-contact-kicker{
  margin:0 0 .65rem;
  color:var(--pcf-contact-green);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.3;
  text-transform:uppercase;
}
.pcf-contact-copy h2{
  margin:0 0 1.1rem;
  color:#171717;
  font:inherit;
  font-size:2rem;
  font-weight:600;
  line-height:1.18;
}
.pcf-contact-copy p{
  margin:0 0 .9rem;
  color:#555;
  font-size:.98rem;
  line-height:1.65;
}
.pcf-contact-topics{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin:.35rem 0 1.45rem;
}
.pcf-contact-topics span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:.32rem .68rem;
  border:1px solid #dfe4da;
  border-radius:999px;
  background:var(--pcf-contact-soft);
  color:#435044;
  font-size:.82rem;
  line-height:1.2;
}
.pcf-contact-details{
  display:grid;
  gap:.24rem;
  margin:0;
  padding:1.05rem 0 0;
  border-top:1px solid var(--pcf-contact-line);
  color:#555;
  font-style:normal;
  font-size:.94rem;
  line-height:1.45;
}
.pcf-contact-details strong{
  margin-bottom:.16rem;
  color:#222;
  font-size:.9rem;
  font-weight:700;
  text-transform:uppercase;
}
.pcf-contact-email{display:inline-flex;flex-wrap:nowrap;gap:0}
.pcf-contact-form-area{
  width:100%;
  max-width:920px;
  margin:0 auto;
  padding:0 0 .5rem;
}
.pcf-contact-page .pcf-shell,
.pcf-contact-page .pcf-page-messages{max-width:820px}
.pcf-contact-page .pcf-form-header{margin-bottom:1.65rem}
.pcf-contact-page .pcf-form-title{font-size:1.55rem}

@media(max-width:991px){
  .pcf-contact-intro{
    grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);
    margin-bottom:2.75rem;
  }
  .pcf-contact-visual,
  .pcf-contact-visual img{min-height:360px}
  .pcf-contact-copy{padding:2.35rem 2.25rem}
  .pcf-contact-copy h2{font-size:1.75rem}
}
@media(max-width:767px){
  .pcf-contact-intro{
    display:block;
    margin:0 auto 2.25rem;
    border-radius:3px;
  }
  .pcf-contact-visual{min-height:0;aspect-ratio:16/10}
  .pcf-contact-visual img{height:100%;min-height:0;object-position:center center}
  .pcf-contact-copy{padding:1.65rem 1.35rem 1.8rem}
  .pcf-contact-copy h2{font-size:1.55rem}
  .pcf-contact-copy p{font-size:.94rem;line-height:1.58}
  .pcf-contact-topics{margin-bottom:1.2rem}
  .pcf-contact-form-area{padding:0}
}
