/**
 * Theme Name:      olvrrr
 * Theme URI:       https://olvrrr.com
 * Description:  
 * Author:          Olivier Van der Spiegelen
 * Version:         1.0
 * Author URI: 
 */


/*--------------------------------------------------------- 
  FORMULARIOS GENERAL
-----------------------------------------------------------*/

/* placeholder */
::placeholder { color: #777 !important; font-size: 14px !important; font-weight: normal !important; font-style: normal !important; letter-spacing: .05em !important;}
:-ms-input-placeholder { color: #777 !important; font-size: 13px !important; font-weight: normal !important; font-style: italic !important; letter-spacing: .05em !important;} 
::-ms-input-placeholder { color: #777 !important; font-size: 13px !important; font-weight: normal !important; font-style: italic !important; letter-spacing: .05em !important;}
/*---*/
select:invalid { color: #777 !important; font-weight: normal !important; font-style: italic !important;}
option[value=""][disabled] { display: none !important;}
option { color: #222 !important; font-size: 16px !important; line-height: 1.4em !important; font-weight: normal !important; font-style: normal !important;}


/* ESTRUCTURA */
form{ margin-top: -10px; display: block;}
form .form-row{ margin-top: 10px; display: block;}
/*---*/
.form-width-30 { margin-right: 2%; width: 28%; float: left;}
.form-width-30.last-row { margin-right: 0;}
.form-width-50 { margin-right: 2%; width: 48%; float: left;}
.form-width-50.last-row { margin-right: 0;}
.form-width-70 { margin-right: 2%; width: 68%; float: left;}
.form-width-70.last-row { margin-right: 0;}
.form-width-100 { width: 68%; clear: both;}


/* COMÚN */
form label.label-text, form label.elementor-field-label, form .form-row label{ 
    margin: 0 0 6px 0; 
	padding: 0 !important;
	width: 90%; 
	color: #333 !important; 
	font-size: 15px !important; 
	letter-spacing: .04em;  
	line-height: 1.2em; 
	display: block;
}
/*---*/
form label[for=form-field-checkbox_RGPD].elementor-field-label,
form label[for=form-field-checkbox_publicidad].elementor-field-label{ display: none !important;}
form label[for=form-field-checkbox_RGPD],
form label[for=form-field-checkbox_publicidad]{
	margin: 0 0 0 4px !important;
	color: #222222 !important;
	font-size: .85em !important;
	line-height: 1.25em !important; 
	letter-spacing: .05em; 
	display: inline !important;
	cursor: pointer !important;
}
form label[for=form-field-checkbox_RGPD] a,
form label[for=form-field-checkbox_publicidad] a{ text-decoration: underline !important;}
form label[for=form-field-checkbox_RGPD] a:hover,
form label[for=form-field-checkbox_publicidad] a:hover{ text-decoration: none !important;}
/*-- INPUT --*/
input.text, input.title, input[type=email], input[type=password], input[type=number], input[type=tel], input[type=text], input[type=url], select, textarea{   
   padding: 18px 15px 18px !important; width: 100% !important;
   border: 1px solid rgba(10,66,215,.4) !important; border-radius: 4px !important;
   background-color: #fff !important;
   color: #222222 !important; font-family: 'poppins', sans-serif !important; font-size: 15px !important; line-height: 1.2em !important; letter-spacing: inherit !important; box-shadow: none !important;
   -webkit-transition: all 0.2s; -moz-transition: all 0.2s; transition: all 0.2s;   
}
textarea{ line-height: 1.4em !important; } 
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none;}
input:focus, textarea:focus, select:focus{ border-color: #0a42d7 !important;}
/*-- SELECT FLECHA Elementor --*/
.elementor-field-group .elementor-select-wrapper:before {
    content: "\f0dd" !important;
    font-family: "Font Awesome 5 Free" !important; font-weight: 900 !important;
    font-size: 15px;
	top: 45% !important;
	text-shadow: none !important;
	color: #777 !important;
}
/*---*/
@media (max-width: 767px) { 
    .elementor-field-group .elementor-select-wrapper:before { top: 40% !important;}
}
/*-- INPUT FILE --*/
input[type=file] { visibility: hidden !important; position: relative !important; z-index: 1 !important;}
input[type=file]::-webkit-file-upload-button { visibility: hidden !important;}
input[type=file]::before {
	padding: 12px 18px 14px 48px !important;
    color: #111 !important; content: 'Elige un archivo';
	font-family: 'title-a', sans-serif !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    font-style: normal !important;
    line-height: 1.1em !important;  
    letter-spacing: .05em !important;
	background-color: #cccccc !important;
	border: 0px solid #cccccc !important;
    border-radius: 0px !important;   
    cursor: pointer;
    display: inline-block;  
    outline: none;
    white-space: nowrap;
    -webkit-user-select: none;  
    position: relative !important; z-index: 5 !important; visibility: visible !important;   
    -webkit-transition: all 0.2s; -moz-transition: all 0.2s; transition: all 0.2s !important;	
}
input[type=file]:hover::before,
input[type=file].selected::before {
    color: #111113 !important; content: 'Elige un archivo';	
	background-color: #b1d9dd !important;
	border-color: #b1d9dd !important;   
}
input[type=file]::after {
    position: absolute; top: 1px; left: 13px; transform: translate(0,50%); z-index: 10 !important; visibility: visible !important;
    color: #111; min-width: 10px; height: 20px; font-size: 100%; content: "\f019"; font-family: "Font Awesome 5 Free"; font-weight: 900;
    -webkit-transition: all 0.2s; -moz-transition: all 0.2s; transition: all 0.2s !important;
}
input[type=file]:hover::after { color: #111113;}
input[type=file].selected::after { color: #111113; content: "\f00c"; font-family: "Font Awesome 5 Free"; font-weight: 900;}



/** style-a */
.form.style-a form {margin: 0;}
.form.style-a form.elementor-form {margin: -25px 0 20px 0;}
/*---*/
.form.style-a .elementor-field-group{ margin: 25px 0 0 0 !important;}
.form.style-a .elementor-field-group-checkbox_RGPD { margin: 30px 0 0 0 !important;}
.form.style-a .elementor-field-group-checkbox_publicidad { margin: 12px 0 0 0 !important;}
.form.style-a .elementor-field-type-submit{ margin: 30px 0 0 0 !important;}
/*---*/
.form.style-a label.label-text, .form.style-a label.elementor-field-label{ }
.form.style-a label[for=form-field-checkbox_RGPD].elementor-field-label,
.form.style-a label[for=form-field-checkbox_publicidad].elementor-field-label{ }
.form.style-a label[for=form-field-checkbox_RGPD],
.form.style-a label[for=form-field-checkbox_publicidad]{ }
.form.style-a label[for=form-field-checkbox_RGPD] a,
.form.style-a label[for=form-field-checkbox_publicidad] a{ }
.form.style-a label[for=form-field-checkbox_RGPD] a:hover,
.form.style-a label[for=form-field-checkbox_publicidad] a:hover{ }
/*-- RADIO --*/
.form.style-a .elementor-field-type-radio .elementor-field-option{
	padding-bottom: 8px !important; padding-right: 15px !important;
}
.form.style-a .elementor-field-type-radio .elementor-field-option label{
	color: #222222 !important;
	font-size: 15px !important; font-weight: 500 !important; 
}
/*-- BUTTON SUBMIT --*/
.form.style-a button { 
   margin: 0px;
   padding: 26px 18px 25px !important;  
   font-family: 'poppins', sans-serif !important;
   font-size: 15px !important;
   font-style: normal !important;
   font-weight: 500 !important;
   line-height: 1.1em !important;   
   text-transform: normal !important;
   text-decoration: none !important; 
   letter-spacing: .05em !important;
   color: #fffffe !important;
   background-color: #0a42d7 !important;
   border: 2px solid #0a42d7 !important;
   border-radius: 4px !important;   
   cursor: pointer !important;
   -webkit-transition: all 0.2s; -moz-transition: all 0.2s; transition: all 0.2s;
   display: inline-block !important;
   position: relative !important;
}
.form.style-a button:hover { 
   color: #fffffe !important;
   background-color: #1b55f5 !important;  
   border-color: #1b55f5 !important;   
}
/*---*/
@media (max-width: 767px) { 
    button {  }
}


/** style-a.style-sidebar */
.form.style-a.style-sidebar form {margin: -8px 0 0 0 !important;}
.form.style-a.style-sidebar .elementor-field-group{ margin: 8px 0 0 0 !important;}
.form.style-a.style-sidebar .elementor-field-group-checkbox_RGPD { margin: 25px 0 0 0 !important;}
.form.style-a.style-sidebar .elementor-field-group-checkbox_publicidad { margin: 12px 0 0 0 !important;}
.form.style-a.style-sidebar .elementor-field-type-submit{ margin: 25px 0 0 0 !important;}
.form.style-a.style-sidebar label{ display: none !important;}
.form.style-a.style-sidebar label[for=form-field-checkbox_RGPD],
.form.style-a.style-sidebar label[for=form-field-checkbox_publicidad]{ display: inline !important; font-size: 14px !important; }
.form.style-a.style-sidebar #form-field-recaptcha{ padding-top: 10px;}


/** style-a.style-popup */
.form.style-a.style-popup form {margin: -10px 0 10px 0 !important;}
.form.style-a.style-popup .elementor-field-group{ margin: 10px 0 0 0 !important;}
.form.style-a.style-popup .elementor-field-group-checkbox_RGPD { margin: 25px 0 0 0 !important;}
.form.style-a.style-popup .elementor-field-group-checkbox_publicidad { margin: 12px 0 0 0 !important;}
.form.style-a.style-popup .elementor-field-type-submit{ margin: 25px 0 0 0 !important;}
.form.style-a.style-popup label{ display: none !important;}
.form.style-a.style-popup label[for=form-field-checkbox_RGPD],
.form.style-a.style-popup label[for=form-field-checkbox_publicidad]{ display: inline !important; font-size: 13px !important; }
.form.style-a.style-popup #form-field-recaptcha{ padding-top: 10px;}


/** style-a.style-footer */
.form.style-a.style-footer form {margin: -8px 0 0 0 !important; position: relative;}
.form.style-a.style-footer .elementor-field-group{ margin: 8px 0 0 0 !important;}
.form.style-a.style-footer .elementor-field-group-checkbox_RGPD { margin: 15px 0 0 0 !important;}
.form.style-a.style-footer .elementor-field-group-checkbox_publicidad { margin: 12px 0 0 0 !important;}
.form.style-a.style-footer .elementor-field-type-submit{ margin: 15px 0 0 0 !important;}
.form.style-a.style-footer label{ display: none !important;}
.form.style-a.style-footer label[for=form-field-checkbox_RGPD],
.form.style-a.style-footer label[for=form-field-checkbox_publicidad]{ display: inline !important; font-size: 14px !important; }
/*---*/
@media (min-width: 768px) { 
    .form.style-a.style-footer .elementor-field-type-submit{ width: 100%; margin: 0 !important; position: static !important;}
    .form.style-a.style-footer .elementor-field-type-submit button{ border-radius: 5px !important; width: 33%; flex-basis: 33%; position: absolute; top: 62px; right: 0;}
}

/** style-a.overdark */
.form.style-a.overdark button:hover { 
   background-color: #fff !important;
   border-color: #fff !important;
   color: #f64f49 !important;
}


/*--------------------------------------------------------- 
  FORM-SEARCH
-----------------------------------------------------------*/

/*-- style-header --*/
form.form-search.style-header { margin: 0; width: 100%; position: relative;}
/* input */
form.form-search.style-header input[type=text] {   
   padding: 10px 18px 13px 55px !important;
   width: 100% !important;
   color: #111 !important;
   font-family: 'readable', sans-serif !important;
   font-size: 16px !important;
   background-color: #edecf2 !important;
   border: 2px solid #edecf2 !important;
   border-radius: 24px !important;
}
form.form-search.style-header input[type=text]:hover { background-color: #e5e4eb !important; border-color: #e5e4eb !important;}
form.form-search.style-header input[type=text]:focus { background-color: #fff !important; border-color: #b1d9dd !important;}
/* button */
form.form-search.style-header button { 
   margin: 0; padding: 0;  
   width: 46px; height: 46px;    
   color: rgba(0, 0, 0, .8);
   font-style: normal;
   line-height: 1em; 
   text-transform: none;
   text-decoration: none;
   background-color: transparent;
   border-radius: 100%;
   border: 0px solid transparent;
   cursor: pointer;
   display: inline-block;
   position: absolute; top: -1px; left: 4px; 
}
form.form-search.style-header button:before { 
    content: "\f002"; font-family: "Font Awesome 5 Free"; font-weight: 900;
	font-size: 16px;
	width: 16px; height: 16px;
	top: calc(50% - 8px); left: calc(50% - 8px);
	display: block;
	position: absolute;
}
form.form-search.style-header button:hover { 
   background-color: transparent;
   border-color: transparent;
   color: #b1d9dd;
}


/*-- style-frame (en menú)--*/
form.form-search.style-frame { margin: 0; position: relative; display: inline-block;}
/* input */
form.form-search.style-frame input[type=text] {   
   padding-left: 50px !important;
}
form.form-search.style-frame input[type=text]:hover { }
form.form-search.style-frame input[type=text]:focus { }
/* button */
form.form-search.style-frame button { 
   margin: 0; padding: 0;  
   width: 46px; height: 46px;    
   color: rgba(0, 0, 0, .3);
   font-style: normal;
   line-height: 1em; 
   text-transform: none;
   text-decoration: none;
   background-color: transparent;
   border-radius: 100%;
   border: 0px solid transparent;
   cursor: pointer;
   display: inline-block;
   position: absolute; top: 0; left: 4px; 
}
form.form-search.style-frame button:before { 
    content: "\f002"; font-family: "Font Awesome 5 Free"; font-weight: 900;
	font-size: 16px;
	width: 16px; height: 16px;
	top: calc(50% - 8px); left: calc(50% - 8px);
	display: block;
	position: absolute;
}
form.form-search.style-frame button:hover { 
   background-color: transparent;
   border-color: transparent;
   color: #b1d9dd;
}


/*-- style-page --*/
form.form-search.style-page { margin: 0; width: 100%; max-width: 750px; position: relative;}
/* input */
form.form-search.style-page input[type=text] {   
   padding-left: 55px !important;
   border-width: 2px !important;
}
form.form-search.style-page input[type=text]:hover { }
form.form-search.style-page input[type=text]:focus { }
/* button */
form.form-search.style-page button { 
   margin: 0; padding: 0;  
   width: 46px; height: 46px;    
   color: rgba(0, 0, 0, .3);
   font-style: normal;
   line-height: 1em; 
   text-transform: none;
   text-decoration: none;
   background-color: transparent;
   border-radius: 100%;
   border: 0px solid transparent;
   cursor: pointer;
   display: inline-block;
   position: absolute; top: 0; left: 4px; 
}
form.form-search.style-page button:before { 
    content: "\f002"; font-family: "Font Awesome 5 Free"; font-weight: 900;
	font-size: 16px;
	width: 16px; height: 16px;
	top: calc(50% - 8px); left: calc(50% - 8px);
	display: block;
	position: absolute;
}
form.form-search.style-page button:hover { 
   background-color: transparent;
   border-color: transparent;
   color: #b1d9dd;
}







