.elementor-2646 .elementor-element.elementor-element-9036e86{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:3rem 3rem;--row-gap:3rem;--column-gap:3rem;--padding-top:3rem;--padding-bottom:3rem;--padding-left:0rem;--padding-right:0rem;}.elementor-2646 .elementor-element.elementor-element-c306f41{--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;}.elementor-2646 .elementor-element.elementor-element-c9f4fc0{--display:flex;--min-height:325px;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.91;--overlay-mix-blend-mode:multiply;--border-radius:16px 16px 16px 16px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-2646 .elementor-element.elementor-element-c9f4fc0::before, .elementor-2646 .elementor-element.elementor-element-c9f4fc0 > .elementor-background-video-container::before, .elementor-2646 .elementor-element.elementor-element-c9f4fc0 > .e-con-inner > .elementor-background-video-container::before, .elementor-2646 .elementor-element.elementor-element-c9f4fc0 > .elementor-background-slideshow::before, .elementor-2646 .elementor-element.elementor-element-c9f4fc0 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2646 .elementor-element.elementor-element-c9f4fc0 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #FFFFFF00 50%, var( --e-global-color-7bfb45f ) 100%);}.elementor-2646 .elementor-element.elementor-element-c9f4fc0 .elementor-background-slideshow__slide__image{background-position:center center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2646 .elementor-element.elementor-element-994ab94 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:30px;font-weight:600;color:var( --e-global-color-bcce02b );}.elementor-2646 .elementor-element.elementor-element-12b4093 .elementor-heading-title{color:var( --e-global-color-bcce02b );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2646 .elementor-element.elementor-element-476a6e2{--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;}.elementor-2646 .elementor-element.elementor-element-90bf7c4{text-align:center;}.elementor-2646 .elementor-element.elementor-element-90bf7c4 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:36px;font-weight:600;line-height:42px;}@media(min-width:768px){.elementor-2646 .elementor-element.elementor-element-c306f41{--width:50%;}.elementor-2646 .elementor-element.elementor-element-476a6e2{--width:50%;}}@media(max-width:767px){.elementor-2646 .elementor-element.elementor-element-9036e86{--padding-top:1rem;--padding-bottom:0rem;--padding-left:0rem;--padding-right:0rem;}.elementor-2646 .elementor-element.elementor-element-476a6e2.e-con{--order:-99999 /* order start hack */;}.elementor-2646 .elementor-element.elementor-element-90bf7c4 .elementor-heading-title{font-size:28px;line-height:35px;}}/* Start custom CSS for heading, class: .elementor-element-90bf7c4 */.elementor-2646 .elementor-element.elementor-element-90bf7c4 {
    text-wrap: balance;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-619aad8 */.elementor-2646 .elementor-element.elementor-element-619aad8 h3 {
  display: none !important;
}
.woocommerce-billing-fields__field-wrapper label {
      display: none !important;
}/* End custom CSS */
/* Start custom CSS *//* --- 1. Estructura y Layout --- */
.woocommerce-checkout .col2-set { display: block; }
.woocommerce-checkout .col-2 { display: none !important; }
.woocommerce-checkout .col-1 { width: 100% !important; }

#billing_country_field, 
#order_review_heading { 
    display: none !important; 
}

/* --- 2. Contenedor Principal (Compactado) --- */
.checkout.woocommerce-checkout {
    background-color: #f8faff;
    padding: 32px; /* Reducido 20% */
    border-radius: 24px;
    border: 1px solid #e6e9f2;
    max-width: 600px; /* Opcional: para que no se estire infinito en desktop */
    margin: 0 auto;
}

/* --- 3. Títulos --- */
.woocommerce-checkout h3 {
    color: #2E3C85 !important;
    font-size: 18px !important; /* Reducido 20% */
    font-weight: 800 !important;
    border: none !important;
    margin-bottom: 16px !important;
}

/* --- 4. Botones de Donación (Ancho Total + Reducción 20%) --- */
.donation-amounts {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 12px;
    width: 100%;
}

.donation-amounts label {
    flex: 1;
    display: flex;
}

.donation-amounts input[type="button"].donation-btn,
.donation-btn {
    flex: 1;
    width: 100%;
    border: 1.2px solid #2E3C85 !important;
    background-color: #ffffff !important;
    color: #2E3C85 !important;
    padding: 10px 4px !important; /* Reducido */
    border-radius: 999px !important;
    cursor: pointer !important;
    font-weight: 600 !important;
    font-size: 13px !important; /* Reducido */
    transition: all 0.2s ease-in-out !important;
    box-shadow: none !important;
    text-shadow: none !important;
    height: auto !important;
    text-align: center;
}

.donation-amounts input[type="button"].donation-btn:hover {
    background-color: #2E3C85 !important;
    color: white !important;
}

.donation-amounts input[type="button"].donation-btn.is-active {
    background-color: #2E3C85 !important;
    color: #ffffff !important;
}

.donation-amounts input[type="button"].donation-btn:active {
    transform: scale(0.96) !important;
    background-color: #2E3C85 !important;
    color: #ffffff !important;
}

/* --- 5. Inputs (Datos y Otro Monto reducidos) --- */
.input-text, 
#donation_amount_custom {
    width: 100%;
    border: 1.5px solid #b8c6d9 !important;
    border-radius: 10px !important;
    padding: 12px !important; /* Reducido de 15px */
    background-color: #fff !important;
    color: #333333 !important;
    font-size: 13.5px !important; /* Reducido de 16px */
}

#donation_amount_custom {
    margin-top: 8px;
    flex-basis: 100%;
}

.input-text:focus, 
#donation_amount_custom:focus {
    border-color: #2E3C85 !important;
    outline: none !important;
    color: #000000 !important;
}

.form-row label {
    color: #2E3C85 !important;
    font-weight: 700;
    margin-bottom: 8px;
    font-size: 13px !important;
}

/* --- 6. Sección de Pago y Revisión --- */
#order_review {
    background: #ffffff;
    border-radius: 16px;
    padding: 20px;
    margin-top: 16px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.04);
}

#payment { background: white !important; }
.payment_methods { border: none !important; }

.wc_payment_method {
    padding: 12px 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

.wc_payment_method label {
    color: #2E3C85 !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
}

.woocommerce-checkout #payment div.payment_box {
    background-color: #f3f3f3 !important;
    color: #444444 !important;
    border-radius: 10px;
    padding: 12px;
    font-size: 11.5px !important;
}

.woocommerce-checkout #payment div.payment_box::before {
    border: 1em solid #f3f3f3 !important;
    border-right-color: transparent !important;
    border-left-color: transparent !important;
    border-top-color: transparent !important;
}

/* --- 7. Botón Final (Reducido) --- */
#place_order {
    background-color: #2E3C85 !important;
    color: #ffffff !important;
    width: 100%;
    padding: 16px !important; 
    border-radius: 40px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    border: none !important;
    margin-top: 16px;
    cursor: pointer;
    transition: transform 0.2s, background-color 0.3s;
}

#place_order:hover {
    background-color: #004ecc !important;
    transform: translateY(-2px);
}

/* --- 8. Textos Legales y Errores --- */
.woocommerce-privacy-policy-text p {
    color: #666666 !important;
    font-size: 11px !important;
    line-height: 1.3;
}

.field-error input {
    border-color: #dc2626 !important;
    background-color: #fef2f2 !important;
}

.inline-error {
    margin-top: 5px;
    font-size: 11px !important;
    color: #dc2626 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    padding: 0 !important;
  
}

.wc_payment_method {
    padding: 0 !important;
    border-bottom: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li img {
    width: 50px !important;
}

.section-title {
  display: block;
  margin-bottom: 10px;
  font-weight: 600;
  font-size: 16px;
  color: #2E3C85; /* azul limpio */
}

.donation-title {
  margin-top: 0;
}

.billing-title {
  margin-top: 16px;
}

.payment-title {
  margin-top: 16px;
}

/* --- 8. AJUSTE PARA TELÉFONOS (CAMPOS AL 100%) --- */
@media (max-width: 600px) {
    /* Forzamos a que los contenedores de los campos ocupen toda la fila */
    .form-row-first, 
    .form-row-last, 
    .form-row-wide {
        width: 100% !important;
        float: none !important;
    }

    /* Ajuste de padding del contenedor principal en móviles para ganar espacio */
    .checkout.woocommerce-checkout {
        padding: 20px;
    }
}/* End custom CSS */