.elementor-1555 .elementor-element.elementor-element-ad05920{--display:flex;--min-height:70vh;--justify-content:flex-start;--padding-top:2em;--padding-bottom:2em;--padding-left:0em;--padding-right:0em;}.elementor-1555 .elementor-element.elementor-element-236faa2 .elementor-heading-title{font-size:2.3em;}.elementor-1555 .elementor-element.elementor-element-618187d{text-align:justify;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-1555 .elementor-element.elementor-element-ad05920{--content-width:1300px;}}@media(max-width:1024px){.elementor-1555 .elementor-element.elementor-element-ad05920{--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;--padding-top:1em;--padding-bottom:1em;--padding-left:1em;--padding-right:1em;}.elementor-1555 .elementor-element.elementor-element-236faa2 .elementor-heading-title{font-size:2em;}.elementor-1555 .elementor-element.elementor-element-4e43d0c > .elementor-widget-container{margin:-12px -12px -12px -12px;padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-1555 .elementor-element.elementor-element-ad05920{--padding-top:1em;--padding-bottom:1em;--padding-left:1em;--padding-right:1em;}.elementor-1555 .elementor-element.elementor-element-236faa2 .elementor-heading-title{font-size:1.6em;}.elementor-1555 .elementor-element.elementor-element-4e43d0c > .elementor-widget-container{margin:-13px -13px -13px -13px;padding:0px 0px 0px 0px;}}/* Start custom CSS for shortcode, class: .elementor-element-4e43d0c *//* ================================================================
   BENENCIA – ESTILO INTEGRAL FINAL (DESKTOP + TABLET + MÓVIL)
   Fixes:
   - Desktop: formulario NO se corta (overflow visible + columna flexible)
   - Tablet/Móvil: sin línea/borde envolviendo el resumen
   - Tablet/Móvil: Total NO duplicado (se ocultan labels del plugin)
   - Inputs: radio 20px real (.elementor-1555 .elementor-element.elementor-element-4e43d0c correcto)
   ================================================================ */

/* 1) BASE */
.ywraq-wrapper, .ywraq-wrapper *{
  box-sizing: border-box !important;
  font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

.woocommerce.ywraq-wrapper{
  width: 100% !important;
  max-width: 1300px !important;
  margin: 40px auto !important;
  padding: 0 15px !important;
  overflow: visible !important; /* evita recortes por sombras/sticky */
}

/* Evitar recortes por overflow en ancestros típicos */
.woocommerce.ywraq-wrapper .ywraq-form-table-wrapper,
.woocommerce.ywraq-wrapper .yith-ywraq-mail-form-wrapper{
  overflow: visible !important;
  float: none !important;
  clear: none !important;
}

/* El plugin mete un precio extra dentro del nombre */
.mobile-price{ display: none !important; }

/* 2) LAYOUT (>=768): tabla/resumen izq + formulario der
   (tu HTML: el form de envío está dentro de .ywraq-form-table-wrapper) */
@media (min-width: 768px){
  .ywraq-wrapper.ywraq-with-form{ display: block !important; }

  #yith-ywraq-message{
    width: 100% !important;
    margin-bottom: 20px !important;
  }

  .ywraq-form-table-wrapper{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 400px) !important; /* flexible = no se corta */
    column-gap: 40px !important;
    row-gap: 20px !important;
    align-items: start !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .ywraq-form-table-wrapper > form#yith-ywraq-form{
    grid-column: 1 !important;
    min-width: 0 !important;
  }

  .ywraq-form-table-wrapper > .yith-ywraq-mail-form-wrapper{
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 400px !important;   /* en desktop no pasa de 400 */
    justify-self: end !important;  /* pegadito a la derecha sin salirse */
    align-self: start !important;
    position: sticky;
    top: 20px;
  }
}

/* Tablet: columna derecha más estrecha */
@media (min-width: 768px) and (max-width: 1024px){
  .ywraq-form-table-wrapper{
    grid-template-columns: minmax(0, 1fr) 320px !important;
    column-gap: 24px !important;
  }
  .ywraq-form-table-wrapper > .yith-ywraq-mail-form-wrapper{
    max-width: 320px !important;
  }
}

/* 3) DESKTOP (>=1025): tabla premium */
@media (min-width: 1025px){
  #yith-ywrq-table-list.shop_table{
    border: none !important;
    border-radius: 15px !important;
    overflow: hidden !important;
    border-collapse: separate !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
    background: #ffffff !important;
  }

  #yith-ywrq-table-list,
  #yith-ywrq-table-list th,
  #yith-ywrq-table-list td{
    border: none !important;
  }

  #yith-ywrq-table-list thead th{
    background: #004a99 !important;
    color: #ffffff !important;
    padding: 20px 15px !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    letter-spacing: 1px !important;
  }

  #yith-ywrq-table-list tbody td{
    padding: 22px 15px !important;
    background: #ffffff !important;
    border-bottom: 1px solid #f2f5f8 !important;
    vertical-align: middle !important;
  }

  #yith-ywrq-table-list tbody tr:hover td{ background: #ffffff !important; }

  #yith-ywrq-table-list td.product-thumbnail img{
    border-radius: 12px !important;
  }

  /* TOTAL desktop bien alineado a la derecha */
  .raq-totals-row,
  .raq-totals-label{
    display: table-cell !important;
  }

  #yith-ywrq-table-list th.raq-totals-row{
    background: #ffffff !important;
    border-bottom: none !important;
    padding: 0 !important;
  }

  #yith-ywrq-table-list th.raq-totals-label{
    background: #ffffff !important;
    border-bottom: none !important;
    text-align: right !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    padding: 16px 15px !important;
    white-space: nowrap !important;
  }

  #yith-ywrq-table-list td.raq-totals{
    background: #f8faff !important;
    border-bottom: none !important;
    border-radius: 12px !important;
    padding: 16px !important;
    text-align: right !important;
  }

  #yith-ywrq-table-list tbody tr:hover td.raq-totals{
    background: #f8faff !important;
  }
}

/* 4) TABLET + MÓVIL (<=1024): vista “tarjetas” (como lo tenías antes)
   - quita el borde/linea envolvente
   - evita total duplicado */
@media (max-width: 1024px){

  /* Quitar el “borde” que envuelve todo el resumen (suele venir del form o del table) */
  #yith-ywraq-form{
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #yith-ywrq-table-list.shop_table{
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: none !important;
  }

  /* Tabla -> bloques */
  #yith-ywrq-table-list,
  #yith-ywrq-table-list thead,
  #yith-ywrq-table-list tbody,
  #yith-ywrq-table-list tr,
  #yith-ywrq-table-list td,
  #yith-ywrq-table-list th{
    display: block !important;
    width: 100% !important;
  }

  #yith-ywrq-table-list thead{ display: none !important; }

  /* Tarjetas producto */
  #yith-ywrq-table-list tr.cart_item{
    margin-bottom: 28px !important;
    border: 1px solid #eef2f7 !important;
    border-radius: 20px !important;
    padding: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.06) !important;
  }

  #yith-ywrq-table-list td{
    padding: 12px 0 !important;
    border: none !important;
    border-bottom: 1px solid #f4f4f4 !important;
    text-align: left !important;
    background: transparent !important;
  }

  /* Etiquetas */
  #yith-ywrq-table-list td:before{
    content: attr(data-title);
    display: block !important;
    font-weight: 700 !important;
    color: #004a99 !important;
    text-transform: uppercase !important;
    font-size: 11px !important;
    margin-bottom: 6px !important;
  }

  /* Subtotal venía como “Precio”: lo corregimos */
  #yith-ywrq-table-list td.product-subtotal:before{
    content: "Subtotal" !important;
  }

  /* Imagen */
  #yith-ywrq-table-list td.product-thumbnail{
    text-align: center !important;
    border-bottom: none !important;
  }
  #yith-ywrq-table-list td.product-thumbnail:before{ display: none !important; }
  #yith-ywrq-table-list td.product-thumbnail img{
    width: 160px !important;
    border-radius: 15px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* Remove */
  #yith-ywrq-table-list td.product-remove:before{ display:none !important; }
  #yith-ywrq-table-list td.product-remove{
    text-align: center !important;
    border-bottom: none !important;
  }

  /* TOTAL: evitar duplicado
     (oculta cualquier label/row del plugin con máxima especificidad) */
  #yith-ywrq-table-list .raq-totals-row,
  #yith-ywrq-table-list .raq-totals-label{
    display: none !important;
  }

  /* La celda del total como tarjeta limpia */
  #yith-ywrq-table-list td.raq-totals{
    border: 1px solid #eef2f7 !important;
    border-radius: 20px !important;
    padding: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.06) !important;
    margin-top: 12px !important;
  }

  /* “Total” una sola vez (la nuestra) */
  #yith-ywrq-table-list td.raq-totals:before{
    content: "Total" !important;
    display: block !important;
    font-weight: 700 !important;
    color: #004a99 !important;
    text-transform: uppercase !important;
    font-size: 11px !important;
    margin-bottom: 6px !important;
  }

  /* dentro del total, sin bordes */
  #yith-ywrq-table-list td.raq-totals *{
    border: none !important;
  }
}

/* 5) MÓVIL (<768): formulario debajo */
@media (max-width: 767px){
  .ywraq-form-table-wrapper{ display: block !important; }

  .yith-ywraq-mail-form-wrapper{
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 28px !important;
    position: static !important;
  }

  #yith-ywrq-table-list td.product-thumbnail img{
    width: 140px !important;
  }
}

/* 6) FORMULARIO – estilos + radio 20px real */
.yith-ywraq-mail-form-wrapper{
  background:#f8faff !important;
  padding:35px !important;
  border-radius:25px !important;
  border:1px solid #eef2f7 !important;
  box-shadow:0 10px 25px rgba(0,0,0,0.04) !important;
}

.yith-ywraq-mail-form-wrapper h3{
  color:#004a99 !important;
  font-size:26px !important;
  margin-bottom:25px !important;
  font-weight:700 !important;
  text-align:center !important;
}

.yith-ywraq-mail-form-wrapper input.input-text,
.yith-ywraq-mail-form-wrapper textarea,
.yith-ywraq-mail-form-wrapper select{
  width:100% !important;
  min-height:52px !important;
  border-radius:20px !important;
  border:1px solid #d1d8e0 !important;
  padding:12px 20px !important;
  background:#ffffff !important;
  font-size:15px !important;
  outline:none !important;
}

.yith-ywraq-mail-form-wrapper input.input-text:focus,
.yith-ywraq-mail-form-wrapper textarea:focus,
.yith-ywraq-mail-form-wrapper select:focus{
  border-color:#004a99 !important;
  box-shadow:0 0 0 4px rgba(0,74,153,0.10) !important;
}

/* 7) BOTONES PÍLDORA */
.ywraq-wrapper .button,
.ywraq-wrapper .raq-send-request,
.ywraq-wrapper input[type="submit"],
.ywraq-wrapper .wc-backward{
  background-color:#004a99 !important;
  color:#ffffff !important;
  border-radius:50px !important;
  padding:16px 35px !important;
  font-weight:700 !important;
  text-transform:none !important;
  border:none !important;
  transition:all .3s ease !important;
  display:inline-block !important;
  cursor:pointer !important;
  text-decoration:none !important;
  box-shadow:0 5px 15px rgba(0,74,153,0.2) !important;
}

.ywraq-wrapper .button:hover,
.ywraq-wrapper .raq-send-request:hover{
  background-color:#003366 !important;
  transform:translateY(-2px) !important;
}/* End custom CSS */