/*
Theme Name: Impreza Child
Theme URI: http://impreza.us-themes.com/
Template: Impreza
Author: UpSolution
Author URI: http://us-themes.com/
Description: Multi-Purpose WordPress Theme.
Version: 8.12.1672196519
Updated: 2022-12-28 03:01:59

*/

/**
* Estilos formularios CF7
 */

/* CSS Variables for Color Scheme */
:root {
    --main-color-form: #e6007e;
    --hover-color-form: #e1007b;
    --secondary-color-form: #293241;
    --third-color-form: #333333;
    --highlight-color: #54a4ff;
    --error-color: #dd255e;
    --transparent-form: transparent;
    --white-form: #fff;
}

/* Global CSS Reset - Ensure consistent box sizing across different elements */
*, *:before, *:after {
    box-sizing: border-box;
}

/****** Default styles CF7 reset ****/
.wpcf7-form .floating-form input:not([type="submit"]), .wpcf7-form .floating-form textarea, .wpcf7-form .floating-form select {
    margin-top: initial;
	border-radius: 0;
}
div span.wpcf7-form-control-wrap{
    position: initial;
}
.floating-form p,
.floating-form p{
    margin: 0;
}
.wpcf7-not-valid-tip{
    margin-top: -20px;
    margin-bottom: 20px;
}
.wpcf7-response-output{
    max-width: 350px;
}
.floating-label span > br{
    display: none;
}

/* Box shadow style for the parallax inner div */
#inicio.darkshadow div.vc_parallax-inner {		
    box-shadow: 0 2000px rgba(40, 48, 60, .95) inset;
}

/* Background style for the vertical registration form */
#inicio .vertical-registration-form {
    background: rgba(0, 0, 0, 0.9) !important;
}

/* Opacity transition style for the floating labels in form */
.floating-label.country-form,
.floating-label.city,
.floating-label.course {
    display: none;
}

/* Background color, border radius and width for the floating form */
.floating-form {
	border: 1px solid var(--third-color-form);
    background: var(--white-form);
    border-radius: 5px;
    max-width:360px;
}

/* Margin style for not valid tip in form */
.wpcf7-not-valid-tip {
    margin-top: -20px;
    margin-bottom: 20px;
}

/* Max width for response output in form */
.wpcf7-response-output {
    max-width: 350px;
}

/* Style for form's header */
.wpcf7 .floating-form h3 {
    text-align: center;
    color: var(--third-color-form);
    font-size: 1rem;
    font-weight: 600;
    margin-top: 10px;
    margin-bottom: 0;
    padding: 10px;
    text-transform: none;
}

/* Style for colored line in form */
.floating-form .colored-line {
    height: 3px;
    width: 80px;
	margin: auto;
	background-color: var(--main-color-form);
	font-weight: 800;
    margin-bottom: 2rem;
	text-transform: none;
}

/* Floating label style - positioning, margin and padding */
.floating-label {
    position:relative;
    margin-bottom:0;
    padding:0 30px 0 30px;
}

/* Style for input and select elements in form */
.floating-input ,
.floating-select {
    font-size:16px;
    padding:4px 4px;
    margin-bottom: 25px;
    display:block;
    width:100%;
    height:30px;
    background-color: var(--transparent-form);
    color: var(--secondary-color-form);
    outline: none;
    font-weight: 700;
	border:none;
    border-bottom:1px solid var(--third-color-form) !important;
}

/* Floating label style - width and inline display */
.floating-form div.floating-label:nth-of-type(2),
.floating-form div.floating-label:nth-of-type(3) {
    width: 45%;
    display: inline-block;
}

/* Padding style for floating labels in form */
.floating-form div.floating-label:nth-of-type(2) {
    padding:0 5px 0 30px;
}

.floating-form div.floating-label:nth-of-type(3) {
    padding: 0 0 0 15px;
}

/* Style for focused input and select elements in form */
.floating-input:focus ,
.floating-select:focus {
    outline:none;
    border-bottom:2px solid var(--highlight-color);
}

/* Style for label in floating label */
.floating-label span > label {
    color:#999;
    font-size:14px;
    font-weight:normal;
    position:absolute;
    pointer-events:none;
    left:30px;
    top:5px;
    transition:0.2s ease all;
}

/* Border style for floating form */
.border-line .floating-form{
    border: 3px solid var(--third-color-form);
    border-bottom-right-radius: 8px;
    border-bottom-left-radius: 8px;
}


/* Style for input and select elements when they're in focus or contain some value */
.floating-input:focus ~ label,
.floating-input:not(:placeholder-shown) ~ label {
    top:-18px;
    font-size:14px;
    color: var(--highlight-color);
}

.floating-select:focus ~ label ,
.floating-select:not([value=""]):valid ~ label {
    top:-18px;
    font-size:14px;
    color: var(--error-color);
}

/* Style for bars in floating label when input/select elements are in focus */
.floating-form .floating-input:focus ~ .bar:before,
.floating-form .floating-input:focus ~ .bar:after,
.floating-form .floating-select:focus ~ .bar:before,
.floating-form .floating-select:focus ~ .bar:after {
    width:50% !important;
}

/* Style for textarea in form */
.floating-form .floating-textarea  {
    min-height: 30px;
    max-height: 260px;
    height: 55px;
    overflow:hidden;
}

/* Style for submit button in form */
.floating-form input[type="submit"].floating-submit {
    border: 0;
    border-radius: 0 0 5px 5px;
    background-color: var(--main-color-form);
    color: var(--white-form);
    font-weight: 700;
    font-family: "Lato", sans-serif;
    cursor: pointer;
    padding: 20px 0;
    margin: 0;
    width: 100%;
}

/* Hover effect for submit button */
.floating-form input[type="submit"].floating-submit:hover{
    background-color: var(--hover-color-form);
    font-weight: 900;
}

/* highlighter */
 .highlight {
    position:absolute;
    height:50%;
    width:100%;
    top:15%;
    left:0;
    pointer-events:none;
    opacity:0.5;
}

/* Transition and background color for highlighter */
.floating-input:focus ~ .highlight ,
.floating-select:focus ~ .highlight {
    -webkit-animation:inputHighlighter 0.3s ease;
    -moz-animation:inputHighlighter 0.3s ease;
    animation:inputHighlighter 0.3s ease;
}

/* Animation for input highlighter */
@-webkit-keyframes inputHighlighter {
    from { background: var(--main-color-form); }
    to 	{ width:0; background: var(--transparent-form); }
}

@-moz-keyframes inputHighlighter {
    from { background: var(--main-color); }
    to 	{ width:0; background: var(--transparent-form); }
}

@keyframes inputHighlighter {
    from { background: var(--main-color-form); }
    to 	{ width:0; background: var(--transparent-form); }
}

/**** Formulario version labels flotantes FIN ****/