.elementor-6096 .elementor-element.elementor-element-5df7f05b{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:9%;--padding-right:9%;}.elementor-6096 .elementor-element.elementor-element-5df7f05b:not(.elementor-motion-effects-element-type-background), .elementor-6096 .elementor-element.elementor-element-5df7f05b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-6096 .elementor-element.elementor-element-5df7f05b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-6096 .elementor-element.elementor-element-d844357{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-6096 .elementor-element.elementor-element-19101ab{text-align:center;}.elementor-6096 .elementor-element.elementor-element-19101ab .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;word-spacing:0em;color:#000000;}.elementor-6096 .elementor-element.elementor-element-a8ddc21{padding:025px 50px 50px 50px;text-align:center;}.elementor-6096 .elementor-element.elementor-element-a8ddc21 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:0.1em;letter-spacing:0px;word-spacing:0em;color:#000000;}.elementor-6096 .elementor-element.elementor-element-8e3029f{--display:flex;--min-height:0px;--border-radius:20px 20px 20px 20px;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-6096 .elementor-element.elementor-element-8e3029f:not(.elementor-motion-effects-element-type-background), .elementor-6096 .elementor-element.elementor-element-8e3029f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#224330;background-image:url("https://bioopack.com/wp-content/uploads/2026/05/background-bioopack.jpg");background-size:cover;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-6096 .elementor-element.elementor-element-639faef{width:var( --container-widget-width, 100% );max-width:100%;margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;--container-widget-width:100%;--container-widget-flex-grow:0;--e-form-steps-indicators-spacing:0px;--e-form-steps-indicator-padding:45px;--e-form-steps-indicator-inactive-primary-color:#05290F;--e-form-steps-indicator-inactive-secondary-color:var( --e-global-color-d6cea4e );--e-form-steps-indicator-active-primary-color:var( --e-global-color-d6cea4e );--e-form-steps-indicator-active-secondary-color:#05290F;--e-form-steps-indicator-completed-primary-color:#05290F;--e-form-steps-indicator-completed-secondary-color:var( --e-global-color-d6cea4e );--e-form-steps-divider-width:0px;--e-form-steps-divider-gap:0%;}.elementor-6096 .elementor-element.elementor-element-639faef.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group{padding-right:calc( 5px/2 );padding-left:calc( 5px/2 );margin-bottom:16px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-form-fields-wrapper{margin-left:calc( -5px/2 );margin-right:calc( -5px/2 );margin-bottom:-16px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group.recaptcha_v3-bottomleft, .elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-6096 .elementor-element.elementor-element-639faef .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-6096 .elementor-element.elementor-element-639faef .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-6096 .elementor-element.elementor-element-639faef .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group > label, .elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-subgroup label{color:var( --e-global-color-d6cea4e );}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group > label{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-html{padding-bottom:0px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group .elementor-field, .elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-subgroup label{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#FFFFFF;border-width:0px 0px 0px 0px;border-radius:15px 15px 15px 15px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group .elementor-select-wrapper select{background-color:#FFFFFF;border-width:0px 0px 0px 0px;border-radius:15px 15px 15px 15px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-button{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1em;letter-spacing:0px;border-radius:40px 40px 40px 40px;}.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-next{background-color:#BFE6CE;color:#05290F;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-button[type="submit"]{background-color:#BFE6CE;color:#05290F;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-button[type="submit"] svg *{fill:#05290F;}.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-previous{background-color:#BFE6CE;color:#05290F;}.elementor-6096 .elementor-element.elementor-element-639faef .e-form__indicators__indicator, .elementor-6096 .elementor-element.elementor-element-639faef .e-form__indicators__indicator__label{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:400;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1.6em;letter-spacing:0.9px;word-spacing:0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-6096 .elementor-element.elementor-element-5df7f05b{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-6096 .elementor-element.elementor-element-19101ab .elementor-heading-title{font-size:45px;}.elementor-6096 .elementor-element.elementor-element-a8ddc21 .elementor-heading-title{font-size:45px;}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-6096 .elementor-element.elementor-element-639faef{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group > label{font-size:14px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-group .elementor-field, .elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-subgroup label{font-size:14px;}.elementor-6096 .elementor-element.elementor-element-639faef .elementor-button{font-size:14px;}.elementor-6096 .elementor-element.elementor-element-639faef .e-form__indicators__indicator, .elementor-6096 .elementor-element.elementor-element-639faef .e-form__indicators__indicator__label{font-size:14px;}}@media(max-width:767px){.elementor-6096 .elementor-element.elementor-element-5df7f05b{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-6096 .elementor-element.elementor-element-19101ab .elementor-heading-title{font-size:28px;line-height:1.1em;}.elementor-6096 .elementor-element.elementor-element-a8ddc21 .elementor-heading-title{font-size:28px;line-height:1.1em;}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-6096 .elementor-element.elementor-element-639faef{width:100%;max-width:100%;}}@media(min-width:768px){.elementor-6096 .elementor-element.elementor-element-5df7f05b{--width:81.925%;}.elementor-6096 .elementor-element.elementor-element-8e3029f{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-6096 .elementor-element.elementor-element-8e3029f{--width:616px;}}/* Start custom CSS for heading, class: .elementor-element-a8ddc21 *//* =========================================
    ESTILO DEL SUBTÍTULO DINÁMICO
   ========================================= */
#subtitulo-pasos,
#subtitulo-pasos .elementor-heading-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-639faef *//* =========================================
   ESTRUCTURA Y POSICIÓN (Colores gestionados por Elementor)
   ========================================= */

/* 1. Contenedor de indicadores (Flotante y centrado) */
.e-form__indicators {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    position: relative;
    z-index: 10;
    margin: -25px auto 25px auto;
}

/* 2. Tamaño y forma de los círculos  */
.e-form__indicators__indicator__number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-weight: 600;
    padding-bottom: 8px; /* Mantiene el número centrado ópticamente */
    border: 1px solid #05290f; 
}

/* 3. Líneas separadoras */
.e-form__indicators__indicator__separator {
    flex: 0 0 70px;
    height: 0;
    margin: 0;
}

/* =========================================
   CAMPO DE ACEPTACIÓN (CHECKBOX CIRCULAR LIMPIO)
   ========================================= */

/* Contenedor alineado */
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-acceptance .elementor-field-option {
    display: flex;
    align-items: center;
    gap: 15px;
}

/* Texto de la política */
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-acceptance label {
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    cursor: pointer;
}

/* Transformar casilla nativa en círculo */
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-acceptance input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 35px;
    height: 35px;
    flex: 0 0 35px;
    background-color: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 50%;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}

/* Al marcar (azul con icono) */
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-acceptance input[type="checkbox"]:checked {
    background-color: #7bc8e2;
    border-color: #7bc8e2;
}
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-acceptance input[type="checkbox"]:checked::after {
    content: "\f00c"; 
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #05290f;
    font-size: 16px;
}


/* ====================================================
   CONFIGURACION BOTONES ANTERIOR, SIGUIENTE y ENVIAR
   ================================================== */
.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons {
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: 20px;
}

.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper {
    width: auto;
}

/* TANTO EL BOTÓN SIGUIENTE COMO EL DE ENVIAR SE VAN A LA DERECHA DEL TODO */
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-next,
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-submit {
    margin-left: auto;
}

.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button {
    position: relative;
    width: auto;
    display: inline-block;
    text-align: center;
    overflow: hidden; 
    white-space: nowrap; 
    text-indent: 0; 
    transition: text-indent 0.4s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s ease; 
}

.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-previous {
    padding-left: 50px;
}
.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-previous:hover {
    text-indent: -150%; 
    color: transparent;
}
.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-previous::before {
    content: "\f053"; 
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #05290f;
    text-indent: 0;
}

/* EMPAREJAR EL BOTÓN ENVIAR CON EL DE SIGUIENTE PARA QUE COMPARTAN EL DISEÑO */
.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-next,
.elementor-6096 .elementor-element.elementor-element-639faef button[type="submit"] {
    padding-right: 50px;
}

/* OBLIGA A QUE EL TEXTO DE AMBOS DESAPAREZCA AL PASAR EL RATÓN */
.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-next:hover,
.elementor-6096 .elementor-element.elementor-element-639faef button[type="submit"]:hover {
    text-indent: 150%; 
    color: transparent;
}

/* PONE EL CHEVRON A AMBOS BOTONES */
.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-next::after,
.elementor-6096 .elementor-element.elementor-element-639faef button[type="submit"]::after {
    content: "\f054"; 
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #05290f;
    text-indent: 0;
}

.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-next:hover::after,
.elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-previous:hover::before,
.elementor-6096 .elementor-element.elementor-element-639faef button[type="submit"]:hover::after {
    color: #05290f; 
}


/* =========================================
   ESTILOS BASE Y COLORES (Solo para campos Radio)
   ========================================= */
/* FIX: Ocultar los radio buttons de forma segura para no romper el scroll JS de Elementor */
.cotizador-bolsas input[type="radio"] { 
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.cotizador-bolsas .elementor-field-type-radio .elementor-field-option label::before,
.cotizador-bolsas .elementor-field-type-radio .elementor-field-option label::after { 
    display: none !important; 
    content: none !important; 
}


.cotizador-bolsas .elementor-field-label { 
    margin-bottom: 15px !important; 
    margin-top: 20px !important; 
    font-weight: 600; 
}

/* Efecto selección (Azul) */
.cotizador-bolsas input[type="radio"]:checked + label {
    background-color: #7bc8e2 !important; 
    box-shadow: 0 4px 10px rgba(0,0,0,0.15) !important; 
}

/* Cajas blancas aplican SOLO a las opciones radio */
.cotizador-bolsas .elementor-field-type-radio .elementor-field-option label {
    cursor: pointer; 
    background-color: #ffffff; 
    border-radius: 12px;
    box-sizing: border-box !important; 
    display: flex !important;
    flex-direction: column !important; 
    align-items: center !important;
    justify-content: center !important; 
    white-space: normal !important;
    text-align: center; 
    color: #000000 !important; 
    font-weight: 600 !important; 
    line-height: 1.2 !important;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
}

.cotizador-bolsas .elementor-field-type-radio .elementor-field-option label img {
    object-fit: contain; 
    margin: 0 auto 8px auto; 
    display: block;
}

/* =========================================
   Tamaño para ORDENADOR (Candado fijo: > 1025px)
   ========================================= */
@media (min-width: 1025px) {
    
    /* 1. Contenedor general: Márgenes iguales a los lados */
    .cotizador-bolsas {
        width: 100%; 
        max-width: 1100px; 
        margin: 0 auto; /* Centra el formulario en la pantalla */
        padding: 0 40px; /* Esto crea los márgenes izquierdo y derecho exactos */
        box-sizing: border-box;
    }
    
    .cotizador-bolsas .elementor-field-subgroup {
        display: flex; 
        flex-wrap: wrap; 
        gap: 20px; 
        justify-content: flex-start; 
        width: 100%; /* Obliga a respetar los márgenes de arriba */
    }
    
    /* 2. BOLSAS GRANDES (Doypack, Plana, etc.) */
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option {
        flex: 0 0 190px; /* Ancho fijo proporcional a la imagen */
        width: 190px;
        max-width: 190px;
    }
    
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option label {
        width: 100%; 
        height: 220px; /* Más altas, como en la foto */
        padding: 25px 15px 15px 15px; 
        font-size: 15px;
    }
    
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option label img { 
        max-width: 85%; 
        max-height: 130px; 
        margin-bottom: 15px;
    }

    /* 3. FILA 9 ICONOS (Aplicaciones) */
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-subgroup { 
        flex-wrap: nowrap; 
        justify-content: space-between; /* Reparte los 9 íconos de extremo a extremo */
        gap: 12px; 
    }
    
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-option {
        flex: 1; /* Se estiran todos por igual para ocupar el 100% de la fila */
        width: auto;
        max-width: 115px;
    }
    
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-option label {
        width: 100%; 
        height: 140px; /* Forma rectangular vertical como en la imagen */
        padding: 15px 5px;
        font-size: 12px !important;/* Letra pequeña para que entren 2 líneas (ej: Frutas y Verduras) */
        line-height: 1.2;
    }
    
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-option label img { 
        max-height: 100px; 
        margin-bottom: 10px;
    }

    /* BOTONES SÍ / NO (Mantienen su tamaño original) */
    .cotizador-bolsas .elementor-field-group-sino .elementor-field-subgroup { 
        flex-wrap: nowrap; 
        width: auto; 
        gap: 15px; 
    }
    
    .cotizador-bolsas .elementor-field-group-sino .elementor-field-option {
        flex: none;
        width: 75px;
        max-width: 75px;
    }
    
    .cotizador-bolsas .elementor-field-group-sino .elementor-field-option label {
        width: 100%; 
        height: 75px; 
        padding: 0; 
        font-size: 18px;
    }
}


/* =========================================
   Tamaño para TABLET (Entre 768px y 1024px)
   ========================================= */
@media (max-width: 1024px) and (min-width: 768px) {
    
    .cotizador-bolsas {
        padding: 0 30px;
    }
    
    /* 1. SEPARACIÓN Y TAMAÑO DE BOLSAS (Ajustado) */
    .cotizador-bolsas .elementor-field-subgroup {
        justify-content: center;
        gap: 25px; 
    }
    
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option {
        flex: 0 0 calc(30% - 25px);
        max-width: calc(30% - 25px);
    }
    
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option label {
        height: 185px; 
        padding: 20px 10px 15px 10px;
        font-size: 14px;
    }

    /* 2. Fila 9 iconos: Pasamos a 4 por fila */
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-subgroup {
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
    }
    
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-option {
        flex: 0 0 calc(25% - 15px); 
        max-width: calc(25% - 15px);
    }
}

/* =========================================
   Tamaño para MÓVIL (Hasta 767px)
   ========================================= */
@media (max-width: 767px) {
    
    .cotizador-bolsas {
        padding: 0 25px;
    }

    /* 1. Barra de progreso (Indicadores) más pequeña para que no se desborde */
    .e-form__indicators {
        gap: 8px;
    }
    
    /* cambia tamaños circulos de los pasos */
    .e-form__indicators__indicator__number {
        width: 45px;
        height: 45px;
        font-size: 14px;
        padding-bottom: 1px;
    }
    
    .e-form__indicators__indicator__separator {
        flex: 0 0 25px; /* Líneas más cortas */
    }

    /* 2. Bolsas grandes: 2 por fila (Mitad y mitad) */
    .cotizador-bolsas .elementor-field-subgroup {
        gap: 12px;
        justify-content: center;
    }
    
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option {
        flex: 0 0 calc(50% - 6px);
        max-width: calc(50% - 6px);
    }
    
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option label {
        height: 170px;
        padding: 15px 5px 10px 5px;
        font-size: 13px;
    }
    
    .cotizador-bolsas .elementor-field-type-radio .elementor-field-option label img {
        max-height: 80px;
        margin-bottom: 10px;
    }

    /* 3. Fila 9 iconos: 3 por fila */
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-subgroup {
        flex-wrap: wrap;
    }
    
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-option {
        flex: 0 0 calc(33.333% - 8px);
        max-width: calc(33.333% - 8px);
    }
    
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-option label {
        height: 150px;
        padding: 10px 5px;
        font-size: 12px !important;
    }
    
    .cotizador-bolsas .elementor-field-group-filaiconos .elementor-field-option label img {
        max-height: 60px;
        margin-top: 10px;
        margin-bottom: 0px;
    }

    /* 4. Botones SÍ / NO: Ligeramente más pequeños */
    .cotizador-bolsas .elementor-field-group-sino .elementor-field-option {
        flex: 0 0 65px;
        max-width: 65px;
    }
    
    .cotizador-bolsas .elementor-field-group-sino .elementor-field-option label {
        height: 65px;
        font-size: 16px;
    }

    /* 5. Casilla de Política de Privacidad adaptada */
    .elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-acceptance input[type="checkbox"] {
        width: 28px;
        height: 28px;
        flex: 0 0 28px;
    }
    
    .elementor-6096 .elementor-element.elementor-element-639faef .elementor-field-type-acceptance label {
        font-size: 13px;
        line-height: 1.4;
    }

    /* 6. Botones Anterior / Siguiente / Enviar: Reducimos padding para que quepan los dos en la misma línea */
    .elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button {
        font-size: 14px;
    }
    
    .elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-previous {
        padding-left: 35px;
    }
    
    .elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-next,
    .elementor-6096 .elementor-element.elementor-element-639faef button[type="submit"] {
        padding-right: 35px;
    }
    
    .elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-previous::before {
        left: 10px;
    }
    
    .elementor-6096 .elementor-element.elementor-element-639faef .e-form__buttons__wrapper__button-next::after,
    .elementor-6096 .elementor-element.elementor-element-639faef button[type="submit"]::after {
        right: 10px;
    }
    /*  =========================================================
       CORRECCIÓN iPHONE PARA CAMPOS DE TEXTO Y TEXTAREA
    ========================================================= */

    /* 1.  Control estricto de los inputs de texto y el textarea (mensaje) */
    .cotizador-bolsas input[name="form_fields[nombre]"],
    .cotizador-bolsas input[name="form_fields[apellidos]"],
    .cotizador-bolsas input[name="form_fields[telefono]"],
    .cotizador-bolsas input[name="form_fields[email]"],
    .cotizador-bolsas input[name="form_fields[empresa]"],
    .cotizador-bolsas input[name="form_fields[direccion]"],
    .cotizador-bolsas input[name="form_fields[cp]"],
    .cotizador-bolsas input[name="form_fields[provincia]"],
    .cotizador-bolsas input[name="form_fields[ciudad]"],
    .cotizador-bolsas input[name="form_fields[pais]"],
    .cotizador-bolsas textarea[name="form_fields[mensaje]"] {
        box-sizing: border-box !important;
        max-width: 100% !important;
        font-size: 16px !important;
    }

}

/* Transición suave para que no sea un pantallazo brusco */
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-form {
    transition: opacity 0.3s ease;
}

/* El espacio entre ".elementor-6096 .elementor-element.elementor-element-639faef" y ".elementor" es la clave */
.elementor-6096 .elementor-element.elementor-element-639faef .elementor-form-waiting {
    opacity: 0.5 !important;
    pointer-events: none !important;
    cursor: wait !important;
}/* End custom CSS */