/* ==========================================================================
   SoundSt Custom Forms.
   ========================================================================== */

/* Single selectors.  */
.sscf-display-flex-right-middle {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: right;
}

/* General. */
.sscf {
	width: 100%;
}
.sscf .sscf-title {
	font-size: 50px;
}
.sscf .sscf-row {
	display: flex;
	flex-direction: row;
}
.sscf .sscf-row > .sscf-column {
	padding-top: 30px;
}
.sscf .sscf-row > .sscf-column-full {
	width: 100%;
}
.sscf .sscf-row > .sscf-column-1 {
	width: 50%;
	padding-right: 15px;
}
.sscf .sscf-row > .sscf-column-2 {
	width: 50%;
	padding-left: 15px;
}

/* Phone and country. */
.sscf .iti {
	width: 100%;
}
.sscf .iti__selected-country {
	transition-property: background-color;
	transition-duration: 0.2s;
	background-color: #f2f2f2;
}
.sscf .iti__selected-country:hover {
	background-color: #e5e5e5;
}
.sscf .iti__selected-country-primary {
	background-color: transparent!important;
}
.sscf .iti__selected-dial-code {
	margin-left: 0;
	padding-right: 8px;
	line-height: 1;
	font-size: 16px;
	color: #222;
}
.sscf .iti__dropdown-content {
	max-width: 300px;
	font-size: 14px;
	color: #222;
}
.sscf .iti__country-list {
	padding-left: 0;
}
.sscf .iti__country-list .divider {
	margin-bottom: 5px;
	border-bottom: 1px solid #ccc;
	padding-bottom: 5px;
	list-style: none;
}

/* Form elements. */
.sscf input[type=text]::placeholder,
.sscf input[type=email]::placeholder,
.sscf input[type=tel]::placeholder,
.sscf input[type=number]::placeholder,
.sscf textarea::placeholder {
	color: #666!important;
}
.sscf input[type=text],
.sscf input[type=email],
.sscf input[type=tel],
.sscf input[type=number],
.sscf select,
.sscf textarea {
	width: 100%;
	padding: 14px;
	font-size: 16px;
	color: #222;
}
.sscf select,
.sscf button,
.sscf input[type=submit],
.sscf input[type=reset] {
	cursor: pointer;
}
.sscf select {
	appearance: auto;
	cursor: pointer;
}
.sscf textarea {
	display: block;
}

/* Error.  */
.sscf .sscf-error > span {
	display: block;
	margin-top: 2px;
	font-size: 16px;
	color: #dc3232;
}
.sscf .sscf-final-error > span {
	display: block;
	margin-top: 30px;
	border: 2px solid #f9b414;
	border-radius: 3px;
	padding: 10px;
	font-size: 20px;
	color: #fff;
}

/* Spinner. */
.sscf .sscf-spinner {
	/*visibility: visible;*/
	visibility: hidden;
	display: inline-block;
	opacity: 0.75;
	position: relative;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 100%;
	margin: 0 24px;
	padding: 0;
	background-color: #23282d;
}
.sscf-spinner::before {
	content: '';
	position: absolute;
	top: 4px;
	left: 4px;
	width: 6px;
	height: 6px;
	border: none;
	border-radius: 100%;
	transform-origin: 8px 8px;
	animation-name: spin;
	animation-duration: 1000ms;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	background-color: #fbfbfc;
}
@media (prefers-reduced-motion: reduce) {
	.sscf .sscf-spinner::before {
		animation-name: blink;
		animation-duration: 2000ms;
	}
}
@keyframes spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}
@keyframes blink {
	from { opacity: 0; }
	50% { opacity: 1; }
	to { opacity: 0; }
}

/* ==========================================================================
   SoundSt Custom Form 1.
   ========================================================================== */

.sscf-1 .sscf-submit:hover {
	background-color: transparent;
}
