/**
 * Child & Family Associates of Greater Washington.
 *
 * This file adds Gravity Forms styles to the Child & Family Associates of Greater Washington Theme.
 *
 * @package Child & Family Associates of Greater Washington
 * @author  5.12 Design Lab
 * @license GPL-2.0-or-later
 * @link    https://512designlab.com/
 */

/* Gravity Forms
---------------------------------------------------------------------------- */

div.gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: 8px;
}

div.gform_wrapper .gform_required_legend {
    display: none;
}

div.gform_wrapper {
    margin-top: 0;
}

body div.gform_wrapper .gfield:not(.hidden_label) {
    margin-top: 16px;
}

body div.gform_wrapper .gfield:first-child {
    margin-top: 0;
}

div.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
div.gform_wrapper textarea {
    border-radius: 5px;
	margin-bottom: 0;
	padding: 14px !important;
}

div.gform_wrapper .ginput_container_address input {
    margin-bottom: 8px !important;
}

div.gform_wrapper input[value="Other"] {
    margin: 0;
    padding: 5px 10px;
}

div.gform_wrapper select {
	margin-bottom: 16px;
}

div.gform_wrapper.gf_browser_chrome select {
    padding: 16px 20px;
}

div.gform_wrapper .gfield_checkbox,
div.gform_wrapper .gfield_radio {
	margin-bottom: 16px;
}

div.gform_wrapper .hidden_label input,
div.gform_wrapper .top_label .gfield.gf_left_half .ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(.gfield_time_ampm):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker):not(.gfield_signature_container),
div.gform_wrapper .top_label .gfield.gf_right_half .ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(.gfield_time_ampm):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker):not(.gfield_signature_container) {
	margin-top: 0;
}

div.gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container input[type=text], 
div.gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container select {
	margin-bottom: 0;
}

div.gform_wrapper ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #6d6e70;
  opacity: 1; /* Firefox */
}

div.gform_wrapper :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #6d6e70;
}

div.gform_wrapper ::-ms-input-placeholder { /* Microsoft Edge */
  color: #6d6e70;
}

form.searchandfilter ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.searchandfilter li {
    flex: 0 0 30%;
    vertical-align: top;
}

.searchandfilter li:first-child {
    flex-basis: 50%;
}

.searchandfilter li:last-child {
    flex-basis: 20%;
}

.searchandfilter input {
    padding: 12px 16px;
}

.searchandfilter input[type="submit"] {
    display: block;
    padding: 13.5px 30px;
    width: 100%;
}

div.gform_wrapper .gfield_select,
.searchandfilter select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat, repeat;
	background-position: right .7em top 50%, 0 0;
	background-size: .65em auto, 100%;
	border: 1px solid #ddd;
	border-radius: 0;
	box-sizing: border-box;
	color: #333;
	display: block;
	font-size: 16px;
	line-height: inherit;
	padding: 16px 20px 17px;
}

.searchandfilter select {
    padding: 14px 40px 14px 14px;
}

div.gform_wrapper .gfield_select::-ms-expand,
.searchandfilter select::-ms-expand {
	display: none;
}
div.gform_wrapper .gfield_select:hover,
.searchandfilter select:hover {
	border-color: #ddd;
}
div.gform_wrapper .gfield_select:focus,
.searchandfilter select:focus {
	color: #333;
	outline: none;
}
div.gform_wrapper .gfield_select option,
.searchandfilter select option {
	font-weight: normal;
}

div.gform_wrapper .gfield_select option.gf_placeholder {
	color: #999;
}

div.gform_wrapper.gravity-theme .field_description_above .description, 
div.gform_wrapper.gravity-theme .field_description_above .gfield_description, 
div.gform_wrapper.gravity-theme .field_description_above .gsection_description, 
div.gform_wrapper.gravity-theme .field_description_above .instruction {
    border: none;
    font-size: 14px;
    line-height: 1.25;
    margin: -7px 0 10px;
    padding: 0;
}

div.gform_wrapper .gform_footer {
	margin: 13px 0 0;
	padding: 0;
}

div.gform_wrapper .gform_footer input[type="submit"],
div.gform_wrapper button.arrow {
    background-color: transparent;
	border: 1px solid #fff;
    color: #fff;
	cursor: pointer;
    display: table;
	font-size: 18px;
	font-family: "Poppins", sans-serif;
    font-style: italic;
	font-weight: 600;
	padding: 10px 40px;
	text-align: center;
	text-decoration: none;
    transition: all 0.2s ease-in-out;
	white-space: normal;
	width: auto;
}

div.gform_wrapper .gform_footer input[type="submit"]:focus,
div.gform_wrapper .gform_footer input[type="submit"]:hover,
div.gform_wrapper button.arrow:focus,
div.gform_wrapper button.arrow:hover {
    background-color: #fff;
    color: #333;
}

div.gform_wrapper .hide-submit .gform_footer input[type="submit"] {
    display: none;
}


/* "Button" radio/checkbox styles
---------------------------------------------------------------------------- */

.site-container div.gform_wrapper div.gform_fields .gfield.button-display {
	
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox,
div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio {
	align-content: flex-start;
	display: flex;
	flex-wrap: wrap;
    grid-gap: 10px;
	justify-content: flex-start;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox div,
div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio div {
	flex: 0 0 calc(25% - 10px);
	/*max-width: calc(100% - 16px);*/
	position: relative;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio div input[type=radio] {
	display: none;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio div input[type=radio]+label {
	background-color: rgba(0,58,112,.05);
	border: 1px solid rgba(0,58,112,.05);
    border-radius: 3px;
    font-size: 16px;
    font-weight: 400;
	height: 100%;
	margin: 0;
	max-width: none;
	padding: 10px 20px;
	position: relative;
    text-align: center;
	transition: background-color 0.2s ease-in-out;
	width: 100%;
	z-index: 1;
}

div.gform_wrapper div.gform_fields .gfield.button-display.light div.gfield_radio div input[type=radio]+label {
    border: 1px solid rgba(255,255,255,.9);
    background-color: transparent;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio div input[type=radio]:checked+label {
	background-color: #F8A619;
    color: #fff;
}

div.gform_wrapper div.gform_fields .gfield.button-display.light div.gfield_radio div input[type=radio]:checked+label {
	background-color: #F8A619;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio div input[type=radio]+label:hover,
div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio div input[type=radio]:checked+label:hover {
    background-color: #F8A619;
    color: #fff;
}

div.gform_wrapper div.gform_fields .gfield.button-display.light div.gfield_radio div input[type=radio]+label:hover,
div.gform_wrapper div.gform_fields .gfield.button-display.light div.gfield_radio div input[type=radio]:checked+label:hover {
    background-color: #F8A619;
    color: #fff;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_radio div input[type=radio]:checked+label::before {
	content: '';
	display: block;
	left: 0;
	height: 100%;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}


div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox div {
    display: flex;
    grid-gap: 20px 10px;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox div label {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.3;
  display: flex;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox div input[type=checkbox] {
  -webkit-appearance: none;
  appearance: none;
  background-color: var(--form-background);
  margin: 0;

  font: inherit;
  color: currentColor;
  width: 1.15em;
  height: 1.15em;
  border: 0.15em solid #268d94;
  border-radius: 0.15em;

  display: grid;
  place-content: center;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox div input[type=checkbox]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(--form-control-color);
  /* Windows High Contrast Mode */
  background-color: #268d94;
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox div input[type=checkbox]:checked::before {
  transform: scale(1);
}

div.gform_wrapper div.gform_fields .gfield.button-display div.gfield_checkbox div input[type=checkbox]:focus {
  outline: max(2px, 0.15em) solid currentColor;
  outline-offset: max(2px, 0.15em);
}


/* Outlined Buttons styles
---------------------------------------------------------------------------- */

div.gform_wrapper .outlined-buttons button {
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 15px;
    background-color: transparent;
    display: block;
    font-size: 16px;
    font-weight: 700;
    margin: 0 auto 10px !important;
    padding: 10px 20px;
    text-align: center;
    text-transform: none;
    width: 100%;
}


/* Gravity Forms - Error Styles
--------------------------------------------- */

.entry-content div.gform_wrapper div.gform_validation_errors,
.footer-widgets div.gform_wrapper div.gform_validation_errors {
	animation: pulse 3s linear 0s forwards infinite;
	background-color: #d65251;
	border: none;
	color: #fff;
	font-weight: 400;
	left: 0;
    padding: 20px;
	position: relative;
	top: 0;
	z-index: 9999999;
}

.entry-content div.gform_wrapper .gform_validation_errors>h2,
.footer-widgets div.gform_wrapper .gform_validation_errors>h2 {
    color: #fff;
}

@keyframes pulse {
	0% { filter: brightness(1); }
	25% { filter: brightness(1.25); }
	50% { filter: brightness(1); }
	75% { filter: brightness(1.5); }
	100% { filter: brightness(1); }
}

.entry-content div.gform_wrapper li.gfield.gfield_error,
.entry-content div.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning,
.footer-widgets div.gform_wrapper li.gfield.gfield_error,
.footer-widgets div.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
	background-color: transparent;
	border: none;
	padding: 0;
}

.entry-content div.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container,
.entry-content div.gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label,
.footer-widgets div.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container,
.footer-widgets div.gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
	margin: 0;
}

.entry-content div.gform_wrapper .validation_message,
.footer-widgets div.gform_wrapper .validation_message {
	font-size: 14px;
	font-style: italic;
	font-weight: 400;
	padding: 5px;
	position: relative;
}

.entry-content div.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description,
.footer-widgets div.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description {
	position: relative;
	z-index: -1;
}

.entry-content div.gform_wrapper li.gfield_error input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.entry-content div.gform_wrapper li.gfield_error textarea,
.entry-content div.gform_wrapper li.gfield_error select,
.footer-widgets div.gform_wrapper li.gfield_error input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.footer-widgets div.gform_wrapper li.gfield_error textarea,
.footer-widgets div.gform_wrapper li.gfield_error select {
	background-color: #ffe3e3;
    color: #333;
}

.entry-content div.gform_wrapper li.gfield_error select,
.footer-widgets div.gform_wrapper li.gfield_error select {
    border: 1px solid #790000;
}