/* PluginPip 2027: native contact form integrated with the approved contact page. */
.pp-contact-form-section{background:#f5f1fc;padding:clamp(3.2rem,7vw,7.5rem) 0}
.pp-contact-form-section__layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(2rem,5vw,6rem);align-items:start}
.pp-contact-form-section__intro h2{margin:1rem 0;font-size:clamp(2.7rem,5vw,5.6rem);line-height:.98;letter-spacing:-.065em;color:#251039;font-weight:850}
.pp-contact-form-section__intro h2 em{color:#7943be;font-style:normal}
.pp-contact-form-section__intro p{font-size:1.08rem;line-height:1.7;color:#564764;max-width:33rem}
.pp-contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1.5rem;min-width:0}
.pp-contact-form__field{display:flex;flex-direction:column;gap:.55rem;min-width:0}
.pp-contact-form__field--full,.pp-contact-form__footer,.pp-contact-form__feedback{grid-column:1/-1}
.pp-contact-form__field label{font-size:.81rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#422a60}
.pp-contact-form__field input,.pp-contact-form__field select,.pp-contact-form__field textarea{appearance:none;display:block;width:100%;min-width:0;box-sizing:border-box;border:1.5px solid #cdbde2;border-radius:15px 15px 6px 15px;padding:1rem 1.15rem;background:#fff;color:#27173c;font:inherit;font-size:1rem;line-height:1.45;box-shadow:none;transition:border-color .2s,box-shadow .2s}
.pp-contact-form__field textarea{min-height:180px;resize:vertical}
.pp-contact-form__field input:focus-visible,.pp-contact-form__field select:focus-visible,.pp-contact-form__field textarea:focus-visible{outline:none;border-color:#7042aa;box-shadow:0 0 0 3px rgba(112,66,170,.17)}
.pp-contact-form__field input::placeholder,.pp-contact-form__field textarea::placeholder{color:#776887}
.pp-contact-form__privacy{display:flex;align-items:flex-start;gap:.75rem;color:#554662;font-size:.9rem;line-height:1.6}
.pp-contact-form__privacy input{width:19px;height:19px;margin:.2rem 0 0;accent-color:#6632a1;flex:none}
.pp-contact-form__privacy a{color:#59239c;text-underline-offset:3px}
.pp-contact-form__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.pp-contact-form__submit{display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;border:0;border-radius:999px 999px 18px 999px;background:#c9f53d;color:#251039;padding:1.03rem 1.35rem;min-height:56px;font:inherit;font-weight:830;font-size:1rem;cursor:pointer;transition:transform .2s,background .2s}
.pp-contact-form__submit:hover{background:#defc81;transform:translateY(-2px)}
.pp-contact-form__submit:focus-visible{outline:3px solid #6e40a6;outline-offset:3px}
.pp-contact-form__helper{font-size:.86rem;color:#655873}
.pp-contact-form__feedback{padding:1rem 1.25rem;border:1.5px solid #ab95c9;border-radius:14px;background:#fff;color:#35174f;font-weight:650;line-height:1.5}
.pp-contact-form__feedback--sent{border-color:#62862a;background:#f0f9d9;color:#263d09}
.pp-contact-form__trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
@media(max-width:880px){.pp-contact-form-section__layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:590px){.pp-contact-form{grid-template-columns:minmax(0,1fr)}.pp-contact-form-section__intro h2{font-size:clamp(2.6rem,11vw,4rem)}.pp-contact-form__footer{align-items:stretch;flex-direction:column}.pp-contact-form__submit{width:100%}}
@media(prefers-reduced-motion:reduce){.pp-contact-form__submit{transition:none}.pp-contact-form__submit:hover{transform:none}}

/* Contact-page introduction to the on-page enquiry form. */
.pp-contact-content__options > p {
  font-size: 1.15rem;
  font-weight: 750;
  line-height: 1.6;
  color: #24113d;
}
