/*
 * Contact Form 7: underline fields, labels above, pill outlined submit.
 */
.wpcf7 form > p {
	margin: 0 0 1.75rem;
}

.wpcf7 form > p:last-of-type {
	margin-bottom: 0;
	text-align: right;
}

.wpcf7 label {
	display: block;
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

.wpcf7 .wpcf7-form-control-wrap {
	display: block;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0.9rem 0 0.45rem;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--border);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	outline: none;
	font: inherit;
	color: inherit;
	appearance: none;
}

.wpcf7 textarea {
	min-height: 8.5rem;
	resize: vertical;
	padding-top: 1.1rem;
	line-height: 1.5;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 input[type="url"]:focus,
.wpcf7 textarea:focus {
	border-bottom-color: var(--wp--preset--color--black);
}

.wpcf7 .wpcf7-not-valid {
	border-bottom-color: var(--wp--preset--color--error);
}

.wpcf7 .wpcf7-submit {
	display: inline-block;
	margin-top: 0.35rem;
	padding: 0.7rem 1.85rem;
	border: 1px solid var(--wp--preset--color--black);
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--black);
	font: inherit;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	cursor: pointer;
}

.wpcf7 .wpcf7-submit:hover,
.wpcf7 .wpcf7-submit:focus-visible {
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}

/*
 * Constant Contact forms: underline fields, labels above, pill outlined submit.
 * Footer signup and newsletter popup.
 */
footer .site-footer-signup .wp-block-heading {
	margin: 0 0 1.75rem;
	font-size: var(--wp--preset--font-size--large, 1.25rem);
	font-weight: 400;
	line-height: 1.25;
}

footer .site-footer-signup .ctct-form-wrapper,
.site-footer-signup .ctct-form-wrapper,
.roi-james-newsletter-popup__form .ctct-form-wrapper {
	margin: 0;
}

footer .site-footer-signup .ctct-form-wrapper .ctct-form,
.site-footer-signup .ctct-form-wrapper .ctct-form,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-form {
	margin: 0;
}

footer .site-footer-signup .ctct-form-wrapper .ctct-form-description,
footer .site-footer-signup .ctct-form-wrapper .ctct-disclosure,
footer .site-footer-signup .ctct-form-wrapper .ctct-list-selector,
.site-footer-signup .ctct-form-wrapper .ctct-form-description,
.site-footer-signup .ctct-form-wrapper .ctct-disclosure,
.site-footer-signup .ctct-form-wrapper .ctct-list-selector,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-form-description,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-disclosure,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-list-selector {
	display: none !important;
}

footer .site-footer-signup .ctct-form-wrapper .ctct-form-field,
.site-footer-signup .ctct-form-wrapper .ctct-form-field,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-form-field {
	margin: 0 0 1.75rem;
}

footer .site-footer-signup .ctct-form-wrapper .ctct-form-field-submit,
.site-footer-signup .ctct-form-wrapper .ctct-form-field-submit,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-form-field-submit {
	margin: 0;
	text-align: right;
}

footer .site-footer-signup .ctct-form-wrapper .ctct-label-top,
.site-footer-signup .ctct-form-wrapper .ctct-label-top,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-label-top {
	display: block;
	margin-bottom: 0.5rem;
}

footer .site-footer-signup .ctct-form-wrapper label,
.site-footer-signup .ctct-form-wrapper label,
.roi-james-newsletter-popup__form .ctct-form-wrapper label {
	display: block;
	margin: 0;
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

footer .site-footer-signup .ctct-form-wrapper .ctct-required-indicatior,
.site-footer-signup .ctct-form-wrapper .ctct-required-indicatior,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-required-indicatior {
	display: none;
}

footer .site-footer-signup .ctct-form-wrapper input[type="email"],
footer .site-footer-signup .ctct-form-wrapper input[type="text"],
.site-footer-signup .ctct-form-wrapper input[type="email"],
.site-footer-signup .ctct-form-wrapper input[type="text"],
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="email"],
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="text"] {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0.9rem 0 0.45rem;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--border);
	border-radius: 0;
	background: transparent;
	background-image: none;
	box-shadow: none;
	outline: none;
	font: inherit;
	color: inherit;
	appearance: none;
}

footer .site-footer-signup .ctct-form-wrapper input[type="email"]:focus,
footer .site-footer-signup .ctct-form-wrapper input[type="text"]:focus,
.site-footer-signup .ctct-form-wrapper input[type="email"]:focus,
.site-footer-signup .ctct-form-wrapper input[type="text"]:focus,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="email"]:focus,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="text"]:focus {
	border-bottom-color: var(--wp--preset--color--black);
}

footer .site-footer-signup .ctct-form-wrapper input[type="email"]:required:valid,
footer .site-footer-signup .ctct-form-wrapper input[type="email"]:required.ctct-invalid,
footer .site-footer-signup .ctct-form-wrapper input[type="email"].ctct-invalid,
footer .site-footer-signup .ctct-form-wrapper input[type="text"]:required:valid,
footer .site-footer-signup .ctct-form-wrapper input[type="text"]:required.ctct-invalid,
footer .site-footer-signup .ctct-form-wrapper input[type="text"].ctct-invalid,
.site-footer-signup .ctct-form-wrapper input[type="email"]:required:valid,
.site-footer-signup .ctct-form-wrapper input[type="email"]:required.ctct-invalid,
.site-footer-signup .ctct-form-wrapper input[type="email"].ctct-invalid,
.site-footer-signup .ctct-form-wrapper input[type="text"]:required:valid,
.site-footer-signup .ctct-form-wrapper input[type="text"]:required.ctct-invalid,
.site-footer-signup .ctct-form-wrapper input[type="text"].ctct-invalid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="email"]:required:valid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="email"]:required.ctct-invalid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="email"].ctct-invalid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="text"]:required:valid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="text"]:required.ctct-invalid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="text"].ctct-invalid {
	padding-left: 0;
	background: transparent;
	background-image: none;
	border-top: 0;
	border-left: 0;
	border-right: 0;
	border-bottom: 1px solid var(--wp--preset--color--border);
}

footer .site-footer-signup .ctct-form-wrapper input[type="email"].ctct-invalid,
footer .site-footer-signup .ctct-form-wrapper input[type="text"].ctct-invalid,
.site-footer-signup .ctct-form-wrapper input[type="email"].ctct-invalid,
.site-footer-signup .ctct-form-wrapper input[type="text"].ctct-invalid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="email"].ctct-invalid,
.roi-james-newsletter-popup__form .ctct-form-wrapper input[type="text"].ctct-invalid {
	border-bottom-color: var(--wp--preset--color--error);
}

footer .site-footer-signup .ctct-form-wrapper .ctct-submit,
.site-footer-signup .ctct-form-wrapper .ctct-submit,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-submit {
	display: inline-block;
	margin-top: 0.35rem;
	padding: 0.7rem 1.85rem;
	border: 1px solid var(--wp--preset--color--black);
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--black);
	font: inherit;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	cursor: pointer;
}

footer .site-footer-signup .ctct-form-wrapper .ctct-submit:hover,
footer .site-footer-signup .ctct-form-wrapper .ctct-submit:focus-visible,
.site-footer-signup .ctct-form-wrapper .ctct-submit:hover,
.site-footer-signup .ctct-form-wrapper .ctct-submit:focus-visible,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-submit:hover,
.roi-james-newsletter-popup__form .ctct-form-wrapper .ctct-submit:focus-visible {
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}

