body.ce-kit-1{color:#1A1A1A;font-family:"Inter", sans-serif;font-size:15px;font-weight:normal;line-height:1.4em;}body.ce-kit-1 p{margin-bottom:15px;}a, .elementor a{color:#E63312;font-family:"Inter", sans-serif;font-size:16px;font-weight:bold;letter-spacing:0px;}a:hover, .elementor a:hover{color:#E63312;}body.ce-kit-1 h1{font-family:"Inter", sans-serif;font-size:36px;font-weight:800;line-height:1.3em;}body.ce-kit-1 h2{font-family:"Inter", sans-serif;font-size:28px;font-weight:bold;line-height:1.3em;}body.ce-kit-1 h3{font-family:"Inter", sans-serif;font-size:24px;font-weight:bold;letter-spacing:-0.2px;}body.ce-kit-1 h4{font-family:"Inter", sans-serif;font-size:20px;font-weight:bold;line-height:1.4em;}body.ce-kit-1 h5{font-family:"Inter", sans-serif;font-weight:700;}body.ce-kit-1 h6{font-family:"Inter", sans-serif;font-weight:700;}body.ce-kit-1 .ce-display-small{font-family:"Inter", sans-serif;font-size:16px;}body.ce-kit-1 .ce-display-medium{font-family:"Open Sans", sans-serif;font-size:24px;}body.ce-kit-1 .ce-display-large{font-family:"Open Sans", sans-serif;font-size:31px;}body.ce-kit-1 .ce-display-xl{font-family:"Open Sans", sans-serif;font-size:38px;line-height:1.4em;}body.ce-kit-1 .ce-display-xxl{font-family:"Open Sans", sans-serif;font-size:45px;}.elementor-button{font-family:"Inter", sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:1.9px;background-color:#E63312;}.elementor-button, a.elementor-button:not(#e){color:#FFFFFF;}.elementor-button:hover, .elementor-button:focus, a.elementor-button:not(#e):hover, a.elementor-button:not(#e):focus{color:#FFFFFF;}.elementor-button:hover, .elementor-button:focus{background-color:#333333;}.elementor-button.elementor-size-sm{border-radius:2px 2px 2px 2px;}.elementor-button.elementor-size-md{font-size:16px;border-radius:2px 2px 2px 2px;}.elementor-button.elementor-size-lg{border-radius:2px 2px 2px 2px;}.elementor-button.elementor-size-xl{border-radius:2px 2px 2px 2px;}.elementor-button.elementor-size-xs{border-radius:2px 2px 2px 2px;}.elementor-button-primary .elementor-button, .elementor-button-primary a.elementor-button:not(#e){color:#FFFFFF;}.elementor-button-primary .elementor-button{background-color:#E63312;}.elementor-button-primary .elementor-button:hover, .elementor-button-primary .elementor-button:focus, .elementor-button-primary a.elementor-button:not(#e):hover, .elementor-button-primary a.elementor-button:not(#e):focus{color:#FFFFFF;}.elementor-button-primary .elementor-button:hover, .elementor-button-primary .elementor-button:focus{background-color:#333333;}.elementor-button-primary .elementor-button.elementor-size-md{border-radius:0px 0px 0px 0px;}.elementor-button-primary .elementor-button.elementor-size-lg{border-radius:0px 0px 0px 0px;}.elementor-button-secondary .elementor-button, .elementor-button-secondary a.elementor-button:not(#e){color:#FFFFFF;}.elementor-button-secondary .elementor-button{background-color:#333333;border-style:solid;border-width:1px 1px 1px 1px;border-color:#1D1D1B;}.elementor-button-secondary .elementor-button:hover, .elementor-button-secondary .elementor-button:focus, .elementor-button-secondary a.elementor-button:not(#e):hover, .elementor-button-secondary a.elementor-button:not(#e):focus{color:#333333;}.elementor-button-secondary .elementor-button:hover, .elementor-button-secondary .elementor-button:focus{background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#333333;}.btn:not(.btn-primary, .btn-secondary){font-family:"Arial", sans-serif;font-weight:700;background-color:#E63312;padding:12px 20px 12px 20px;border-radius:0px 0px 0px 0px;}.btn:not(.btn-primary, .btn-secondary), a.btn:not(.btn-primary, .btn-secondary){color:#FFFFFF;}.btn:not(.btn-primary, .btn-secondary):hover, .btn:not(.btn-primary, .btn-secondary):hover:active, .btn:not(.btn-primary, .btn-secondary):focus, a.btn:not(.btn-primary, .btn-secondary):hover, a.btn:not(.btn-primary, .btn-secondary):focus{color:#FFFFFF;}.btn:not(.btn-primary, .btn-secondary):hover, .btn:not(.btn-primary, .btn-secondary):hover:active, .btn:not(.btn-primary, .btn-secondary):focus{background-color:#333333;}.btn-primary{text-transform:none;background-color:#E63312;padding:15px 30px 15px 30px;border-radius:0px 0px 0px 0px;}.btn-primary, a.btn-primary{color:#FFFFFF;}.btn-primary:hover, .btn-primary:hover:active, .btn-primary:focus, a.btn-primary:hover, a.btn-primary:focus{color:#FFFFFF;}.btn-primary:hover, .btn-primary:hover:active, .btn-primary:focus{background-color:#333333;}.btn-secondary{text-transform:none;background-color:#2C2C2C;border-style:solid;border-width:1px 1px 1px 1px;border-color:#1D1D1B;border-radius:0px 0px 0px 0px;}.btn-secondary, a.btn-secondary{color:#FFFFFF;}.btn-secondary:hover, .btn-secondary:hover:active, .btn-secondary:focus, a.btn-secondary:hover, a.btn-secondary:focus{color:#1D1D1B;}.btn-secondary:hover, .btn-secondary:hover:active, .btn-secondary:focus{background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#1D1D1B;}.elementor-view-stacked .elementor-icon{background-color:#1A1A1A;color:#1A1A1A;}.elementor-view-framed .elementor-icon, .elementor-view-default .elementor-icon{color:#1A1A1A;}.elementor-view-framed .elementor-icon{background-color:#1A1A1A;}.elementor-view-stacked .elementor-icon:hover{background-color:#FFFFFF;color:#333333;}.elementor-view-framed .elementor-icon:hover, .elementor-view-default .elementor-icon:hover{color:#FFFFFF;}.elementor-view-framed .elementor-icon:hover{background-color:#333333;}body.ce-kit-1 label{font-family:"DM Sans", sans-serif;font-weight:500;}body.ce-kit-1 .form-control, body.ce-kit-1 .elementor-field-textual{color:#333333;background-color:#F8F8F8;border-style:solid;border-width:0px 0px 0px 0px;border-radius:3px 3px 3px 3px;padding:17px 17px 17px 17px;}body.ce-kit-1 .form-control:focus, body.ce-kit-1 .elementor-field-textual:focus{background-color:#F8F8F8;box-shadow:0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset;outline-style:solid;border-style:solid;border-width:0px 0px 0px 0px;border-color:rgba(0, 0, 0, 0);}select.form-control:not([size]):not([multiple]){height:auto;}body.ce-kit-1 #wrapper{background-color:#FFFFFF;}body.ce-kit-1 .container{width:1600px;max-width:100%;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}@media(max-width:1024px){body.ce-kit-1 .ce-display-xl{font-size:30px;}body.ce-kit-1 .ce-display-xxl{font-size:38px;}}/* Start custom CSS for page-settings *//* ------------------------
  Accesorios
  ---------------------- */
  
.accessories_table_price { display: none;
}

.pfly-title { 
text-transform: none !important ;
border-bottom: none !important;
}



#lgcookieslaw_banner {
    background:#000;
}
.elementor-email-subscription .elementor-checkbox-label {
    color:#FFF;
}

.elementor-button:hover, .elementor-button:focus {
    background-color: #fff;
}


/* ================================================================
   Accesorios HSMA — Layout rejilla de tarjetas
   Pegar en: Back-office > Apariencia > Tema > CSS personalizado
   ================================================================ */

/* ----------------------------------------------------------------
   Títulos de sección numerados automáticamente
   ---------------------------------------------------------------- */
.hsma_block_content {
  counter-reset: acc-group;
}

.option-row {
  counter-increment: acc-group;
  margin-bottom: 1.5rem;
}

.option-row > h4 {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0.85rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  border-bottom: none;
}

/* Número automático delante del título */
.option-row > h4::before {
  content: counter(acc-group) ". ";
}

/* Ocultar icono material-icons remove/add */
.option-row > h4 .material-icons.remove,
.option-row > h4 .material-icons.add {
  display: none;
}

.option-row > h4 .group_nb {
  font-weight: 400;
  color: #888;
  font-size: 0.82em;
}

.option-row > h4 .group_price {
  display: none;
}

/* ----------------------------------------------------------------
   Tabla radio/checkbox → Rejilla de tarjetas
   ---------------------------------------------------------------- */

/* Convertir tabla y tbody en contenedor flex con wrapping */
table.accessorygroup.check_radio_table,
table.accessorygroup.check_radio_table > tbody {
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 0;
  border: none;
  width: 100%;
  background: transparent;
}

/* Cada fila = una tarjeta */
table.accessorygroup.check_radio_table > tbody > tr.clearfix {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  width: 115px;
  cursor: pointer;
  border: none;
  background: transparent;
  vertical-align: top;
}

/* Ocultar celda del radio/checkbox nativo (sigue activo en el DOM) */
table.accessorygroup.check_radio_table td.select_box {
  display: none !important;
}

/* -------- Celda imagen → cuerpo de la tarjeta -------- */
table.accessorygroup.check_radio_table td.checkbox_radio_image {
  display: block;
  width: 115px;
  padding: 0;
  border: 2px solid #ddd;
  border-bottom: none;           /* el nombre se fusiona como footer */
  border-radius: 4px 4px 0 0;
  overflow: hidden;
  background: #fff;
  transition: border-color 0.2s, box-shadow 0.2s;
  position: relative;
}

table.accessorygroup.check_radio_table td.checkbox_radio_image .hsma_images-container,
table.accessorygroup.check_radio_table td.checkbox_radio_image .hsma_product-cover,
table.accessorygroup.check_radio_table td.checkbox_radio_image div {
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}

table.accessorygroup.check_radio_table td.checkbox_radio_image img.accessory_image {
  display: block;
  width: 115px;
  height: 85px;
  object-fit: contain;
  padding: 0;
}

/* Icono zoom: aparece en hover */
table.accessorygroup.check_radio_table td.checkbox_radio_image .layer {
  position: absolute;
  top: 3px;
  right: 3px;
  background: rgba(0, 0, 0, 0.55);
  border-radius: 3px;
  padding: 1px 3px;
  opacity: 0;
  transition: opacity 0.2s;
  display: flex;
  align-items: center;
}
table.accessorygroup.check_radio_table td.checkbox_radio_image:hover .layer {
  opacity: 1;
}
table.accessorygroup.check_radio_table td.checkbox_radio_image .layer .material-icons {
  font-size: 13px !important;
  color: #fff;
  line-height: 1;
}

/* -------- 3ª celda: nombre + precio -------- */
table.accessorygroup.check_radio_table td:nth-child(3) {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  width: 115px;
  padding: 0;
}

/* Nombre → etiqueta oscura fusionada con la imagen */
table.accessorygroup.check_radio_table p.block_accessory_name {
  width: 115px;
  margin: 0;
  padding: 4px 5px;
  background: #222;
  color: #fff;
  font-size: 0.68rem;
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
  border: 2px solid #ddd;
  border-top: none;
  border-radius: 0 0 4px 4px;
  box-sizing: border-box;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  min-height: 32px;
  transition: border-color 0.2s;
}

/* Ocultar spinner de cantidad */
table.accessorygroup.check_radio_table .ma_block_qty {
  display: none !important;
}

/* Ocultar span combination */
table.accessorygroup.check_radio_table [class^="combination_"] {
  display: none !important;
}

/* Precio debajo de la tarjeta */
table.accessorygroup.check_radio_table .accessory_price {
  display: block;
  text-align: center;
  font-size: 0.8rem;
  color: #444;
  margin-top: 5px;
  width: 115px;
}

/* Añadir "+" delante del precio */
table.accessorygroup.check_radio_table .accessory_price [class^="price_"]::before {
  content: "+ ";
}

/* -------- Estado SELECCIONADO -------- */
/* Borde azul en imagen y nombre cuando el radio/checkbox está marcado */
table.accessorygroup.check_radio_table tr.clearfix:has(input[type="radio"]:checked) td.checkbox_radio_image,
table.accessorygroup.check_radio_table tr.clearfix:has(input[type="checkbox"]:checked) td.checkbox_radio_image {
  border-color: #E63312;
  box-shadow: 0 0 0 1px #E63312;
}

table.accessorygroup.check_radio_table tr.clearfix:has(input[type="radio"]:checked) p.block_accessory_name,
table.accessorygroup.check_radio_table tr.clearfix:has(input[type="checkbox"]:checked) p.block_accessory_name {
  border-color: #E63312;
  background: #E63312;
}

/* -------- Hover -------- */
table.accessorygroup.check_radio_table tr.clearfix:hover td.checkbox_radio_image {
  border-color: #aaa;
}

/* ----------------------------------------------------------------
   Secciones con dropdown (Diseño, Estuche) — sin cambios visuales
   forzados, solo ajustes menores de alineación
   ---------------------------------------------------------------- */
table#product_list_accessory_3,
table#product_list_accessory_4 {
  width: 100%;
}

table#product_list_accessory_3 td.dropdown-content,
table#product_list_accessory_4 td.dropdown-content {
  vertical-align: middle;
  padding-left: 1rem;
}

/* ----------------------------------------------------------------
   Responsive
   ---------------------------------------------------------------- */
@media (max-width: 576px) {
  table.accessorygroup.check_radio_table > tbody > tr.clearfix {
    width: 90px;
  }
  table.accessorygroup.check_radio_table td.checkbox_radio_image,
  table.accessorygroup.check_radio_table td.checkbox_radio_image img.accessory_image,
  table.accessorygroup.check_radio_table p.block_accessory_name,
  table.accessorygroup.check_radio_table .accessory_price {
    width: 90px;
  }
  table.accessorygroup.check_radio_table td.checkbox_radio_image img.accessory_image {
    height: 68px;
  }
}/* End custom CSS */