/* =========================================================
   BASE / OVERRIDES GLOBALES
   ========================================================= */
.choices__list--dropdown,
.choices__list[aria-expanded] {
  word-break: initial !important;
}

.choices__list--dropdown .choices__item--selectable,
.choices__list[aria-expanded] .choices__item--selectable {
  padding-right: 0 !important;
}

.popup .choices[data-type*=select-one] .choices__input {
  border: 0;
}

#choices--colegio-item-choice-1 {
  color: #3c434a !important;
}

/* El desplegable abierto debe quedar por encima del menu fijo */
.form-studia .choices.is-open {
  position: relative;
  z-index: 999991;
}

.form-studia .choices__list--dropdown,
.form-studia .choices__list[aria-expanded] {
  z-index: 9999;
}

/* Opt-in (lo agrega form-conjunto-v1.js): pocas opciones, se muestran todas sin scroll interno */
.form-studia .choices--sin-scroll .choices__list--dropdown .choices__list,
.form-studia .choices--sin-scroll .choices__list[aria-expanded] .choices__list {
  max-height: none !important;
  overflow: visible !important;
}

/* =========================================================
   MOBILE FIRST
   Custom, iPhone Retina
   ========================================================= */
@media only screen and (min-width : 320px) {

  /* ---------------- Formulario general ---------------- */
  .form-studia .wpcf7 form.sent .wpcf7-response-output {
    color: white;
    text-align: center;
    margin: 10px 0 0 0;
  }

  /* Form & Validate */
  .form-studia .input,
  .form-studia input:not([type=submit]),
  .form-studia input:not([type='checkbox']),
  .form-studia select,
  .form-studia textarea {
    margin-bottom: 8px;
    height: 44px;
    line-height: 44px !important;
    font-size: 12px;
    color: black;
    font-weight: 400;
    border-radius: 10px;
    border: 0;
    background-color: white;
  }

  .form-studia input:not([type=submit])::placeholder {
    color: #6B6B6B;
  }

  .form-studia .politicas {
    margin-top: 0px;
  }

  .form-studia .politicas #bachiller-error-container{
    font-size: 12px;
    line-height: 12px;
    margin-bottom: 10px;
    color: #fff;
  }  

  .form-studia .politicas #bachiller-error-container a{
    color:#A11C88 !important;
  }

  .form-studia .wpcf7-list-item {
    display: flex;
    align-items: center;
    font-size: 10px;
    line-height: 10px;
    gap: 5px;
    margin: 0;
    min-height: 24px;
    position: relative;
  }

  .form-studia .wpcf7-list-item label {
    display: flex;
    align-items: center;
  }

  /* Sin padding: Safari iOS dibuja la casilla sobre toda la caja (con padding 12px salia de 44px) */
  /* 24px: tamaño táctil mínimo WCAG 2.2 AA (Lighthouse mide la casilla, no un ::before alrededor) */
  .form-studia .wpcf7-list-item input[type='checkbox'] {
    width: 24px;
    height: 24px;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    flex: none;
    position: relative;
    z-index: 1;
  }

  .form-studia .wpcf7-list-item input[type='checkbox']:focus-visible {
    outline: 2px solid #005A56;
    outline-offset: 2px;
  }

  .form-studia .wpcf7-form-control.wpcf7-checkbox {
    margin-bottom: -12px;
  }

  /*.form-studia input[type=submit], */
  .form-studia .bt-send button,
  .form-studia .bt-send input[type=submit] {
    border-radius: 10px;
    /* Contraste AA: blanco sobre #05AC98 quedaba en 2.85:1; #01837E (turquesa oscuro de la paleta) da 4.62:1 */
    background: #01837E;
    font-weight: 600;
    height: 44px;
    width: 100%;
    font-size: 17px;
    text-transform: uppercase;
    color: white;
    margin-top: 10px;
    border: 0;
    transition: all 0.2s;
  }

  /* .form-studia sube la especificidad para ganar al CSS de Bricks que pone el texto en blanco */
  .form-studia .bt-send button:hover,
  .form-studia .bt-send input[type=submit]:hover {
    background-color: white;
    color: #01837E;
  }

  .form-studia .bt-send {
    text-align: center;
  }

  .form-studia .wpcf7-spinner {
    display: block;
    margin: auto;
    position: absolute;
  }

  /* ---------------- Estados y validaciones ---------------- */
  .form-studia .wpcf7 form.invalid .wpcf7-response-output,
  .form-studia .wpcf7 form.unaccepted .wpcf7-response-output,
  .form-studia .wpcf7 form.payment-required .wpcf7-response-output,
  .wpcf7 form .wpcf7-response-output {
    border-radius: 5px;
    border: 1px solid #E5007F;
    color: white;
    margin: 0;
    text-align: center;
    line-height: 18px;
  }

  .wpcf7-form-control-wrap input.just-validate-success-field {
    color: black;
  }

  .wpcf7-form-control-wrap input.wpcf7-not-valid::placeholder {
    color: #6B6B6B;
  }

  .wpcf7-form-control-wrap select.wpcf7-not-valid {
    color: #E5007F;
    border: 1px solid #E5007F;
  }

  .wpcf7-not-valid-tip {
    display: none;
  }

  .celular,
  .email {
    position: relative;
  }

  .celular .just-validate-error-label span {
    display: none !important;
  }

  /* .celular .just-validate-error-label, .email .just-validate-error-label{display:block !important; position: absolute; right: 25px; top: -5px; color: #E5007F !important; border-radius: 5px; background-color: #e6e6e6; padding: 3px;} */

  .politicas {
    position: relative;
  }

  /* .politicas > .wpcf7-form-control-wrap{position:initial !important;}
     .politicas > .just-validate-error-label{display:block !important; position: absolute; font-size:8px; left:0px; top: -25px; color: #E5007F !important; width:65px; border-radius: 5px; padding: 1px; overflow:hidden} */
  .politicas .wpcf7-form-control-wrap {
    position: initial !important;
  }

  .politicas .just-validate-error-label {
    width: fit-content !important;
    display: block !important;
    position: absolute;
    font-size: 8px;
    left: -30px;
    top: 2px;
    color: #E5007F !important;
    width: 65px;
    border-radius: 5px;
    padding: 3px 1px 3px 1px;
    overflow: hidden;
  }

  .just-validate-error-label {
    display: block !important;
    font-weight: 400;
    font-size: 10px;
    position: absolute;
    right: 25px;
    top: 1px;
    color: #E5007F !important;
    border-radius: 0px 0px 5px 5px;
    background-color: #e6e6e6;
    padding: 1px;
  }

  /* Dentro de Choices heredaria el line-height de .choices__inner (44px) */
  .form-studia .choices .just-validate-error-label {
    line-height: 20px;
  }

  .form-studia .wpcf7-list-item input {
    height: auto;
    margin-bottom: 0;
  }

  .wpcf7-response-output {
    border: 0 !important;
    font-size: 15px;
    padding: 0 !important;
  }

  /* ---------------- Choices ---------------- */
  /*
    .choices__placeholder{color:black !important}
    .choices__placeholder.choices__item--selectable{color:#E5007F !important}
  */
  .choices__inner {
    height: 44px;
    line-height: 44px;
  }

  .choices__list--single {
    display: flex;
    align-items: center;
    height: 44px;
    padding: 0 12px !important;
  }

  .choices__item.choices__placeholder.choices__item--selectable {
    color: #6B6B6B !important;
    font-family: Roboto !important;
    font-size: 12px;
    line-height: normal;
    font-weight: 400;
  }

  .choices__item.choices__item--selectable {
    color: black;
  }

  .is-open .choices__inner {
    border-radius: 10px;
  }

  .choices__list--dropdown,
  .choices__list[aria-expanded] {
    border-radius: 10px !important;
  }

  /*
  .form-studia input:not([type=checkbox]).wpcf7-not-valid{
    border: 2px solid #E5007F;
    background-image: url('https://builderdev.toulouselautrec.edu.pe/wp-content/uploads/2023/11/error-form-v1.svg');
    background-repeat: no-repeat;
    background-size: 9px;
    background-position: calc(100% - 5px) center ;
  }*/

  .form-studia span.wpcf7-form-control-wrap {
    display: block;
    height: 100%;
  }

  /* .form-studia span.wpcf7-form-control-wrap .just-validate-error-label{display: none;} */
  .form-studia span.wpcf7-form-control-wrap input:not([type='checkbox']).just-validate-error-field {
    border: 1px solid #E5007F;
    /* background-image: url('/carreras-universitarias/wp-content/uploads/2023/11/error-form-v1.svg'); */
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center;
  }

  .form-studia span.wpcf7-form-control-wrap input:not([type='checkbox']).just-validate-success-field {
    /* background-image: url('/carreras-universitarias/wp-content/uploads/2023/11/check-form-v1.svg'); */
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center;
  }

  /* Custom Checkbox */
  .politicas .wpcf7-list-item-label {
    display: none;
  }

  .politicas label {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    color: white;
    font-size: 10px;
	line-height:10px;
    position: relative;
  }

  .politicas label>span {
    margin-right: 5px;
  }

  /* PageSpeed (tap targets): el área táctil crece con padding vertical, pero al ser inline
     no empuja las líneas ni rompe el párrafo; el padding se solapa sobre el texto vecino sin moverlo */
  .form-studia .politicas a {
    display: inline;
    padding: 7px 0;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }

  /* Choices */
  .choices__list--dropdown .choices__item--selectable.is-highlighted::after,
  .choices__list[aria-expanded] .choices__item--selectable.is-highlighted::after {
    content: " ";
  }

  .choices {
    outline: none !important;
    margin-bottom: 0;
  }

  .choices__placeholder {
    opacity: 9.9;
  }

  .choices__inner {
    padding: 0;
    min-height: 44px;
    border: 0 !important;
    background-color: white;
    border-radius: 10px;
    font-family: "Helvetica" !important;
    color: #E5007F;
    font-weight: 400;
    font-size: 12px;
    margin-bottom: 8px;
  }

  .choices__group {
    color: black;
  }

  .choices__list--dropdown .choices__item--selectable,
  .choices__list[aria-expanded] .choices__item--selectable {
    padding-left: 20px;
  }

  .choices__list--single {
    display: flex;
    align-items: center;
    height: 44px;
    padding: 0 14px;
  }

  .choices__heading {
    color: black;
    font-weight: 700;
    font-size: 12px;
  }

  .choices__item {
    font-weight: 400;
    font-size: 12px;
  }

  .choices[data-type*=select-one]::after {
    top: 42% !important;
  }

  .choices__list--dropdown .choices__item,
  .choices__list[aria-expanded] .choices__item {
    font-size: 12px !important;
  }

  .bachiller-msg{
    font-size: 12px;
    line-height: 14px;
    margin-bottom: 10px;
    color: #fff;
  }
  .bachiller-msg a{
    color:#A11C88;
    font-weight: 600;
  }
}

/* Extra Small Devices, Phones */
@media only screen and (min-width : 480px) {}

/* =========================================================
   TABLET
   Small Devices, Tablets
   ========================================================= */
@media only screen and (min-width : 768px) {

  /* Form */
  .form-studia .input,
  .form-studia input:not([type=submit]),
  .form-studia input:not([type='checkbox']),
  .form-studia select,
  .form-studia textarea {
    height: 44px;
    line-height: 44px;
    font-size: 15px;
  }

  .form-studia .wpcf7-list-item {
    font-size: 15px;
    line-height: 10px;
    gap: 5px;
    margin: 0;
    height: 20px;
  }

  /*.form-studia input[type=submit], */
  .form-studia .bt-send button {
    height: 40px;
    font-size: 15px;
    width: 340px;
    line-height: 40px;
  }

  .form-studia .wpcf7-list-item input {
    height: initial !important;
  }

  /* Custom Checkbox */
  .politicas label {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    font-size: 13px;
    line-height: 13px;
  }

  /* Choices */
  .choices__inner {
    font-size: 15px;
  }

  .choices__list--single {
    height: 44px;
    padding: 0 15px;
  }

  .choices__heading {
    font-size: 14px;
    font-family: 'helvetica';
  }

  .choices__item {
    font-size: 15px;
  }

  .just-validate-error-label {
    font-size: 12px !important;
  }
	.choices__inner {
    height: 44px;
    line-height: 40px;
  }
	.choices__item.choices__placeholder.choices__item--selectable {
    font-size: 14px;
  }

  .form-studia .input,
  .form-studia input:not([type=submit]):not([type=checkbox]),
  .form-studia select,
  .form-studia textarea,
  .form-studia .choices__inner,
  .form-studia .choices__input,
  .form-studia .choices__list--single .choices__item {
    font-size: 15px !important;
  }

  .form-studia .choices__list--dropdown .choices__item,
  .form-studia .choices__list[aria-expanded] .choices__item {
    font-size: 12px !important;
  }
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {}

/* iOS (iPhone y iPad) hace zoom al enfocar campos con font-size < 16px; -webkit-touch-callout solo existe en iOS.
   Va al final para ganar a los tamaños de los breakpoints. */
@supports (-webkit-touch-callout: none) {
  .form-studia .input,
  .form-studia input:not([type=submit]):not([type=checkbox]),
  .form-studia select,
  .form-studia textarea,
  .form-studia .choices__inner,
  .form-studia .choices__input,
  .form-studia .choices__list--single .choices__item,
  .form-studia .choices__list--dropdown .choices__item,
  .form-studia .choices__list[aria-expanded] .choices__item {
    font-size: 16px !important;
  }
}
