.pform {
margin:10px 0;
}

.pform fieldset {
position:relative;
float: left;
clear: both;
width: 100%;
margin: 0 0 1.5em 0;
padding: 0;
border:0;
box-sizing: border-box;
}

.pform legend {
background:var(--theme_colour);
padding:15px;
color:#fff;
font-size:16px;
font-weight:bold;
margin-left:0;
border:0;
display:block;
float:none;
width:100%;
box-sizing: border-box;
}

.pform fieldset ol {
padding: 1em 1em 0 1em;
list-style: none;
}

.pform fieldset li {
float: left;
clear: left;
width: 100%;
padding:.4em 0 .4em .5em;
}

.pform fieldset.submit {
float: none;
width: auto;
border-style: none;
padding-left: 12em;
background-color: transparent;
}

.pform label {
display: block;
float: left;
width: 15em;
margin-right: 1em;
text-align:right;
}

.pform label.radio, .pform label.checkbox {
margin-right:0;
margin-left: .3em;
text-align:left;
display:inline;
width:auto;
float:none;
}

.pform label.error {
color:red;
display:inline;
float:none;
padding:5px 5px 5px 20px;
margin-left:5px;
background:url(/images/icons/exclamation.png) no-repeat left center;
}

.pform input,
.pform select {
width:500px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: .75em;
transition: .5s;
}
.pform input[type=submit] {
width:200px;
}

.pform input[type=submit], .dark_button {
background:#2f3437;
color:#ffffff;
border:0;
padding:6px;
}
.pform input[type=submit]:hover, .dark_button:hover {
background:#555;
}

.pform input.error, .pform select.error {
background:#ffa;
}

.pform dfn.required {
color:red;
}

.pform input:active, .pform input:focus, .pform select:active, .pform select:focus, .pform textarea:active, .pform textarea:focus {
background:#ffc;
}
.pform input[type=submit]:active, .pform input[type=submit]:focus {
background:#AC162C;
}

.pform input.postcode {
text-transform:uppercase;
}

.pform textarea.large {
width:380px;
height:200px;
}

.pform .number {
text-align:right;
}

.pform .hidden {
/* required as a bug stops hidden fields being updated by js, so this hides text fields */
display:none;
}

.pform input.longtext, .pform input.url, .pform input.email {
width:400px;
}

.pform .largebox {
width:600px;
height:400px;
}

.pform .preview {
position:absolute;
top:0;
right:10px;
border:1px solid #777;
background:#ddd;
padding:5px;
text-align:right;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
}

.pform p {
margin-bottom:5px;
}

.pform p.note {
display:inline;
font-style:italic;
padding-left:5px;
}

.pform h5 {
font-weight:bold;
font-size:13px;
color:#bb2530;
padding-top:11px;
}

input.readonly, select.readonly, textarea.readonly {
background:#ddd;
}