.elementor-864 .elementor-element.elementor-element-5d46803{--display:flex;--padding-top:2em;--padding-bottom:2em;--padding-left:5em;--padding-right:5em;}.elementor-864 .elementor-element.elementor-element-5d46803:not(.elementor-motion-effects-element-type-background), .elementor-864 .elementor-element.elementor-element-5d46803 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3F1F1;}.elementor-864 .elementor-element.elementor-element-7ca4451{--display:flex;--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;--padding-top:3em;--padding-bottom:3em;--padding-left:5em;--padding-right:5em;}.elementor-864 .elementor-element.elementor-element-7ca4451:not(.elementor-motion-effects-element-type-background), .elementor-864 .elementor-element.elementor-element-7ca4451 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-864 .elementor-element.elementor-element-0700bf4{width:var( --container-widget-width, 36% );max-width:36%;--container-widget-width:36%;--container-widget-flex-grow:0;}.elementor-864 .elementor-element.elementor-element-0700bf4.elementor-element{--align-self:center;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-864 .elementor-element.elementor-element-5d46803{--padding-top:1em;--padding-bottom:1em;--padding-left:1em;--padding-right:1em;}.elementor-864 .elementor-element.elementor-element-7ca4451{--padding-top:1em;--padding-bottom:1em;--padding-left:1em;--padding-right:1em;}.elementor-864 .elementor-element.elementor-element-0700bf4{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}}/* Start custom CSS for html, class: .elementor-element-8300358 */.step-wrapper {
  background-color: white;
  padding: 2rem;
  border-radius: 1rem;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: sans-serif;
}

.step {
  text-align: center;
  flex: 1;
}

.step-circle {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  border: 2px solid #0B1D51;
  margin: 0 auto 0.5rem auto;
}

.step-circle.active {
  background-color: #9bd770;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  border: none;
}

.step-line {
  height: 2px;
  background-color: #0B1D51;
  flex: 1;
  margin: 0 1rem;
}

.step-title {
  font-weight: bold;
  margin-bottom: 0.2rem;
  font-size: 18px;
  color: #0B1D51;
  font-family: 'Titillium Web';
}

.step-text {
  font-size: 15px;
  color: #0B1D51;
  font-family: 'Titillium Web';
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0700bf4 */#buttons-container{
    display: flex;
    align-content: center;
    justify-content: center;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-316d069 *//* --------- WRAPPER --------- */
      .stripe-wrapper {
        background-color: #ffffff;
        width: 100%;
        border-radius: 12px;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
        overflow: hidden;
        max-width: 800px;
        margin: auto;
      }

#email{
    background: white;
    border-color: #d8d8d8;
    border-radius: 8px;
    color: #383838!important;
    font-family: 'Inter'!important;
    letter-spacing: -0.5px!important;
    font-size: 16px;
}

#lastName{
    background: white;
    border-color: #d8d8d8;
    border-radius: 8px;
}

#card-number-element{
        height: 40px;
    border-radius: 8px;
}
#card-cvc-element{
        height: 40px;
    border-radius: 8px;
}
#terms{
    width: 3%;
}
      /* --------- HEADER --------- */
      .header {
        background: linear-gradient(to right, rgba(11, 29, 81, 0.98) 60%, rgba(11, 29, 81, 0.85)),
              url('https://eta-travels.com/wp-content/uploads/2025/04/shutterstock_567230686-scaled-1.jpg');
          background-size: cover;
          background-position: center right;
          border-radius: 10px;
          padding: 1.2rem 1rem;
          color: white;
          font-family: sans-serif;
          font-weight: bold;
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin: 0 auto 1rem;
      }

      .header h2 {
        font-size: 1.2rem;
        font-weight: 600;
        margin-bottom: 0.4em;
        font-family: 'Titillium Web';
      }

      .header .payment-logos {
        display: flex;
        align-items: center;
        gap: 0.5rem;
      }

      .header .payment-logos img {
        height: 24px;
        width: auto;
        display: block;
      }

      /* --------- FORM --------- */
      form {
        padding: 2rem 1.5rem 1.5rem;
        display: flex!important;
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
        flex-direction: column;
        gap: 1rem 1.5rem;
      }

      label {
        display: block;
        font-size: 16px!important;
        color: #0B1D51!important;
        margin-bottom: 0.35rem;
        font-family: 'Titillium Web'!important;
      }

      .required::after {
        content: "*";
        color: #ef4444;
        margin-left: 0.25rem;
      }

      input,
      select,
      .StripeElement {
        width: 100%;
        padding: 0.625rem 0.75rem;
        border: 1px solid #d1d5db;
        border-radius: 6px;
        font-size: 0.9375rem;
        background-color: #ffffff;
        transition: border-color 0.2s ease;
      }

      input:focus,
      select:focus,
      .StripeElement--focus {
        outline: none;
        border-color: #3b82f6;
      }

      /* Override Stripe placeholder style */
      .StripeElement {
        background-color: #ffffff;
      }

      /* Full‑width rows */
      .col-span-2 {
        grid-column: span 2 / span 2;
      }

      @media (max-width: 600px) {
        .col-span-2 {
          grid-column: span 1 / span 1;
        }
      }

      /* --------- CHECKBOX --------- */
      .checkbox-wrapper {
        grid-column: 1 / -1;
        display: flex;
        align-items: center;
        gap: 0.6rem;
        font-size: 0.8125rem;
        line-height: 1.3;
        color: #374151;
      }
      
      .checkbox-wrapper input{
          margin-top: 0;
      }
      
      .checkbox-wrapper a:hover{
        color: #0b1d51fa;
        font-weight: 500;
      }
      
      .checkbox-wrapper label{
          margin-bottom: 0;
      }

      .checkbox-wrapper input {
        margin-top: 0.15rem;
      }

      /* --------- SUBMIT BUTTON --------- */
      .submit-btn {
        grid-column: 1 / -1;
        color: #ffffff!important;
        background: #52b418!important;
        font-family: "Inter", Sans-serif!important;
        font-weight: 600!important;
        padding: 18px 24px!important;
        text-transform: uppercase!important;
        padding: 0.8rem 1.2rem;
        border: none;
        border-radius: 8px;
        cursor: pointer;
        transition: background-color 0.2s ease;
        font-size: 21px!important;
      }

      .submit-btn:hover {
        background-color: #102d5a;
      }

      /* --------- ERROR MESSAGE --------- */
      #card-errors {
        grid-column: 1 / -1;
        color: #ef4444;
        font-size: 0.875rem;
        margin-top: -0.5rem;
      }
      
      #google-wrapper{
          border:0;
      }
      
      #apple-wrapper{
          border:0;
      }
      
    .header { 
        padding:1rem 1.5rem; color:#fff; background:linear-gradient(to right,rgba(11,29,81,0.98) 60%,rgba(11,29,81,0.85)), url('https://eta-travels.com/wp-content/uploads/2025/04/shutterstock_567230686-scaled-1.jpg') center/cover; }
    
    .header h2 { margin:0; font:600 1.2rem 'Titillium Web',sans-serif; }
    
    form { 
        padding:1rem 1.5rem; 
        display:grid; 
        
    }
    label { 
        font:18px 'Titillium Web',sans-serif; 
        color:#0b1d51; 
        
    }
    .required:after { 
        content:'*'; 
        color:#ef4444; 
        margin-left:.25rem; 
        
    }
    input, .StripeElement {
        width:100%; 
        padding:.625rem .75rem; 
        border:1px solid #d8d8d8; 
        border-radius:8px; 
        font-size:.9375rem; 
        background:#fff; 
        
    }
    input:focus, .StripeElement--focus { 
        border-color:#3b82f6; 
        outline:none; 
        
    }
    .payment-method-tabs { 
        display:flex; 
        gap:1rem; 
        margin:1rem 0 0.5rem 0; 
    }
    
    @media only screen and (max-width:768px){
        .payment-method-tabs { 
            gap:0.5rem; 
        }
    }
    .escoge-metodo h2{
        font-family: 'Inter' !important;
        letter-spacing: -0.2px!important;
        font-weight: 600!important;
        font-size: 19px !important;
        color: #0B1D51!important;
    }
    .escoge-metodo{
        margin: 2rem 0;
    }
    @media only screen and (max-width: 768px){
        .escoge-metodo{
        margin: 0;
    }
    }
    .method-button { flex:1; padding:.75rem; background: white!important;
    border: 1px solid #d4d4d4;
    border-radius: 8px; cursor:pointer; text-align:center; transition:.2s;
    }
    #btn-card{
         border: 1px solid #d4d4d4;
         border-radius: 8px;
         padding: 0.5rem 0;
    }
    #btn-apple{
         border: 1px solid #d4d4d4;
         border-radius: 8px;
         padding: 0.5rem 0;
    }
    #btn-google{
         border: 1px solid #d4d4d4;
         border-radius: 8px;
         padding: 0.5rem 0;
    }
    .method-button.active { 
        background: #fff;
        border: 2px solid #0a1d51!important;
        border-radius: 8px; 
        
    }
    #card-container { 
        display:block; 
        
    }
    #payment-request-wrapper { 
        display:none; 
        
    }
    .pr-wrapper { 
        border: 1px solid #d8d8d8;
        border-radius: 8px;
        overflow: hidden;
    }
    #apple-not-supported{
        padding: 2rem 1.5rem;
        border-left: 4.8px solid #f86808;
    }
    
    #google-not-supported{
        padding: 2rem 1.5rem;
        border-left: 4.8px solid #f86808;
    }
    .pr-button { 
        width:100%;
    }
    .secure-info, .not-supported {
        padding: 1.5rem 0.5rem 0; 
        font:.875rem 'Titillium Web',sans-serif; 
        text-align:center; 
        
    }
    .secure-info { 
        color:#374151;
        display:flex; 
        align-items:center; 
        gap:.5rem; 
        justify-content:center; 
    }
    .not-supported { 
        color:#f86808;
        text-align:left;
        font-family: 'Inter';
        line-height: 23px;
    }
    .checkbox-wrapper { display:flex; gap:.6rem; font:.8125rem 'Titillium Web',sans-serif; color:#374151; line-height:1.3; }

    #card-errors { color:#ef4444; font:.875rem 'Titillium Web',sans-serif; margin-top:-.5rem; }
    
    #google-button{
        border: 0!important;
        padding: 0!important;
    }
    
    #apple-button{
        border: 0!important;
        padding: 0!important;
    }
    
.total-row{
    padding: 1rem 1.5rem;
    font-family: 'Inter';
    color: #0B1D51;
    font-weight: 600;
    font-size: 21px !important;
    letter-spacing: -0.2px;
    display: flex;
    justify-content: space-between;
}

.total-amount{
    font-size: 25px;
}

.legal-note{
    font-family: 'Inter';
    font-weight: 300;
    font-size: 12px;
    line-height: 16px;
}

.tarjeta{
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5rem;
    align-items: center;
}

.tarjeta label{
    margin: 0 !important;
    font-family: 'Inter' !important;
    letter-spacing: -0.2px;
    font-weight: 600;
    font-size: 19px !important;
}

.confianza-pago {
  font-size: 0.95rem;
  color: #1a1a1a;
}

.confianza-lista {
  list-style: none;
  padding: 0;
  margin: 0 0 0.5rem 0;
}

.confianza-lista li {
  display: flex;
  align-items: center;
  margin-bottom: 0.2rem;
  font-family: 'Inter';
  font-size: 13px;
  letter-spacing: -0.2px;
}

.confianza-icono {
  width: 18px;
  height: 18px;
  color: #16a34a; /* verde check */
  margin-right: 8px;
  flex-shrink: 0;
}

.confianza-seguridad {
  display: flex;
  align-items: center;
  color: #6b7280;
  font-size: 0.85rem;
  gap: 6px;
  padding-left: 3px;
  font-family: 'Inter';
  font-size: 13px;
  letter-spacing: -0.2px;
  font-weight: 300;
  color: #8c8c8c;
}

.confianza-seguridad svg{
    width: 10px;
}/* End custom CSS */