:root {
--field-bg: var(--panel-bg);
--field-text: var(--grey-22);
--field-label: var(--text-soft);
--field-hint: var(--grey-6b);
--field-border: var(--rule);
--field-border-hover: var(--grey-99);
--field-border-focus: var(--brightblue);
--field-focus-ring: var(--focus-ring);
--field-disabled-bg: var(--grey-f2);
--field-error: var(--hdred);
--field-error-bg: var(--pink-palest);
--field-required: var(--hdred);
--field-gap: 1.15em;
--field-radius: var(--rounded, 4px);
--field-pad-y: 0.55em;
--field-pad-x: 0.7em;
--form-max: 34em;
}
.pl-form {
max-width: var(--form-max);
margin: 0;
}
.pl-form--wide {
max-width: 52em;
}
.pl-formpage {
max-width: var(--form-max);
margin: 0 auto;
}
.pl-formpage .pl-form,
.pl-formpage .pl-form--wide {
max-width: none;
}
.pl-form__intro {
margin-bottom: 1.4em;
line-height: 1.5;
color: var(--field-text);
}
.pl-form__note {
margin-top: 1.6em;
font-size: 0.9em;
line-height: 1.5;
color: var(--field-hint);
}
.pl-form__section {
border: 0;
padding: 0;
margin: 0 0 1.8em;
}
.pl-form__section legend {
font-size: 1.15em;
font-weight: bold;
color: var(--field-text);
padding: 0;
margin-bottom: 0.8em;
}
.pl-form__section--checks .pl-field--check {
margin-bottom: 0.45em;
}
.pl-form__row {
display: flex;
flex-wrap: wrap;
gap: 0 1em;
}
.pl-form__row > .pl-field {
flex: 1 1 100%;
}
.pl-readout {
margin: 0 0 1.8em;
}
.pl-readout__row {
padding: 0.7em 0;
border-bottom: 1px solid var(--field-border);
}
.pl-readout__row:last-child {
border-bottom: 0;
}
.pl-readout dt {
font-size: 0.9em;
font-weight: bold;
color: var(--field-label);
margin: 0 0 0.15em;
}
.pl-readout dd {
margin: 0;
color: var(--field-text);
line-height: 1.45;
overflow-wrap: anywhere;
}
.pl-readout__change {
margin-left: 0.6em;
font-size: 0.9em;
white-space: nowrap;
}
form[data-signin] .pl-readout__change {
display: block;
width: fit-content;
margin: calc(0.4em - var(--field-gap) / 0.9) 0 calc(var(--field-gap) / 0.9);
}
form[data-signin] .pl-readout__change.d-none {
display: none;
}
form[data-signin] [data-signin-stale] {
margin-bottom: 1.4em;
border-radius: var(--field-radius);
}
.pl-signin-new {
padding: 1em 1.1em;
background: var(--blue-tint-pale);
line-height: 1.4;
}
#content .pl-signin-new__lead, .pl-signin-new__lead {
margin: 0 0 0.8em;
color: var(--field-text);
overflow-wrap: anywhere;
}
#content .pl-signin-new .buttons, .pl-signin-new a.buttons, .pl-signin-new button.buttons {
display: inline-block;
font-size: 1.05em;
padding: 0.5em 1.2em;
}
.pl-register-known {
margin-bottom: var(--field-gap);
border-radius: var(--field-radius);
}
#content .pl-signin-new__small, .pl-signin-new__small {
margin: 0.8em 0 0;
font-size: 0.85em;
color: var(--field-hint);
}
.pl-link {
display: block;
margin: calc(0.4em - var(--field-gap) / 0.9) 0 calc(var(--field-gap) / 0.9);
padding: 0;
font: inherit;
font-size: 0.9em;
color: var(--link);
background: none;
border: 0;
cursor: pointer;
text-align: left;
}
.pl-link:hover {
text-decoration: underline;
}
.pl-link.d-none {
display: none;
}
.pl-postcode-check {
margin-top: 0.5em;
padding: 0.6em 0.8em;
font-size: 0.9em;
line-height: 1.45;
border-left: 3px solid var(--warning-border, #c98a00);
background: var(--warning-bg, rgba(201, 138, 0, 0.1));
border-radius: 0 var(--field-radius) var(--field-radius) 0;
}
.pl-postcode-check.d-none {
display: none;
}
.pl-postcode-check p,
#content .pl-postcode-check p {
margin: 0 0 0.35em;
}
.pl-postcode-check__action {
padding: 0;
font: inherit;
font-weight: bold;
color: var(--link);
background: none;
border: 0;
cursor: pointer;
text-decoration: underline;
}
.pl-reveal {
position: relative;
display: block;
}
.pl-reveal .pl-input {
padding-right: 4.5em;
}
.pl-reveal__button {
position: absolute;
top: 0;
right: 0;
bottom: 0;
padding: 0 var(--field-pad-x);
font: inherit;
font-size: 0.9em;
font-weight: bold;
color: var(--link);
background: none;
border: 0;
cursor: pointer;
}
.pl-reveal__button:focus-visible {
outline: 2px solid var(--field-border-focus);
outline-offset: -4px;
}
.pl-field {
margin-bottom: var(--field-gap);
}
.pl-field__label {
display: block;
margin-bottom: 0.3em;
padding: 0;
font-size: 0.95em;
font-weight: bold;
color: var(--field-label);
text-align: left;
line-height: 1.3;
}
.pl-field__required {
color: var(--field-required);
margin-left: 0.2em;
}
.pl-field__control {
position: relative;
}
.pl-field__hint {
margin: 0.35em 0 0;
font-size: 0.85em;
line-height: 1.4;
color: var(--field-hint);
}
.pl-field__error {
display: block;
margin-top: 0.3em;
font-size: 0.85em;
line-height: 1.3;
color: var(--field-error);
}
.pl-field__error:empty {
display: none;
}
.pl-input,
.pl-field__control input[type=text],
.pl-field__control input[type=email],
.pl-field__control input[type=password],
.pl-field__control input[type=tel],
.pl-field__control input[type=url],
.pl-field__control input[type=date],
.pl-field__control input[type=number],
.pl-field__control select,
.pl-field__control textarea {
display: block;
width: 100%;
box-sizing: border-box;
margin: 0;
padding: var(--field-pad-y) var(--field-pad-x);
font-family: inherit;
font-size: max(1.05em, 16px);
line-height: 1.4;
color: var(--field-text);
background-color: var(--field-bg);
border: 1px solid var(--field-border);
border-radius: var(--field-radius);
min-height: 2.75em;
}
.pl-input:hover,
.pl-field__control input:hover,
.pl-field__control select:hover,
.pl-field__control textarea:hover {
border-color: var(--field-border-hover);
}
.pl-input:focus,
.pl-field__control input:focus,
.pl-field__control select:focus,
.pl-field__control textarea:focus {
outline: none;
border-color: var(--field-border-focus);
box-shadow: 0 0 0 3px var(--field-focus-ring);
}
.pl-input:disabled,
.pl-input[readonly],
.pl-field__control input:disabled,
.pl-field__control input[readonly],
.pl-field__control select:disabled,
.pl-field__control textarea[readonly] {
background-color: var(--field-disabled-bg);
color: var(--field-hint);
cursor: not-allowed;
}
.pl-input--multiline,
.pl-field__control textarea {
min-height: 6em;
resize: vertical;
}
.pl-field__inline {
display: flex;
align-items: stretch;
gap: 0.5em;
}
.pl-field__inline .pl-input {
flex: 1 1 auto;
}
.pl-field__inline .buttons {
flex: 0 0 auto;
width: auto;
white-space: nowrap;
}
.pl-field--invalid .pl-field__control input,
.pl-field--invalid .pl-field__control select,
.pl-field--invalid .pl-field__control textarea,
.pl-field__control input.input-validation-error,
.pl-field__control select.input-validation-error,
.pl-field__control textarea.input-validation-error {
border-color: var(--field-error) !important;
background-color: var(--field-error-bg);
}
.pl-field--invalid .pl-field__label {
color: var(--field-error);
}
.pl-field--check {
display: flex;
align-items: flex-start;
gap: 0.6em;
}
.pl-field--check .pl-field__control {
flex: 0 0 auto;
padding-top: 0.15em;
}
.pl-field--check .pl-field__label {
margin-bottom: 0;
font-weight: normal;
color: var(--field-text);
cursor: pointer;
}
.pl-check,
.pl-field--check input[type=checkbox] {
width: 1.15em;
height: 1.15em;
margin: 0;
accent-color: var(--brightblue);
cursor: pointer;
}
.pl-choice {
display: block;
margin: 0;
}
.pl-choice__option {
display: flex;
align-items: center;
gap: 0.65em;
padding: 0.75em 0.85em;
margin-bottom: 0.5em;
border: 1px solid var(--field-border);
border-radius: var(--field-radius);
background-color: var(--field-bg);
cursor: pointer;
overflow-wrap: anywhere;
}
.pl-choice__option:hover {
border-color: var(--field-border-hover);
}
.pl-choice__option input[type="radio"],
.pl-choice__option input[type="checkbox"] {
flex: 0 0 auto;
width: 1.15em;
height: 1.15em;
margin: 0;
accent-color: var(--brightblue);
}
.pl-choice__option:has(input:checked) {
border-color: var(--field-border-focus);
box-shadow: inset 0 0 0 1px var(--field-border-focus);
}
.pl-choice__option input:checked + .pl-choice__text {
font-weight: bold;
}
.pl-choice__option:focus-within {
box-shadow: 0 0 0 3px var(--field-focus-ring);
}
.pl-form div.idpc_af {
color: var(--field-text);
background: var(--field-bg);
border-color: var(--field-border);
}
#content .pl-form div.idpc_af > ul {
padding: 0;
}
#content .pl-form div.idpc_af > ul > li {
margin: 0;
padding-left: var(--field-pad-x);
padding-right: var(--field-pad-x);
color: var(--field-text);
list-style: none;
}
#content .pl-form div.idpc_af > ul > li:hover,
#content .pl-form div.idpc_af > ul > li[aria-selected=true] {
background-color: var(--grey-f0);
}
.pl-form div.idpc_toolbar {
border-top-color: var(--field-border);
}
.pl-actions {
display: flex;
flex-direction: column;
gap: 0.9em;
margin-top: 1.6em;
}
.pl-actions .buttons {
width: 100%;
}
.pl-actions__secondary {
text-align: center;
font-size: 0.95em;
}
.pl-actions__secondary a {
display: inline-flex;
align-items: center;
gap: 0.35em;
}
.pl-actions__secondary .icon {
fill: currentColor;
}
.signinregister .resetreqs { margin: 2em 0 0.6em; font-size: 1.1em; }
.signinregister .resetreqs + ul { margin: 0 0 1em 1.2em; padding: 0; }
.pl-actions a.buttons { box-sizing: border-box; text-align: center; }
.grecaptcha-badge { visibility: hidden; }
.pl-actions .contactrecaptcha {
margin: 0;
font-size: 0.8em;
color: var(--grey-99);
text-align: center;
}
#contactform[hidden], #contactthanks[hidden] { display: none; }
#contactthanks { margin-top: 1em; }
#contactthanks:focus { outline: none; }
.pl-form .validation-summary-errors {
position: relative;
margin-bottom: 1.4em;
padding: 0.6em 0.8em 0.6em 2.5em;
border-left: 3px solid var(--field-error);
background-color: var(--blue-tint-cold);
color: var(--text);
font-size: 0.95em;
line-height: 1.4;
}
.pl-form .validation-summary-errors::before {
content: "";
position: absolute;
left: 0.8em;
top: 0.7em;
width: 1.2em;
height: 1.2em;
background-color: var(--field-error);
-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z'/%3E%3C/svg%3E") center / contain no-repeat;
mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.pl-form .validation-summary-errors ul {
margin: 0;
padding-left: 1.2em;
}
.pl-form .validation-summary-valid {
display: none;
}
@media (min-width: 48em) {
.pl-form__row > .pl-field--half {
flex: 1 1 calc(50% - 0.5em);
}
.pl-form__row > .pl-field--third {
flex: 1 1 calc(33.333% - 0.67em);
}
.pl-field--short .pl-input,
.pl-field--short .pl-field__control input,
.pl-field--short .pl-field__control select {
max-width: 12em;
}
}
@media (prefers-reduced-motion: reduce) {
.pl-input,
.pl-field__control input,
.pl-field__control select,
.pl-field__control textarea {
transition: none;
}
}