/* =========================================================
   ADADP 11.138.0 - Formulario internacional uniforme
   Mismo lenguaje visual que España para todos los países.
   Solo presentación; no modifica validaciones ni valores.
   ========================================================= */

/* País a ancho completo cuando DNI no está disponible/visible en ese país. */
body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-country-dni-wrap.adadp-single-col {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  width: 100% !important;
}

body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-country-dni-wrap.adadp-single-col > .adadp-country-row {
  width: 100% !important;
  max-width: 100% !important;
  grid-column: 1 / -1 !important;
}

@media (min-width: 768px) {
  /* Bloque inferior: CP + Teléfono / Ciudad-Región centradas debajo. */
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-intl-bottom-v11138 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 22px !important;
    row-gap: 18px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-postcode {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-phone {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-no-postcode > .adadp-v11138-phone {
    grid-column: 1 / -1 !important;
    width: min(560px, 82%) !important;
    justify-self: center !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-intl-place-box-v11138 {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-self: center !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: min(560px, 82%) !important;
    max-width: 560px !important;
    min-width: 0 !important;
    margin: 2px auto 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  /* Neutralizar columnas Bootstrap internas para que cada control use su caja completa. */
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-col {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row label {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    margin: 0 0 7px !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row input,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row select,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row textarea,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row .form-control {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Mantener prefijo telefónico + campo como una sola unidad. */
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-phone .adadp-phone-input-wrap {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-phone .adadp-phone-input-wrap input {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
  }
}

@media (max-width: 767px) {
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-intl-bottom-v11138 {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-intl-bottom-v11138 > .adadp-v11138-postcode,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-intl-bottom-v11138 > .adadp-v11138-phone,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-intl-place-box-v11138 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-intl-place-box-v11138 {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-col {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row input,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row select,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row textarea,
  body#checkout #checkout-addresses-step .adadp-layout-v11138-intl .adadp-v11138-field-row .form-control {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}
