:root { --margin-top-xs: 15px; --margin-left-xs: 15px; --margin-right-xs: 15px; --margin-bottom-xs: 15px; --title-margin-bottom: clamp(25px, -8.861px + 3.417vw, 40px); }
.max-half.center, .max-third.center { margin-left: auto; margin-right: auto; }
@media only screen and (min-width: 576px) {
  .max-half { max-width: 991px; min-width: 576px; }
  .max-third { max-width: 650px; min-width: 576px; }
}
.font-weight-100, .font-weight-100 * { font-weight: 100; }
.font-weight-200, .font-weight-200 * { font-weight: 200; }
.font-weight-300, .font-weight-300 * { font-weight: 300; }
.font-weight-400, .font-weight-400 * { font-weight: 400; }
.font-weight-500, .font-weight-500 * { font-weight: 500; }
.font-weight-600, .font-weight-600 * { font-weight: 600; }
.font-weight-700, .font-weight-700 * { font-weight: 700; }
.font-weight-800, .font-weight-800 * { font-weight: 800; }
.font-weight-900, .font-weight-900 * { font-weight: 900; }
.color-2, .color-2 * { color: var(--main-color-2); }
.color-10, .color-10 * { color: var(--main-color-10); }
.color-principal, .color-principal * { color: var(--main-color-3); }
.color-texto, .color-texto * { color: var(--content-p-color); font-weight: normal; }
body { overflow: hidden; }
figure { margin-bottom: 0px; }
.img-fluid { width: 100%; }
.fullwidth .container, .container .fullwidth, .container .container, .fullwidth .fullwidth { padding-left: 0px !important; padding-right: 0px !important; }
.content-text .h1, .content-text .h2, .content-text .h3, .content-text .h4, .content-text .h5, .content-text .h6, .content-text h1, .content-text h2, .content-text h3, .content-text h4, .content-text h5, .content-text h6, .content-text .title { margin-bottom: 25px; }
.content-text p + h2 { margin-top: 30px; }
.content-text p + h3 { margin-top: 25px; }
.content-text h5 + h3, .content-text h4 + h3 { margin-top: 25px; }
.content-text p + h5, .content-text p + h4 { margin-top: 20px; }
.content-text p + h5, .content-text p + h4, .content-text p:has(+ p) { margin-bottom: 15px; }
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, .title { margin-bottom: var(--title-margin-bottom); }
body:not(.Noticias.fitxa) h2 { text-transform: uppercase; }
.btn { font-weight: 600; font-family: var(--heading-font-family); letter-spacing: 0.2px; }
.btn-secundario .btn, .btn.btn-secundario { --button-color: var(--main-color-3); --button-bg-color: #fff; }
.footer-copyright { padding: 30px 15px; }
.footer-copyright-text p { margin: 0px; }
.footer-links ul { list-style: none; margin: 0px; padding: 0px; display: flex; justify-content: end; gap: 10px 20px; }
.footer-links ul li { display: inline-block; }
.footer-links ul li:last-child { margin-right: 0px; }
.footer-links ul li a { transition: 0.3s ease-in-out; }
footer .content-text p { margin-bottom: 5px; }
footer .content-text .footer-title { text-transform: uppercase; font-size: 20px; margin-bottom: 10px; font-weight: normal; letter-spacing: 0px; color: rgb(35, 35, 33); padding-top: 25px; }
footer .footer-logo { margin-bottom: 15px; }
footer .menu { margin: 0px; }
footer .menu .nav-item { margin: 0px; }
footer .menu .nav-item + .nav-item { margin-top: 15px; }
footer .menu .nav-item.dropdown .nav-link .toggler { display: none; }
footer .menu .nav-item.dropdown .nav-link::after { content: unset !important; }
footer .menu .nav-item.dropdown .dropdown-menu { display: none !important; }
footer .btn-mail { margin-top: 10px; }
.extrafooter { background-color: var(--main-color-6); }
.buscador-list-item { margin: 10px 0px 10px 10px; }
.item-list:not([class*="_cat_"]) { --content-heading-color: var(--content-p-color); }
.item-list.Productos .item { padding: 0px 10px; margin-bottom: 20px; }
.item-list.Productos .item .single-post-slide-wrap { padding: 15px; transition: 0.3s ease-in-out; border-radius: 6px; height: 100%; box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 7px 2px; display: flex; flex-direction: column; }
.item-list.Productos .item:hover .single-post-slide-wrap { background: var(--main-color-2); transform: translateY(-5px); }
.item-list.Productos .item .item-miniature { margin-bottom: 15px; }
.item-list.Productos .item .item-miniature img { aspect-ratio: 1 / 1; object-fit: contain; }
.item-list.Productos .item .item-miniature a { mix-blend-mode: multiply; }
.item-list.Productos .item .item-miniature:hover img { filter: unset; }
.item-list.Productos .item .item-details .item-heading .item-title-link { text-decoration: none; }
.item-list.Productos .item .item-details .item-heading .item-title-link .item-title { font-size: clamp(14px, 15px + 0vw, 18px); margin-bottom: 10px; font-weight: normal; text-align: center; }
.item-list.Productos .item .item-details .item-reference { font-size: 14px; margin-bottom: 10px; text-align: center; }
.item-list.Productos .item .item-link { text-align: center; margin-top: auto; }
.item-list.Productos .item .item-link a { color: var(--main-color-3); font-size: 14px; }
.swiper-container { overflow: hidden; margin: -5px; }
.swiper-container .swiper { overflow: visible; padding: 5px; }
.item-list.Productos_cat_1 > .row { margin-left: -7.5px; margin-right: -7.5px; }
.item-list.Productos_cat_1 .swiper-wrapper { padding: 15px 0px; }
.item-list.Productos_cat_1 .item { transition: 0.3s ease-in-out; }
.item-list.Productos_cat_1:not(.swiper) .item { margin-bottom: 15px; padding-left: 7.5px; padding-right: 7.5px; }
.item-list.Productos_cat_1.swiper .item { height: auto; }
.item-list.Productos_cat_1 .item > div { overflow: hidden; background: rgb(255, 255, 255); height: 100%; display: flex; flex-direction: column; }
.item-list.Productos_cat_1 .item:nth-child(3n+1) .item-details { background-color: rgb(246, 246, 246); }
.item-list.Productos_cat_1 .item:nth-child(3n+2) .item-details { background-color: rgb(226, 226, 226); }
.item-list.Productos_cat_1 .item:nth-child(3n) .item-details { background-color: rgb(209, 208, 204); }
.item-list.Productos_cat_1 .item .item-miniature { display: block; position: relative; width: 100%; }
.item-list.Productos_cat_1 .item .item-miniature img { display: block; position: relative; margin: 0px auto; aspect-ratio: 16 / 9; }
.item-list.Productos_cat_1 .item .item-miniature img { width: 100%; height: 100%; object-fit: cover; }
.item-list.Productos_cat_1 .item .item-details { flex: 1 1 0%; display: flex; flex-direction: column; justify-content: start; padding: clamp(20px, -25.148px + 4.556vw, 20px) clamp(15px, -18.861px + 3.417vw, 30px); }
.item-list.Productos_cat_1 .item .item-details .item-title-link { text-decoration: none; font-size: clamp(14px, 6.97px + 0.911vw, 16px); }
.item-list.Productos_cat_1 .item:hover { transform: translateY(-5px); }
.item-list.swiper.Sectores_cat_1:not(.special-item-list) { padding-left: 10%; padding-right: 10%; }
.item-list.Sectores_cat_1:not(.special-item-list) .swiper-wrapper { padding: 15px 0px; }
.item-list.Sectores_cat_1:not(.special-item-list) .item { transition: 0.3s ease-in-out; --title-margin-bottom: 15px; }
.item-list.Sectores_cat_1:not(.special-item-list):not(.swiper) .item { margin-bottom: 30px; }
.item-list.Sectores_cat_1:not(.special-item-list).swiper .item { height: auto; }
.item-list.Sectores_cat_1:not(.special-item-list) .item > div { overflow: hidden; background: rgb(255, 255, 255); height: 100%; display: flex; flex-direction: column; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-miniature { display: block; position: relative; width: 100%; margin-bottom: clamp(15px, -18.861px + 3.417vw, 30px); }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-miniature img { aspect-ratio: 1 / 1; object-fit: cover; overflow: hidden; display: block; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details .item-title-link { text-decoration: none; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details .item-summary { margin-bottom: var(--title-margin-bottom); font-size: 16px; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details .item-summary p { font-size: 16px; }
.item-list.Sectores_cat_1:not(.special-item-list) .item:hover { transform: translateY(-5px); }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details { flex: 1 1 0%; display: flex; flex-direction: column; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details .item-content { flex: 1 1 0%; display: flex; flex-direction: column; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details .item-title-link.btn { margin-top: auto; }
.special-item-list.Sectores_cat_1 .item { margin-bottom: 15px; padding-left: 7.5px; padding-right: 7.5px; height: auto; }
.special-item-list.Sectores_cat_1 .item .single-post-slide-wrap { height: auto; }
.special-item-list.Sectores_cat_1 .item .item-details { height: 100%; }
.special-item-list.Sectores_cat_1 .item a { text-decoration: none; }
.special-item-list.Sectores_cat_1 .item .title, .special-item-list.Sectores_cat_1 .item .item-summary { margin-bottom: 10px; }
.special-item-list.Sectores_cat_1 .item .item-content { padding: 30px !important; }
.special-item-list.Sectores_cat_1 .item:not(.item-especial) { --button-color: var(--main-color-3); --button-color-hover: #ffffff; --button-bg-color: #ffffff; --button-bg-color-hover: var(--main-color-7); --content-h3-font-size: clamp(20px, 6.456px + 1.367vw, 26px); }
.special-item-list.Sectores_cat_1 .item:not(.item-especial) .item-details { --content-p-color: #000; }
.special-item-list.Sectores_cat_1 .item:not(.item-especial) .item-miniature { margin-bottom: 0px; }
.special-item-list.Sectores_cat_1 .item:not(.item-especial) .item-miniature img { aspect-ratio: 1 / 1; object-fit: cover; overflow: hidden; display: block; }
.special-item-list.Sectores_cat_1 .item:not(.item-especial):nth-child(3n+1) .item-details { background-color: rgb(62, 183, 197); }
.special-item-list.Sectores_cat_1 .item:not(.item-especial):nth-child(3n+2) .item-details { background-color: rgb(122, 205, 215); }
.special-item-list.Sectores_cat_1 .item:not(.item-especial):nth-child(3n) .item-details { background-color: rgb(178, 227, 232); }
.special-item-list.Sectores_cat_1 .item .item-details .title { padding-top: 0px; padding-bottom: 0px; color: rgb(255, 255, 255); }
.special-item-list.Sectores_cat_1 .item-especial { --background4-bg-color: #585857; --background4-color: #ffffff; --content-p-font-size: 16px; --content-h3-font-size: clamp(20px, 6.456px + 1.367vw, 26px); }
.special-item-list.Sectores_cat_1 .item-especial .item-content { padding-left: 15px; padding-right: 15px; flex: 1 1 0%; align-items: center; display: block; width: 100%; }
.special-item-list.Sectores_cat_1 .item-especial .item-content .title { margin-bottom: 0px !important; }
.special-item-list.item-list.Sectores_cat_1 .item { display: flex; }
.special-item-list.item-list.Sectores_cat_1 .item > div { display: flex; flex-direction: column; width: 100%; }
.special-item-list.item-list.Sectores_cat_1 .item .item-details { flex: 1 1 0%; }
.special-item-list.item-list.Sectores_cat_1 .item-especial img { aspect-ratio: 2.04 / 1; width: 100%; object-fit: cover; display: block; }
@media (max-width: 991px) {
  .special-item-list.Sectores_cat_1 .item .item-content { padding: 15px !important; }
  .special-item-list { padding-left: 7.5px; padding-right: 7.5px; }
  .special-item-list.item-list.Sectores_cat_1 .item-especial img { aspect-ratio: 1 / 1; }
  .special-item-list.Sectores_cat_1 .item-especial .item-content .title { margin-bottom: 10px !important; }
}
.item-list.Sectores .swiper-wrapper { padding: 15px 0px; }
.item-list.Sectores .item { transition: 0.3s ease-in-out; }
.item-list.Sectores:not(.swiper) .item { margin-bottom: 30px; }
.item-list.Sectores.swiper .item { height: auto; }
.item-list.Sectores:not(.swiper) .item .item-miniature { margin-bottom: 15px; }
.item-list.Sectores .item > div { height: 100%; display: flex; flex-direction: column; }
.item-list.Sectores .item .item-miniature { display: block; position: relative; width: 100%; }
.item-list.Sectores .item .item-miniature img { display: block; position: relative; margin: 0px auto; width: 100%; height: 100%; object-fit: cover; aspect-ratio: 1 / 1; }
.item-list.Sectores .item .item-details { flex: 1 1 0%; display: flex; flex-direction: column; }
.item-list.Sectores .item .item-details .title { margin-bottom: 0px; font-size: 26px; padding: 10px 0px; font-weight: 600; line-height: 1.2; color: rgb(135, 135, 134); }
.item-list.Sectores .item .item-details .item-title-link { text-decoration: none; }
.item-list.Sectores .item:hover { transform: translateY(-5px); }
.item-list.Productos_zonas_sector .item { margin-bottom: 30px; }
.item-list.Productos_zonas_sector .item > div { height: 100%; display: flex; flex-direction: column; overflow: hidden; --content-heading-color: #fff; --content-p-color: #fff; }
.item-list.Productos_zonas_sector .item .zona-sector-card { background-color: var(--main-color-3); }
.item-list.Productos_zonas_sector .item .item-miniature { display: block; width: 100%; }
.item-list.Productos_zonas_sector .item .item-miniature img { display: block; width: 100%; object-fit: cover; aspect-ratio: 1 / 1; }
.item-list.Productos_zonas_sector .item .item-details { flex: 1 1 0%; display: flex; flex-direction: column; padding: 20px; }
.item-list.Productos_zonas_sector .item .item-details .item-content { flex: 1 1 0%; display: flex; flex-direction: column; }
.item-list.Productos_zonas_sector .item .item-details .item-title-link { text-decoration: none; }
.item-list.Productos_zonas_sector .item .item-details .item-title-link.btn { margin-top: auto; }
.item-list.Productos_zonas_sector .item:hover { transform: translateY(-5px); transition: transform 0.3s; }
.filter-box .filter .cat-fields, .filter-box .filter .filter-field { padding-top: 15px; border-top: 1px solid rgb(187, 187, 187); }
.filter-box .filter .cat-fields button, .filter-box .filter .filter-field button { color: rgb(34, 34, 34); font-size: 16px; text-transform: uppercase; }
.filter-box .filter .cat-fields button i, .filter-box .filter .filter-field button i { color: rgb(187, 187, 187); }
.filter-box { padding-right: clamp(15px, -41.435px + 5.695vw, 40px); }
.filter-box .filter { background: var(--main-color-2); padding: 15px; border-radius: 6px; box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 7px 2px; }
.filter-box .filter .filter-title { margin-bottom: 20px; font-size: var(--content-h4-font-size); text-transform: uppercase; display: flex; justify-content: space-between; align-items: center; transition: 0.3s ease-in-out; }
.filter-box .filter .filter-title:has(i.rotate90-2) { padding-bottom: 15px; }
.filter-box .filter .filter-field + .filter-field { margin-top: 15px; }
.filter-box .filter .filter-field .filter-field-content { padding-top: 10px; }
.filter-box .filter .filter-field button { width: 100%; font-weight: bold; transition: 0.3s ease-in-out; display: flex; justify-content: space-between; align-items: center; }
.filter-box .filter .filter-field button i { transition: 0.3s ease-in-out; }
.filter-box .filter .filter-field button[aria-expanded="false"] i { rotate: -90deg; }
.filter-box .filter .filter-field-content .form-check { display: flex; align-items: center; padding-left: 22px; width: fit-content; }
.filter-box .filter .filter-field-content .form-check input { margin-top: 0px; }
.filter-box .filter .filter-field-content .form-check label { font-size: 16px; cursor: pointer; }
.filter-box .filter .filter-field-content:has(.btn-filter) { display: flex; flex-wrap: wrap; gap: 5px; }
.filter-box .filter .filter-field-content .btn-filter { margin: 0px; padding: 3px 10px; border: 1px solid rgb(187, 187, 187); border-radius: 100px; font-size: 14px; transition: 0.3s ease-in-out; cursor: pointer; }
.filter-box .filter .filter-field.Capas .filter-field-content .btn-filter { aspect-ratio: 1 / 1; width: 29px; text-align: center; }
.filter-box .filter .filter-field-content .btn-filter:has(input:checked), .filter-box .filter .filter-field-content .btn-filter:hover { background-color: color-mix(in srgb, var(--main-color-3) 10%, transparent); color: var(--main-color-3); border-color: var(--main-color-3); }
.filter-box .filter .filter-field-content .btn-filter input { display: none; }
.filter-box .filter .filter-buttons { margin-top: 30px; }
.filter-box .filter .filter-buttons input { width: 100%; font-size: 14px; padding: 15px; color: rgb(255, 255, 255); }
.filter-box .filter .cat-fields { margin-bottom: 15px; }
.filter-box .filter .cat-fields button { width: 100%; font-weight: bold; transition: 0.3s ease-in-out; display: flex; justify-content: space-between; align-items: center; }
.filter-box .filter .cat-fields button i { transition: 0.3s ease-in-out; }
.filter-box .filter .cat-fields button[aria-expanded="false"] i { rotate: -90deg; }
.filter-box .filter .cat-fields .cat-field-content { padding-top: 10px; }
.filter-box .filter .cat-fields .btn-collapse-cat { justify-content: end; }
.filter-box .filter .cat-fields .cat-filter-link { font-size: 16px; margin-bottom: 10px; height: auto; color: rgb(102, 102, 102); }
.filter-box .filter .cat-fields .cat-filter-link .btn-cat-link { color: rgb(102, 102, 102); }
.filter-box .filter .cat-fields .cat-filter-label .cat-filter-content { padding-left: 10px; }
.filter-box .filter .cat-fields .cat-filter-label .cat-filter-title { margin-bottom: 10px; }
.filter-box .filter .cat-fields .cat-filter-label .cat-filter-content .cat-filter-label .cat-filter-content { padding-bottom: 15px; }
.filter-box .filter .cat-fields .cat-field-content > .cat-filter-label > .cat-filter-title { text-transform: uppercase; font-size: 15px; font-weight: bold; --content-a-color: #555 !important; }
.filter-box .filter .cat-fields .cat-field-content > .cat-filter-label > .cat-filter-content > .cat-filter-label > .cat-filter-title { font-size: 15px; font-weight: bold; }
.filter-box .filter .cat-fields .cat-field-content > .cat-filter-label > .cat-filter-content > .cat-filter-label .cat-filter-title button { color: rgb(102, 102, 102); font-weight: normal; text-transform: unset !important; }
.filter-box .filter .cat-fields .cat-field-content > .cat-filter-label > .cat-filter-content > .cat-filter-label > .cat-filter-content > .cat-filter-link { font-size: 15px; }
.filter-box .filter .cat-fields .cat-field-content > .cat-filter-label > .cat-filter-content > .cat-filter-label > .cat-filter-content > .cat-filter-link .btn-cat-link { color: rgb(135, 135, 135); }
.filter-box .filter .cat-fields .cat-field-content .form-check { display: flex; align-items: start; padding: 3px 0px; }
.filter-box .filter .cat-fields .cat-field-content .form-check:not(.cat-filter-parent) { padding-left: 20px; }
#collapse_cat-839, #collapse_cat-880 { padding-left: 0px !important; }
.filter-box .filter .cat-fields .cat-field-content input { margin: 3px 0px 0px; left: 1px; }
.filter-box .filter .cat-fields .cat-field-content label { font-size: 15px; }
.filter-box .filter .cat-fields .cat-field-content .cat-filter-parent label { white-space: nowrap; }
.filter-box .filter .cat-fields .cat-field-content > .form-check { padding-top: 15px; padding-bottom: 15px; }
.filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="839"], .filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="880"] { padding-left: 0px !important; }
.filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="839"] input, .filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="880"] input { pointer-events: none !important; }
.filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="839"] label.cat-filter-toggle, .filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="880"] label.cat-filter-toggle { pointer-events: auto !important; cursor: pointer !important; }
.filter-box .filter .cat-fields .cat-field-content .cat-filter-toggle:hover { color: var(--main-color-3); }
.filter-box .filter .cat-fields .cat-field-content .cat-filter-toggle.active { font-weight: bold; color: rgb(0, 0, 0); }
.zone-item { margin-bottom: 15px; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; }
.zone-item .card-header { padding: 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; }
.zone-item .card-header button { width: 100%; justify-content: space-between; height: 50px; display: flex; align-items: center; padding: 10px 15px; transition: 0.3s ease-in-out; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; border-radius: 5px; --button-bg-color: #ddd; --button-color: #000; --button-bg-color-hover: #eee; --button-color-hover: #000; --button-padding-right: 20px; --button-padding-left: 20px; text-decoration: none !important; }
.zone-item .card-header button:focus { outline: none; }
.zone-item .card-header button h3 { margin-bottom: 0px; font-size: 20px; font-weight: normal; }
.zone-item .card-header button i { transition: 0.3s ease-in-out; }
.zone-item .card-header button[aria-expanded="true"] { --button-bg-color: #eee; --button-color: #000; --button-bg-color-hover: #eee; --button-color-hover: #000; }
.zone-item .card-header button[aria-expanded="true"] i { transform: rotate(-90deg); }
.zone-item .card-body { border-width: 0px medium medium; border-style: none; border-color: currentcolor; border-image: initial; border-radius: 5px; padding: 15px 20px; background: rgb(238, 238, 238); margin-top: 5px; }
.zone-item .card-body ul { margin: 0px; }
.zone-item .card-body ul li a { color: rgb(0, 123, 255); }
.navbar-nav { align-items: center; }
.navbar-toggler-icon { width: 24px !important; transform: translateX(0px); }
.navbar-toggler-icon::after, .navbar-toggler-icon::before { width: 24px !important; transform: translateX(0px); }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::after { transform: translateX(0px) rotate(45deg); width: 24px; left: 0px; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::before { transform: translate(0px, 8px) rotate(-45deg); width: 24px; }
.navbar-toggler-icon { width: 16px; height: 18px; background-image: none; position: relative; display: block; padding: 0px; margin: 0px 7px 0px 0px; border-bottom: 1px solid var(--dark); transform: translateX(8px); }
.navbar-toggler-icon::after, .navbar-toggler-icon::before { width: 16px; position: absolute; height: 1px; background-color: var(--dark); top: 1px; left: 0px; content: ""; z-index: 2; transition: 300ms linear; }
.navbar-toggler-icon::after { top: 9px; width: 24px; left: 0px; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::after { transform: rotate(45deg); width: 24px; left: 0px; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::before { transform: translate(0px, 8px) rotate(-45deg); width: 24px; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon { border-color: transparent; transition: 300ms linear; }
@media (min-width: 992px) {
  .user-item { margin-left: 30px !important; }
}
.fast-menu { margin-bottom: var(--margin-bottom-m); }
.user-data--title, .fast-menu--title { font-size: clamp(19px, 16.977px + 0.351vw, 22px); display: flex; align-items: center; justify-content: space-between; }
.user-data--title svg, .fast-menu--title svg { transition: 0.3s ease-in-out; }
.user-data--title[aria-expanded="true"] svg, .fast-menu--title[aria-expanded="true"] svg { transform: rotate(90deg); }
.fast-menu .btn { --button-bg-color: #ddd; --button-color: #000; --button-bg-color-hover: #eee; --button-color-hover: #000; --button-padding-right: 20px; --button-padding-bottom: 15px; --button-padding-left: 20px; --button-padding-top: 15px; --button-font-size: 16px; height: 50px; }
.intranet-page--header .title { font-size: clamp(19px, 16.977px + 0.351vw, 22px); }
@media only screen and (min-width: 991px) {
  .user-data--content, .fast-menu--content { display: block; height: 100% !important; }
  .user-data--title i, .fast-menu--title i { display: none; }
  .fast-menu { padding-right: 35px; }
}
.initial-container { margin-bottom: 0px !important; background: unset !important; }
.user-info--item { --content-p-font-size: clamp(12px, 11.712px + 0.090vw, 13px); margin-bottom: 10px; }
.imagetext .image-column { order: 0; }
.imagetext .content-column { order: 1; padding-left: var(--padding-left-m); padding-right: var(--padding-right-m); }
.imagetext-chars-box { display: flex; align-items: start; padding: 30px 15px; height: 100%; }
.imagetext-chars-box .imagetext-chars { width: 100%; }
.imagetext-chars-box .imagetext-chars .image { margin: 0px auto 30px; width: fit-content; padding: 10px; border-radius: 5px; background: rgb(255, 255, 255); aspect-ratio: 1 / 1; height: 60px; display: flex; justify-content: center; align-items: center; }
.imagetext-chars-box .imagetext-chars .image img { filter: brightness(0) saturate(100%) invert(66%) sepia(34%) saturate(530%) hue-rotate(140deg) brightness(86%) contrast(101%); }
.imagetext-chars-box .imagetext-chars .title { margin-bottom: 20px; font-size: 20px; }
.imagetext-chars-box .imagetext-chars .content-text { text-align: center; --content-p-font-size: 16px; }
.individualbanner1 .portfolio-thumb { filter: brightness(0.33); width: 100%; }
.individualbanner1 .portfolio-thumb img { height: clamp(700px, 642.342px + 18.018vw, 900px); object-fit: cover; }
.individualbanner1 .banner-content { padding: clamp(20px, 12.793px + 2.252vw, 45px); max-width: 900px; }
.individualbanner1 .banner-content .banner-content-details { padding: clamp(20px, 12.793px + 2.252vw, 45px); background-color: var(--main-color-3); }
.individualbanner1 .banner-content .banner-content-details { background-color: transparent; }
.individualbanner1 .banner-content .banner-content-details .title a { text-decoration: none; }
.individualbanner1 .banner-content .banner-content-details .title:has(~ .content-text), .individualbanner1 .banner-content .banner-content-details .content-text:has(~ .btn) { margin-bottom: var(--margin-bottom-s); }
.individualbanner1 .banner-content .banner-content-details .title, .individualbanner1 .banner-content .banner-content-details .content-text p { color: rgb(255, 255, 255); }
.individualbanner1 .banner-content .banner-content-details .btn { --button-bg-color: #fff; --footer-button-bg-color: #fff; --header-button-bg-color: #fff; --button-color: black; --footer-button-color: black; --header-button-color: black; --button-border-color: white; --footer-button-border-color: white; --header-button-border-color: white; }
.individualbanner1 .banner-content .banner-content-details .content-text p { font-size: var(--content-h4-font-size); }
.individualbannersheet:not(.cta-item) .portfolio-thumb { filter: brightness(0.33); width: 100%; }
.individualbannersheet:not(.cta-item) .portfolio-thumb img { height: clamp(700px, 642.342px + 18.018vw, 900px); object-fit: cover; }
.individualbannersheet:not(.cta-item) .banner-content .banner-content-details .title, .Serveis.fitxa .individualbannersheet:not(.cta-item) .banner-content .banner-content-details .content-text { margin-bottom: var(--margin-bottom-s); }
.individualbannersheet:not(.cta-item) .banner-content .banner-content-details .title, .Serveis.fitxa .individualbannersheet:not(.cta-item) .banner-content .banner-content-details .content-text p { color: rgb(255, 255, 255); }
.individualbannersheet:not(.cta-item) .banner-content .banner-content-details .btn { --button-bg-color: #fff; --footer-button-bg-color: #fff; --header-button-bg-color: #fff; --button-color: black; --footer-button-color: black; --header-button-color: black; --button-border-color: white; --footer-button-border-color: white; --header-button-border-color: white; }
.individualbannersheet:not(.cta-item) .banner-content { padding: clamp(20px, 12.793px + 2.252vw, 45px); max-width: 850px; }
.individualbannersheet:not(.cta-item) .banner-content .banner-content-details { padding: clamp(20px, 12.793px + 2.252vw, 45px); }
.individualbannersheet:not(.cta-item) .banner-content .banner-content-details .content-text p { font-size: var(--content-h4-font-size); }
.content-wrapper.Caracteristicas-Celea .item:not(:last-child) .imagetext-chars-box { border-right: 1px solid rgb(187, 187, 187); }
#distribuidores main > div, #catalogos main > div, #pagina-gamas main > div, #quienes-somos main > div { padding-top: 0px; }
#pagina-gamas .individualbanner1 .portfolio-thumb img { height: auto; }
.list.CTA .item .fullwidth > .row.lock-container { border-radius: 15px; background-color: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.08) 0px 20px 40px; border: 1px solid rgba(0, 0, 0, 0.05); }
.list.CTA .individualbannersheet { display: flex; justify-content: start; padding: 30px; align-items: center; gap: 30px; flex-wrap: wrap; }
.list.CTA .individualbannersheet .portfolio-thumb { border-radius: 15px; display: block; width: fit-content; background: rgb(238, 238, 238); padding: 10px; }
.list.CTA .individualbannersheet .portfolio-thumb img { max-width: 80px; filter: brightness(0) saturate(100%) invert(66%) sepia(34%) saturate(530%) hue-rotate(140deg) brightness(86%) contrast(101%); }
.list.CTA .individualbannersheet .banner-content { width: calc(100% - 130px); min-width: 770px; }
.list.CTA .individualbannersheet .banner-content .banner-content-details { display: flex; justify-content: space-between; align-items: center; gap: 15px; flex-wrap: wrap; }
.list.CTA .individualbannersheet .banner-content .banner-content-details .banner-content-details-inner { max-width: calc(100% - 335px); width: auto; }
.list.CTA .individualbannersheet .banner-content .banner-content-details a { text-decoration: unset; }
.list.CTA .individualbannersheet .banner-content .banner-content-details .title { margin-bottom: 10px; font-size: var(--content-h4-font-size); }
.list.CTA .individualbannersheet .banner-content .banner-content-details .btn { margin-right: 0px; }
.Productos.fitxa { --title-margin-bottom: 20px; --content-h1-font-size: clamp(22px, 16.604px + 0.937vw, 30px); --content-h2-font-size: clamp(18px, 15.694px + 0.721vw, 26px); --content-h3-font-size: clamp(18px, 15.694px + 0.721vw, 26px); --content-p-font-size: 16px; --content-heading-font-weight: normal; }
.Productos.fitxa main .content-text { margin-bottom: var(--margin-bottom-s); }
.Productos.fitxa .product-info .product-info--row:has(.product-info--content:empty) { display: none; }
.Productos.fitxa .product-info { border-collapse: separate; border-spacing: 0px; background-color: rgb(255, 255, 255); border-radius: 12px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.08) 0px 2px 8px; width: 100%; }
.Productos.fitxa .product-info .product-info--row { border-bottom: 1px solid rgb(238, 238, 238); transition: 0.2s; }
.Productos.fitxa .product-info .product-info--row:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }
.Productos.fitxa .product-info .product-info--row:hover { background-color: rgb(249, 250, 251); transform: scale(1.005); }
.Productos.fitxa .product-info .product-info--title, .Productos.fitxa .product-info .product-info--content { padding: 10px 20px; vertical-align: middle; }
.Productos.fitxa .product-info .product-info--title { font-weight: 600; font-size: 14px; border-right: 2px solid rgb(233, 236, 239); }
.Productos.fitxa .product-info .product-info--content { font-size: 14px; font-weight: 400; width: 100%; }
.Productos.fitxa .product-info .product-info--content:empty::after { content: "No especificado"; color: rgb(187, 187, 187); font-size: 13px; }
.Productos.fitxa .product-info .product-info--content:not(:empty) { font-weight: 500; color: rgb(33, 37, 41); }
@media (max-width: 768px) {
  .product-info { border-radius: 8px; }
  .Productos.fitxa .product-info .product-info--row { display: flex; flex-direction: column; }
  .Productos.fitxa .product-info .product-info--title { width: 100%; padding: 10px 16px 6px; border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px dashed rgb(222, 226, 230); background: rgb(248, 249, 250); }
  .Productos.fitxa .product-info .product-info--content { width: 100%; padding: 6px 16px 10px; }
}
.Productos.fitxa main > div { padding-top: 0px; }
.Productos.fitxa .main-image { padding-right: clamp(15px, -18.861px + 3.417vw, 30px); margin-bottom: var(--margin-bottom-s); }
.Productos.fitxa .main-image img { aspect-ratio: 1 / 1; object-fit: contain; display: block; background: rgb(254, 254, 254); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px 5px; border-radius: 6px; padding: 30px; mix-blend-mode: multiply; }
.Productos.fitxa .main-gallery { padding-right: clamp(15px, -18.861px + 3.417vw, 30px); }
.Productos.fitxa .main-gallery .gallery.swiper { display: block; background: rgb(254, 254, 254); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px 5px; border-radius: 6px; padding: 30px; }
.Productos.fitxa .main-gallery .gallery.swiper img { aspect-ratio: 1 / 1; object-fit: contain; display: block; mix-blend-mode: multiply; }
.Productos.fitxa .form-header { margin-top: var(--margin-top-s); }
.Productos.fitxa .form-header .title { margin-bottom: 0px; }
.Productos.fitxa .form-header .title .btn { border: 1px solid; width: 100%; font-size: 16px; }
.Productos.fitxa .form-header .title .btn[aria-expanded="true"] { border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; }
.Productos.fitxa .form-content { padding: 20px; border-right: 1px solid; border-bottom: 1px solid; border-left: 1px solid; border-image: initial; border-top: unset; background-color: rgb(246, 246, 246); }
.Productos.fitxa .form-content .simpleform small { margin-bottom: var(--margin-bottom-xs); }
.Productos.fitxa .form-content .simpleform textarea, .Productos.fitxa .form-content .simpleform input { margin-top: 0px; }
.Productos.fitxa .form-content .simpleform input::placeholder { opacity: 1 !important; }
.Productos.fitxa .form-content .simpleform .form-checks { margin-bottom: 0px; }
.Productos.fitxa .form-content .simpleform .form-checks label { font-size: 14px; }
.Productos.fitxa .form-content .simpleform .form-checks label input { margin-right: 5px; }
.Productos.fitxa .form-content .simpleform .form-checks #singlebutton { margin-top: var(--margin-top-xs); }
.Productos.fitxa .product-header, .Productos.fitxa .basic-fields { --content-p-font-size: 15px; font-size: 15px; }
.Productos.fitxa .product-header *, .Productos.fitxa .basic-fields * { color: rgb(0, 0, 0); display: flex; }
.Productos.fitxa .basic-fields .basic-fields--content { display: grid; }
.Productos.fitxa .basic-fields .basic-fields--content { display: grid; grid-template-columns: max-content 1fr; }
.Productos.fitxa .basic-fields .basic-fields--content .basic-fields--item:not(.basic-fields--item-description) { display: grid; grid-column: span 2; grid-template-columns: subgrid; gap: 5px 10px; align-items: start; }
.Productos.fitxa .basic-fields .basic-fields--content .basic-fields--item-description { grid-column: 1 / -1; }
.Productos.fitxa .product-header .product-header--row .product-header--item .header-label, .Productos.fitxa .basic-fields .basic-fields--content .basic-fields--item .item-heading { font-weight: bold; }
.Productos.fitxa .basic-fields .basic-fields--content-2 { padding-top: 15px; }
.Productos.fitxa .product-header .product-header--row .product-header--item .header-label { margin-right: 10px; }
.Productos.fitxa .product-header .product-header--row .product-header--item .header-label, .Productos.fitxa .basic-fields .basic-fields--content .basic-fields--item .item-heading { color: var(--main-color-3); }
.Productos.fitxa .basic-fields .basic-fields--content .basic-fields--item .item-content:empty::after { content: "No especificado"; }
.Productos.fitxa .basic-fields .basic-fields--footer { padding-top: 15px; }
.Productos.fitxa .basic-fields .basic-fields--footer .btn { color: var(--main-color-3); }
.Productos.fitxa .basic-fields .basic-fields--footer .btn[aria-expanded="true"] .abrir { display: none; }
.Productos.fitxa .basic-fields .basic-fields--footer .btn[aria-expanded="false"] .cerrar { display: none; }
.Productos.fitxa .valor-codigo { font-weight: bold; font-size: 16px; }
.basic-fields--item-description { flex-direction: column; }
.Productos.fitxa .product-description--text { display: none; }
.Productos.fitxa .product-header, .Productos.fitxa .basic-fields .basic-fields--content .basic-fields--item { padding: 15px 30px; }
.Productos.fitxa .product-header, .Productos.fitxa .basic-fields .basic-fields--content .basic-fields--item:nth-child(2n) { background-color: rgb(239, 239, 239); }
.Productos.fitxa .product-header .product-header--row { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 8px; }
.Productos.fitxa .product-header .product-header--row + .product-header--row { margin-top: 15px; }
.Productos.fitxa .product-header .product-header--row:empty { display: none !important; }
.Productos.fitxa .categories-list { margin-bottom: var(--margin-bottom-xs); }
.Productos.fitxa .categories-list .category-item a { text-transform: uppercase; color: var(--main-color-3); letter-spacing: 1px; font-size: clamp(16px, 15.423px + 0.18vw, 18px); }
.Productos.fitxa .categories-list .category-item:not([data-categoryid="190"], [data-categoryid="191"], [data-categoryid="192"], [data-categoryid="193"], [data-categoryid="194"], [data-categoryid="195"]) { display: none; }
.Productos.fitxa .nav-tabs { border-bottom: 1px solid rgb(187, 187, 187); }
.Productos.fitxa .nav-tabs .nav-item .nav-link { font-size: 14px; color: rgb(34, 34, 34); padding: 10px; border-top-left-radius: 6px; border-top-right-radius: 6px; line-height: 1; outline: unset !important; }
.Productos.fitxa .nav-tabs .nav-item .nav-link:hover { border-color: rgb(187, 187, 187) rgb(187, 187, 187) rgb(255, 255, 255); }
.Productos.fitxa .nav-tabs .nav-item .nav-link.active { border-color: rgb(187, 187, 187) rgb(187, 187, 187) rgb(255, 255, 255); }
.Productos.fitxa .tab-content { padding: 15px; border-radius: 0px 0px 6px 6px; border-width: 0px 1px 1px; border-style: none solid solid; border-color: currentcolor rgb(187, 187, 187) rgb(187, 187, 187); border-image: initial; }
.Productos.fitxa .main-download { padding-right: clamp(15px, -18.861px + 3.417vw, 30px); }
.pagination-box .pagination { border-color: var(--main-color-3); --button-color: #222222; --button-color-hover: var(--main-color-3); --button-bg-color: transparent; --button-bg-color-hover: color-mix(in srgb, var(--main-color-3) 10%, transparent); --button-font-size: 16px; --button-border-type: solid; --button-border-color: #bbbbbb; --button-border-color-hover: var(--main-color-3); --button-border-radius: 100px; --button-padding-left: 30px; --button-padding-right: 30px; --button-padding-top: 15px; --button-padding-bottom: 15px; --button-border-size: 1px; }
.pagination-box .pagination .pagination-item:last-child, .pagination-box .pagination .pagination-item:first-child { display: block; }
.caja-asociado { float: left; border-bottom: 1px solid rgb(204, 204, 204); width: 490px; display: none; }
.caja-asociado img { float: left; }
.caja-asociado p { font-size: 13px; float: left; background-image: url("/media/images/asociados/ico-submenu_1_1.png"); background-repeat: no-repeat; margin: 10px 0px 6px; padding-left: 15px; line-height: 130%; }
.caja-asociado a { color: var(--main-color-3); font-weight: bold; }
.caja-asociado a:hover { text-decoration: underline; }
.caja-asociado a.email { color: rgb(102, 102, 102); font-weight: normal; }
.main-navigation .dropdown-menu .dropdown-item::after { padding-top: 0px; padding-bottom: 0px; }
.main-navigation .texto-enlaces-rapidos .content-text p { font-weight: 500; text-transform: uppercase; margin-bottom: 15px; font-size: 18px; color: var(--header-li-color) !important; }
.reusable-block .menu .nav-item + .nav-item { margin-top: 0px; }
.reusable-block .nav-item { padding-top: 8px !important; padding-bottom: 8px !important; }
#menu-17 .nav-item { margin-bottom: 10px; text-transform: none !important; }
.reusable-block .nav-link { padding-top: 0px; padding-bottom: 0px; }
.reusable-block .nav-link::after { line-height: 0; }
header .nav-item.dropdown.show > .nav-link :not(p), header .nav-item.dropdown.show .dropdown-menu :not(p):hover, header .dropdown-menu :hover { color: var(--main-color-3); }
.list.Marcas-celea .item { margin-bottom: 30px; }
.list.Marcas-celea .item .single-post-slide-wrap { padding: 15px 20px; height: 100%; background-color: rgb(246, 246, 246); }
.list.Marcas-celea .item img { max-height: 100px; margin: 0px auto 15px; display: block; width: auto; padding: 10px 0px; box-sizing: content-box; mix-blend-mode: multiply; }
.list.Marcas-celea .item-especial .single-post-slide-wrap { background-color: var(--main-color-3); --content-heading-color: #fff; --content-h2-font-size: var(--content-h1-font-size); display: flex; align-items: center; justify-content: center; }
.list.Marcas-celea .item-especial .single-post-slide-wrap .title { margin-bottom: 0px; }
.list.Marcas-celea .item .item-marca .item-marca--image { margin-bottom: 30px; }
.item-marcas .list.Marcas-celea .item { margin-bottom: 15px; }
.item-marcas .list.Marcas-celea .item .single-post-slide-wrap { box-shadow: unset; background-color: unset; height: unset; padding: 0px !important; }
.item-marcas .list.Marcas-celea .item .item-marca .item-marca--text { display: none; }
.item-marcas .list.Marcas-celea .item img { margin-bottom: 0px; object-fit: contain; height: 100%; padding: 0px; }
.item-marcas .list.Marcas-celea .item .item-marca .item-marca--image { margin-bottom: 0px; }
.Marcas-celea .swiper { padding: 0px 10%; }
.Marcas-celea .swiper .swiper-slide { margin-bottom: 30px; height: auto; }
.Marcas-celea .swiper .swiper-slide > div { height: 100%; display: flex; justify-content: center; }
.Marcas-celea .swiper .swiper-slide .item-marca .item-marca--image { margin-bottom: clamp(15px, -18.861px + 3.417vw, 30px); }
.Marcas-celea .swiper .swiper-slide .item-marca .item-marca--image > div { padding: clamp(15px, -18.861px + 3.417vw, 30px); background-color: rgb(244, 244, 244); }
.Marcas-celea .swiper .swiper-slide .item-marca .item-marca--image img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain; mix-blend-mode: multiply; }
.user-data--title, .fast-menu--title { margin-bottom: 20px; }
#index .parallax .container { display: none; }
#index main > div { padding-top: 0px !important; }
@media (min-width: 992px) {
  .texto-inicial { max-width: 991px; min-width: 576px; display: block; margin-left: auto; margin-right: auto; }
}
.swiper-button-prev, .swiper-button-next { width: 44px; height: 44px; background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(8px); border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.9); box-shadow: rgba(0, 0, 0, 0.08) 0px 2px 8px; transition: 0.3s; }
.swiper-button-prev:hover, .swiper-button-next:hover { background: rgba(255, 255, 255, 0.95); box-shadow: rgba(0, 0, 0, 0.12) 0px 4px 16px; transform: scale(1.08); }
.swiper-button-prev::after, .swiper-button-next::after { font-size: 16px; font-weight: 700; color: rgb(68, 68, 68); }
.buscador-wrapper { position: relative; }
.buscador-group { position: relative; }
.buscador-group-inner { display: flex; align-items: center; position: relative; }
.search-input { flex: 1 1 0%; padding-right: 30px; }
.search-spinner { position: absolute; right: 45px; display: flex; align-items: center; justify-content: center; }
.search-spinner svg { animation: 1s linear 0s infinite normal none running spin; }
@keyframes spin { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.search-dropdown { position: absolute; top: 100%; left: unset; z-index: 1000; background: rgb(255, 255, 255); border-width: medium 1px 1px; border-style: none solid solid; border-color: currentcolor rgb(221, 221, 221) rgb(221, 221, 221); border-image: initial; border-radius: 0px 0px 8px 8px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; max-height: 400px; overflow-y: auto; opacity: 0; transform: translateY(-10px); transition: opacity 0.2s, transform 0.2s; width: 300px; right: 0px; }
.search-dropdown.is-open { opacity: 1; transform: translateY(0px); }
.search-dropdown-results { padding: 0px; }
.search-result-item { display: flex; align-items: center; gap: 12px; padding: 5px 15px; text-decoration: none; color: inherit; border-bottom: 1px solid rgb(240, 240, 240); transition: background-color 0.15s; }
.search-result-item:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }
.search-result-item:hover, .search-result-item.is-focused { background-color: rgb(245, 245, 245); }
.search-result-image { flex-shrink: 0; width: 40px; height: 40px; border-radius: 4px; overflow: hidden; background-color: rgb(255, 255, 255); }
.search-result-image img { width: auto; height: 100%; object-fit: cover; }
.search-result-content { flex: 1 1 0%; min-width: 0px; display: flex; flex-direction: column; gap: 2px; }
.search-result-title { font-weight: 500; font-size: 0.95rem; line-height: 1.3; color: rgb(51, 51, 51); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.search-result-type { font-size: 0.75rem; color: rgb(136, 136, 136); text-transform: capitalize; }
.search-dropdown-footer { border-top: 1px solid rgb(238, 238, 238); padding: 0px; position: sticky; bottom: 0px; background: rgb(238, 238, 238); width: 100%; }
.search-view-all { display: block; padding: 12px 15px; text-align: center; font-weight: 500; color: var(--main-color-3); text-decoration: none; transition: background-color 0.15s; font-size: 14px; }
.search-view-all:hover { background-color: rgb(245, 245, 245); }
.search-result-view-all { justify-content: center; background-color: rgb(250, 250, 250); }
.search-result-view-all .search-result-title { color: var(--main-color-3); }
.search-dropdown-empty, .search-dropdown-error { padding: 20px 15px; text-align: center; }
.search-dropdown-empty p, .search-dropdown-error p { margin: 0px; color: rgb(102, 102, 102); font-size: 0.9rem; }
.search-dropdown-error p { color: rgb(197, 48, 48); }
.search-results-box { padding: 20px 0px; --content-heading-color: #222222; }
.search-results-header { margin-bottom: 25px; }
.search-results-title { font-size: 1.25rem; margin: 0px 0px 5px; }
.search-results-count { font-size: 0.9rem; color: rgb(102, 102, 102); margin: 0px; }
.search-results-list { gap: 20px 0px; }
.search-results-list .item { margin-bottom: 20px; }
.search-results-list .item-inner { height: 100%; display: flex; flex-direction: column; border: 1px solid rgb(238, 238, 238); border-radius: 8px; overflow: hidden; transition: box-shadow 0.2s; }
.search-results-list .item-inner:hover { box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; }
.search-results-list .item-miniature { aspect-ratio: 1 / 1; overflow: hidden; background-color: rgb(245, 245, 245); }
.search-results-list .item-miniature img { width: 100%; height: 100%; object-fit: contain; transition: transform 0.3s; background-color: rgb(255, 255, 255); }
.search-results-list .item-inner:hover .item-miniature img { transform: scale(1.05); }
.search-results-list .item-details { flex: 1 1 0%; padding: 15px; display: flex; flex-direction: column; }
.search-results-list .item-title .title { margin-bottom: 15px; font-size: var(--content-p-font-size); font-weight: normal; }
.search-results-list .item-title a { text-decoration: none; color: inherit; }
.search-results-list .item-summary { flex: 1 1 0%; }
.search-results-list .item-summary p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px; }
.search-no-results { text-align: center; padding: 40px 20px; }
.search-no-results p { margin: 0px 0px 10px; color: rgb(102, 102, 102); }
.search-no-results .search-suggestions { font-size: 0.9rem; color: rgb(136, 136, 136); }
.swiper-tab-buttons { justify-content: center; flex-flow: row-reverse wrap; bottom: 0px; z-index: 4; width: calc(100% - 30px); display: grid; grid-template-columns: 1fr 300px 300px 300px 1fr; position: absolute; left: 15px; right: 15px; }
.swiper-tab-buttons .tab-btn { position: relative; padding: 25px 40px; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; background: transparent; border-radius: 0px; cursor: pointer; font-size: clamp(20px, 1.941px + 1.822vw, 28px); transition: 0.3s; font-weight: 200; text-transform: uppercase; width: auto; outline: none; display: flex; justify-content: center; color: rgb(35, 35, 33); font-family: var(--heading-font-family); min-height: 70px; align-items: center; letter-spacing: 0.4px; }
.swiper-tab-buttons .tab-btn:not(.active) { background-color: rgb(246, 246, 246); }
.swiper-tab-buttons .tab-btn[data-slider="Distribuidores"] { order: 4; text-align: center; }
.swiper-tab-buttons .tab-btn[data-slider="Novedades"] { order: 3; text-align: center; }
.swiper-tab-buttons .tab-btn[data-slider="Catálogo"] { order: 2; text-align: center; }
.swiper-tab-buttons .tab-btn[data-slider="Sectores"] { order: 1; text-align: right; justify-content: end; }
.swiper-tab-buttons .tab-btn[data-slider="Partners"] { order: 5; text-align: left; justify-content: start; }
.swiper-tab-buttons .tab-btn::before { content: ""; position: absolute; left: 0px; top: 50%; transform: translateY(-50%); width: 1px; height: 50%; background: rgb(35, 35, 33); }
.swiper-tab-buttons .tab-btn:first-child::before, .swiper-tab-buttons .tab-btn.active::before, .swiper-tab-buttons .tab-btn.active + .tab-btn::before { display: none; }
.breadcrumb-container { padding: 14px 0px; }
.breadcrumb-list { display: flex; flex-wrap: wrap; align-items: center; list-style: none; margin: 0px; padding: 0px; gap: 0px; }
.breadcrumb-item { display: flex; align-items: center; font-size: 14px; line-height: 1.4; color: rgb(136, 136, 136); }
.breadcrumb-item + .breadcrumb-item::before { content: "›"; display: inline-block; margin: 0px; font-size: 16px; color: rgb(187, 187, 187); font-weight: 300; }
.breadcrumb-item--link { color: rgb(102, 102, 102); text-decoration: none; transition: color 0.2s; }
.breadcrumb-item--link:hover { color: var(--main-color-3); text-decoration: underline; }
.breadcrumb-item:last-child .breadcrumb-item--link { color: rgb(51, 51, 51); font-weight: 500; pointer-events: none; }
.btn-toggle-password { --button-font-size: 14px; --button-border-radius: 0 var(--form-input-border-radius) var(--form-input-border-radius) 0; margin-top: var(--form-input-margin-top); height: var(--form-input-height); width: var(--form-input-height); aspect-ratio: 1 / 1; }
#frm_nuevo_usr { max-width: 700px; margin: 0px auto; --form-input-font-size: 14px; --form-input-placeholder-font-size: 14px; }
#frm_nuevo_usr small { margin-bottom: 15px; }
#frm_nuevo_usr .form-group { margin-bottom: 20px; font-size: 16px; }
#frm_nuevo_usr .form-group label { margin-bottom: 0px; }
#frm_nuevo_usr .form-last .form-checks { margin-bottom: 30px; }
#frm_nuevo_usr .form-last .form-checks .checkbox-inline { display: flex; align-items: center; justify-content: start; gap: 10px; font-size: 14px; margin-bottom: 10px !important; }
#frm_nuevo_usr .form-last .form-checks .checkbox-inline input { margin-top: 0px !important; }
#frm_nuevo_usr .form-last .form-send { max-width: unset; flex: unset; width: fit-content; }
.modal { --content-p-font-size: 16px; --title-margin-bottom: 15px; --content-heading-font-weight: normal; --button-font-size: 14px; }
.modal p { font-size: 16px; }
.modal .modal-body { padding: 16px; }
.modal .modal-footer { padding: 0px 16px 16px; }
#frm_nuevo_usr #password_web.is-valid { border-color: rgb(40, 167, 69); box-shadow: rgba(40, 167, 69, 0.15) 0px 0px 0px 0.2rem; }
#frm_nuevo_usr #password_web.is-invalid { border-color: rgb(220, 53, 69); }
.intranet { --title-margin-bottom: 20px; --form-input-margin-top: 10px; }
.intranet .form-group { margin-bottom: 20px; font-size: 16px; }
.intranet .form-group label { margin-bottom: 0px; }
#acceso_usuarios .modal-header { padding: 16px 32px; }
#acceso_usuarios .modal-body { padding: 32px; }
#footer_empty { display: none !important; }
@media only screen and (min-width: 991px) {
  body.Sectores.lev-1, body.header-overflow { --main-top-spacing: 0px; --header-bg-color: transparent; }
  body.Sectores.lev-1 .margin-principal, body.header-overflow .margin-principal { margin-top: 0px !important; }
  body.Sectores.lev-1 .navigation-wrap, body.header-overflow .navigation-wrap { border-bottom: 0px; }
  body.Sectores.lev-1 .navigation-wrap:not(.cbp-af-header-shrink), body.header-overflow .navigation-wrap:not(.cbp-af-header-shrink) { --header-menu-color: #ffffff; }
  body.Sectores.lev-1 .navigation-wrap:not(.cbp-af-header-shrink) .buscador-list-item .buscador-form .search-form .buscador-group input, body.header-overflow .navigation-wrap:not(.cbp-af-header-shrink) .buscador-list-item .buscador-form .search-form .buscador-group input { border-radius: 100px; border: 1px solid rgb(255, 255, 255); padding-left: 35px; margin-bottom: 0px; width: fit-content; max-width: 200px; color: rgb(255, 255, 255); height: 36px; background-color: transparent; margin-top: 0px !important; }
  body.Sectores.lev-1 .navigation-wrap:not(.cbp-af-header-shrink) .buscador-list-item .buscador-form .search-form .buscador-group input::placeholder, body.header-overflow .navigation-wrap:not(.cbp-af-header-shrink) .buscador-list-item .buscador-form .search-form .buscador-group input::placeholder { color: rgb(255, 255, 255); }
  body.Sectores.lev-1 .navigation-wrap:not(.cbp-af-header-shrink) .buscador-list-item .buscador-form .search-form .buscador-group .icon-input svg, body.header-overflow .navigation-wrap:not(.cbp-af-header-shrink) .buscador-list-item .buscador-form .search-form .buscador-group .icon-input svg { stroke: rgb(255, 255, 255); }
  body.Sectores.lev-1 .navigation-wrap:not(.cbp-af-header-shrink) .navbar-brand, body.header-overflow .navigation-wrap:not(.cbp-af-header-shrink) .navbar-brand { filter: brightness(0) invert(1); }
}
body.Sectores.lev-1 .input-contentext p { --content-p-font-size: 40px; --content-p-color: var(--main-color-3); }
body.Sectores.lev-1 .h1, body.Sectores.lev-1 h1 { --content-heading-color: #878786; --title-margin-bottom: 25px; --content-heading-line-height: 115%; font-size: 44px; }
.Sectores.fitxa header, .Sectores.fitxa footer { display: none !important; }
.imagen-semicirculo { display: block; width: 100%; overflow: hidden; mask-image: url("/media/images/masks/mascara_pagina_sector_2.svg"); mask-size: 100%; mask-repeat: no-repeat; mask-position: center bottom; }
.imagen-semicirculo img { display: block; width: 100%; }
#nosotros h3 { --content-heading-color: var(--main-color-7); }
#nosotros h4 { margin-bottom: 5px; }
.social-icons .intsocial { display: inline-block; }
.social-icons .sociallist { list-style: none; padding: 0px; margin: 0px; display: flex; gap: 6px; justify-content: center; flex-wrap: wrap; }
.social-icons .sociallist li a { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; color: rgb(255, 255, 255); font-size: 30px; text-decoration: none; transition: opacity 0.2s, transform 0.2s; }
.social-icons .sociallist li a:hover { opacity: 0.85; transform: translateY(-2px); }
.social-icons .sociallist li a[aria-label="Facebook"] { background-color: rgb(24, 119, 242); }
.social-icons .sociallist li a[aria-label="Twitter"] { background-color: rgb(0, 0, 0); }
.social-icons .sociallist li a[aria-label="Instagram"] { background: linear-gradient(45deg, rgb(240, 148, 51), rgb(230, 104, 60), rgb(220, 39, 67), rgb(204, 35, 102), rgb(188, 24, 136)); }
.social-icons .sociallist li a[aria-label="Whatsapp"] { background-color: rgb(37, 211, 102); }
.social-icons .sociallist li a[aria-label="LinkedIn"] { background-color: rgb(40, 103, 178); }
.social-icons .sociallist li a[aria-label="Youtube"] { background-color: rgb(255, 0, 0); }
.social-icons .sociallist li a[aria-label="Pinterest"] { background-color: rgb(230, 0, 35); }
.social-icons .sociallist li a[aria-label="TikTok"] { background-color: rgb(0, 0, 0); }
.social-icons .sociallist li a[aria-label="telegram"] { background-color: rgb(38, 165, 228); }
.social-icons .sociallist li a[aria-label="reddit"] { background-color: rgb(255, 69, 0); }
.social-icons .sociallist li a[aria-label="vimeo"] { background-color: rgb(26, 183, 234); }
.social-icons .sociallist li a[aria-label="messenger"] { background: linear-gradient(rgb(0, 178, 255), rgb(0, 106, 255)); }
.social-icons .sociallist li a[aria-label="Otro"] { background-color: rgb(85, 85, 85); }
.Distribuidores .list .item { padding: clamp(15px, -18.861px + 3.417vw, 30px); }
.Distribuidores .list .item .title { font-size: clamp(18px, 8.97px + 0.911vw, 22px); color: rgb(87, 87, 86); margin-bottom: clamp(15px, -7.574px + 2.278vw, 25px); text-transform: uppercase; }
#mapa-distribuidor-tooltip .single-post-slide-wrap .content-text, .Distribuidores .list .item .content-text { margin-bottom: 5px; --content-p-font-size: 16px; }
#mapa-distribuidor-tooltip .single-post-slide-wrap .distribuidor-telefono .content-text, .Distribuidores .list .item .distribuidor-telefono .content-text { display: flex; align-items: center; justify-content: start; }
#mapa-distribuidor-tooltip .single-post-slide-wrap .distribuidor-telefono .content-text p, .Distribuidores .list .item .distribuidor-telefono .content-text p { margin-bottom: 0px; }
@media (min-width: 992px) {
  .Distribuidores .list .item:nth-child(2n+1) { background-color: rgb(255, 255, 255); }
  .Distribuidores .list .item:nth-child(2n) { background-color: rgb(246, 246, 246); }
}
@media (max-width: 991px) {
  .Distribuidores .list .item:nth-child(4n+2), .Distribuidores .list .item:nth-child(4n+3) { background-color: rgb(246, 246, 246); }
  .Distribuidores .list .item:nth-child(4n+4), .Distribuidores .list .item:nth-child(4n+1) { background-color: rgb(255, 255, 255); }
}
#mapa-distribuidor-tooltip { position: absolute; right: calc(50% - 715px); bottom: 0px; display: none; width: 300px; }
#mapa-distribuidor-tooltip.is-open { display: block; }
#mapa-distribuidor-tooltip .single-post-slide-wrap { background-color: rgb(238, 238, 238); padding: 20px; }
#mapa-distribuidor-tooltip .single-post-slide-wrap .title { font-size: clamp(18px, 8.97px + 0.911vw, 22px); color: rgb(68, 68, 68); }
#mapa-distribuidor-tooltip .single-post-slide-wrap .content-text *, #mapa-distribuidor-tooltip .single-post-slide-wrap .content-text { font-size: 16px; }
.cls-1 { fill: rgb(246, 246, 246); }
.cls-2 { fill: rgb(177, 177, 177); }
.cls-3 { fill: rgb(196, 196, 196); }
.cls-4 { fill: rgb(213, 213, 213); }
.cls-5 { fill: rgb(225, 225, 225); }
.cls-6 { fill: none; stroke: rgb(0, 0, 0); stroke-miterlimit: 10; stroke-width: 0.28px; }
.sliderbanner { display: block; }
.sliderbanner .banner-content { width: 100%; height: 100%; padding: clamp(15px, -18.861px + 3.417vw, 30px) clamp(50px, -62.87px + 11.39vw, 100px); display: flex; align-items: center; }
.sliderbanner .banner-content :is(h1, h2, h3, h4, p, span, div):not(.btn) { text-transform: uppercase; font-size: clamp(30px, -15.148px + 4.556vw, 50px); font-weight: bold; }
.sliderbanner .banner-content:has(.content-text) .title { margin-bottom: 0px; }
.sliderbanner .banner-content:not(:has(.content-text)) .title { margin-bottom: 0px; }
.sliderbanner .banner-content .content-text * { color: var(--text-color); }
.sliderbanner .banner-content a { text-decoration: none; }
.sliderbanner .banner-content:has(.btn) .content-text { margin-bottom: 15px; }
.sliderbanner .banner-image--wrap { height: auto; }
.sliderbanner .banner-image--wrap :not(source) { display: block; object-fit: cover; height: 100% !important; }
.sliderbanner img { border-radius: 0px; }
.sliderbanner-home .banner-content-details { display: flex; flex-direction: column; justify-content: space-around; gap: 30px; }
.sliderbanner-home .banner-content :not(.btn) { font-size: var(--content-h1-font-size); }
.content-wrapper.Sliders-home .sliderbanner .banner-content { height: calc(100% - 70px); }
.banners-quienes-somos .sliderbanner .banner-content, .banners-footer-home .sliderbanner .banner-content { padding: clamp(15px, -18.861px + 3.417vw, 30px) clamp(50px, -130.592px + 18.223vw, 130px); }
@media (min-width: 992px) {
  .left > .sliderbanner > .row { flex-direction: row-reverse; }
  .left > .sliderbanner > .row > div:nth-child(1) { padding-left: 0px; padding-right: 15px; }
  .left > .sliderbanner > .row > div:nth-child(2) { padding-left: 15px; padding-right: 0px; }
}
.nav-item.dropdown { position: unset; }
.dropdown-menu:has(.reusable-block) { width: 100%; max-width: 100%; background: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.12) 0px 10px 10px 0px; left: 0px; right: 0px; top: 90px; margin-top: 0px !important; border-radius: 0px !important; position: fixed !important; }
.cbp-af-header-shrink .dropdown-menu:has(.reusable-block) { top: 70px; }
.dropdown-menu:has(.reusable-block) .fullwidth { padding-top: 10px; padding-bottom: 20px; padding-left: 60px !important; padding-right: 60px !important; }
.dropdown-menu:has(.reusable-block) a:not(:hover) { text-decoration: none; }
.dropdown-menu:has(.reusable-block) .container:empty, .dropdown-menu:has(.reusable-block) .fullwidth:empty, .dropdown-menu:has(.reusable-block) .row:empty, .dropdown-menu:has(.reusable-block) [class*="col-"]:empty { display: block; }
.dropdown-menu:has(.reusable-block) .menu { margin-top: 0px; margin-bottom: 0px; }
.dropdown-menu:has(.reusable-block) .reusable-block { position: relative; }
.dropdown-menu:has(.reusable-block) .menu { position: relative; min-height: 0px; transition: height 0.25s, max-height 0.25s, min-height 0.25s; }
.dropdown-menu:has(.reusable-block) { transition: height 0.25s, min-height 0.25s; }
.dropdown-productos .dropdown-menu:has(.reusable-block) .menu > ul.nav-list { width: 33.3333%; margin: 0px; padding: 0px; list-style: none; display: block; }
.dropdown-menu:has(.reusable-block) .menu > ul.nav-list > li.nav-item { position: static; }
.dropdown-menu:has(.reusable-block) .menu .dropdown-menu { position: absolute !important; top: 0px !important; left: 33.3333% !important; width: 33.3333% !important; max-width: 33.3333% !important; margin: 0px !important; padding: 0px !important; border-width: medium !important; border-style: none !important; border-color: currentcolor !important; border-image: initial !important; border-radius: 0px !important; box-shadow: none !important; background: transparent !important; transform: none !important; min-width: 0px !important; }
.dropdown-menu:has(.reusable-block) .menu .nav-item.item-marcas .dropdown-menu { position: absolute !important; left: 25% !important; width: 66.6666% !important; max-width: 66.6666% !important; }
.dropdown-menu:has(.reusable-block) .menu .nav-item.dropdown > .dropdown-menu { visibility: hidden; opacity: 0; pointer-events: none; transition: opacity 150ms linear; max-height: 0px !important; }
.dropdown-menu:has(.reusable-block) .menu .nav-item.dropdown.show > .dropdown-menu { visibility: visible; opacity: 1; pointer-events: auto; max-height: none !important; height: 100%;}
.dropdown-menu:has(.reusable-block) .menu .dropdown-menu .dropdown-menu { left: 100% !important; width: 100% !important; max-width: 100% !important; top: 0px !important; }
.dropdown-menu:has(.reusable-block) .menu .dropdown-menu ul.sub { margin: 0px; padding: 0px; list-style: none; }
.dropdown-menu:has(.reusable-block) .menu .dropdown-menu ul.sub > li { list-style: none; }
.dropdown-menu:has(.reusable-block) .menu .nav-item.show .dropdown-menu, .dropdown-menu:has(.reusable-block) .menu .nav-item .dropdown-menu { margin-top: 0px !important; }
@media (min-width: 992px) {
  .main-navigation .nav-item.dropdown:hover > .dropdown-menu, .main-navigation .nav-item.dropdown:focus-within > .dropdown-menu { display: block; visibility: visible; opacity: 1; pointer-events: auto; }
  .main-navigation .nav-item.dropdown > .dropdown-menu::before { content: ""; position: absolute; left: 0px; right: 0px; top: -20px; height: 20px; background: transparent; pointer-events: auto; z-index: -1; }
  .main-navigation .dropdown-menu .nav-item.dropdown:hover > .dropdown-menu { display: block; visibility: visible; opacity: 1; pointer-events: auto; }
  .main-navigation .dropdown-menu .nav-item.dropdown .dropdown-menu .nav-item { padding: 5px !important; }
}
.nav-item:not(.dropdown) > .menu-link .toggler, .nav-item:not(.dropdown) .toggler-inside { display: none !important; }
.nav-item.dropdown a::after { content: ""; margin-left: 0px; }
.nav-item.dropdown > a::after { content: ""; font-family: FontAwesome; margin-left: 15px; }
.reusable-block .toggler, .reusable-block .toggler-inside, .reusable-block .nav-item.dropdown > a::after, .reusable-block .nav-item.dropdown a::after { display: none !important; content: none !important; }
.reusable-block * { transition: none !important; }
.reusable-block .nav-item > .nav-link:hover, .reusable-block .nav-item.show > .nav-link, .reusable-block .nav-item > .nav-link.active { color: rgb(115, 183, 197) !important; font-weight: bold !important; }
.reusable-block .menu-item .dropdown-menu, .reusable-block .nav-item.dropdown > .dropdown-menu { display: none !important; }
.reusable-block .nav-item.dropdown.show > .dropdown-menu, .reusable-block .nav-item.dropdown:hover > .dropdown-menu { display: block !important; }
@media (min-width: 992px) {
  .main-navigation .nav-item.dropdown > .dropdown-menu:has(.reusable-block) { display: none !important; }
  .main-navigation .nav-item.dropdown:hover > .dropdown-menu:has(.reusable-block), .main-navigation .nav-item.dropdown:focus-within > .dropdown-menu:has(.reusable-block) { box-sizing: content-box; padding-top: 30px; box-shadow: rgba(0, 0, 0, 0.2) 0px 15px 15px 0px inset; display: block !important; }
}
.dropdown-menu:has(.reusable-block) .menu .dropdown-menu, .dropdown-menu:has(.reusable-block) .menu .dropdown-menu .dropdown-menu { height: auto; min-height: 0px; }
@media (min-width: 992px) {
  .main-navigation .nav-item.dropdown > .dropdown-menu:has(.reusable-block)::before { content: ""; position: absolute; left: 0px; right: 0px; top: -35px; height: 35px; background: transparent; pointer-events: auto; z-index: 1; }
}
.dropdown-menu:has(.reusable-block) .menu .dropdown-menu .dropdown-menu ul, .dropdown-menu:has(.reusable-block) .menu .dropdown-menu .dropdown-menu ul.sub { list-style: outside disc !important; padding-left: 25px !important; margin-left: 0px !important; }
.dropdown-menu:has(.reusable-block) .menu .dropdown-menu .dropdown-menu ul > li, .dropdown-menu:has(.reusable-block) .menu .dropdown-menu .dropdown-menu ul.sub > li { list-style: outside disc !important; display: list-item !important; }
.navbar-nav > .nav-item.dropdown > a { position: relative; }
.navbar-nav > .nav-item.dropdown > a::before { display: none !important; content: none !important; }
.navbar-nav > .nav-item.dropdown > a::after { display: inline-block; width: 56px; height: 36px; background-color: currentcolor; mask: url("/media/images/iconos/chevron-down.svg") center center / contain no-repeat; opacity: 0; position: absolute; left: 0px; right: 0px; bottom: -34px; margin-inline: auto; margin-left: auto; transition: opacity 200ms linear; content: "" !important; font-family: inherit !important; }
.navbar-nav > .nav-item.dropdown:hover > a::after, .navbar-nav > .nav-item.dropdown.active > a::after { opacity: 1; background-color: var(--header-menu-color-hover); }
.navigation-wrap .nav-link.active { color: rgb(63, 187, 202) !important; }
.navigation-wrap .nav-item.dropdown.active > a { color: rgb(63, 187, 202) !important; }
.individualbanner3 .portfolio-thumb { display: block; border: 2.8px solid rgb(238, 238, 238); margin-bottom: 20px; }
.individualbanner3 .banner-content { padding: 5px; }
.individualbanner3 .banner-content .title { font-size: 20px; color: rgb(88, 88, 87); text-transform: unset; margin-bottom: 15px; }
.individualbanner3 .banner-content .title > a { color: rgb(88, 88, 87); text-decoration: none; }
.individualbanner3 .banner-content .content-text { --content-p-font-size: 14px; }
.bloque-contacto .title { font-size: var(--content-h1-font-size); }
.bloque-contacto { padding-left: 0px; padding-right: 0px; }
.bloque-contacto > .row { margin-left: 15px; margin-right: 15px; background-color: rgb(246, 246, 246); padding-top: 30px; padding-bottom: 30px; }
.contact-form-wrapper .form-send { margin-top: 20px; text-align: center; margin-left: auto; margin-right: auto; }
.contact-form-wrapper .checkbox-inline { padding-left: 20px; font-size: 16px; }
.bloque-centrado-contacto .title { padding-left: 0px; padding-right: 0px; background-color: var(--main-color-3); display: flex; align-items: center; justify-content: center; --content-heading-color: #fff; height: 100%; margin-bottom: 0px; font-size: var(--content-h1-font-size); min-height: 100px; }
.contact-form-wrapper .form-group label { margin-bottom: 0px; }
.contact-form-wrapper .col-12:not(.form-group) { padding-left: 7.5px; padding-right: 7.5px; }
.contact-form-wrapper .row { margin-left: -7.5px; margin-right: -7.5px; }
.mapa-contacto { min-height: 250px; }
.imagetext-direccion { background: rgb(242, 242, 242); padding: 20px 30px; }
.imagetext-direccion .direccion-logo { margin-bottom: 28px; text-align: center; }
.imagetext-direccion .direccion-logo img { max-width: 200px; height: auto; display: inline-block; }
.imagetext-direccion .direccion-text { --content-p-font-size: 16px; --content-p-color: #1d1d1b; }
.imagetext-direccion .direccion-text p { margin: 4px 0px; }
.imagetext-direccion .direccion-text p.tel { font-size: 20px; }
.imagetext-direccion .direccion-text p.mail { font-size: 18px; }
.list.Certificados-celea .item { margin-bottom: 30px; }
.list.Certificados-celea .row { margin-left: -7.5px; margin-right: -7.5px; }
.list.Certificados-celea .item { padding-left: 7.5px; padding-right: 7.5px; margin-bottom: 15px; }
.list.Certificados-celea .item .single-post-slide-wrap { padding: 15px clamp(5px, -28.861px + 3.417vw, 20px); height: 100%; background-color: rgb(246, 246, 246); }
.list.Certificados-celea .item img { max-height: 100px; margin: 0px auto 15px; display: block; width: auto; padding: 10px 0px; box-sizing: content-box; mix-blend-mode: multiply; }
.list.Certificados-celea .item .item-certificado .item-certificado--image { margin-bottom: 30px; }
.galeria-certificados .gallery .blog-content-area-wrap { width: 100%; }
.galeria-certificados .gallery .row { margin-left: -7.5px; margin-right: -7.5px; }
.galeria-certificados .gallery .item { padding-left: 7.5px; padding-right: 7.5px; margin-bottom: 15px; }
.galeria-certificados .gallery .item .single-post-slide-wrap { padding: 15px 20px; height: 100%; background-color: rgb(246, 246, 246); aspect-ratio: 4 / 3; display: flex; align-items: center; justify-content: center; }
.galeria-certificados .gallery .item img { display: block; width: auto; margin-left: auto; margin-right: auto; mix-blend-mode: multiply; height: 150px; }
.item-list.Noticias .item { margin-bottom: clamp(30px, -37.722px + 6.834vw, 60px); --content-heading-color: #575756; --content-h3-font-size: clamp(20px, 18.270px + 0.541vw, 26px); --content-p-font-size: 16px; }
.item-list.Noticias .item .item-miniature { margin-bottom: 30px; }
.item-list.Noticias .item .item-details .item-title-link { text-decoration: none; }
.item-list.Noticias .item .item-details .item-summary { margin-bottom: 30px; }
.item-list.Noticias .item > div { height: 100%; display: flex; flex-direction: column; }
.item-list.Noticias .item .item-details { flex: 1 1 0%; display: flex; flex-direction: column; }
.item-list.Noticias .item .item-details .item-content { flex: 1 1 0%; display: flex; flex-direction: column; }
.item-list.Noticias .item .item-details .item-btn { margin-top: auto; }
.titulo-noticias .title { background-color: var(--main-color-3); --content-heading-color: #fff; --title-margin-bottom: 0; padding: 5px 15px; --content-h1-font-size: var(--content-h3-font-size); text-transform: uppercase; font-weight: 200; text-decoration: none; }
.Noticias.fitxa { --content-h1-font-size: clamp(30px, 6.798px + 3.021vw, 50px); }
.Noticias.fitxa main .container { max-width: 1200px; }
.Noticias.fitxa main .imagen-principal { max-width: 991px; margin-left: auto; margin-right: auto; }
.Noticias.fitxa .content-text { }
.Noticias.fitxa .gallery .item img { aspect-ratio: 1 / 1; object-fit: cover; }
.share-page .share-page-inner { display: flex; justify-content: space-between; align-items: center; padding: 0px 15px; width: 100%; }
.share-page .share-date { font-weight: 700; }
.share-page .share-icons { display: flex; gap: 8px; align-items: center; }
.share-page .share-circle { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; border: 2px solid; color: var(--main-color-3); text-decoration: none; transition: opacity 0.2s; }
.share-page .share-circle:hover { opacity: 0.7; }
.share-page .share-circle i { font-size: 13px; }
.share-page { margin-bottom: 45px; padding-bottom: 30px; border-bottom: 2px solid rgb(87, 87, 86); margin-top: 15px; }
@media (min-width: 992px) {
  .contenedor-banners { padding-left: 30px; padding-right: 30px; }
}
body:not(#partners, #partner-pag) .banner.individualbanner4 { overflow: hidden; --button-bg-color: #ffffff; --button-bg-color-hover: #000000; --footer-button-bg-color: #ffffff; --footer-button-bg-color-hover: #000000; --header-button-bg-color: #ffffff; --header-button-bg-color-hover: #000000; --button-color: var(--main-color-3); --button-color-hover: #fff; --footer-button-color: var(--main-color-3); --footer-button-color-hover: #fff; --header-button-color: var(--main-color-3); --header-button-color-hover: #fff; }
body:not(#partner-pag) .banner.individualbanner4 .banner-image { line-height: 0; }
body:not(#partner-pag) .banner.individualbanner4 .banner-image picture, .banner.individualbanner4 .banner-image img { display: block; width: 100%; height: auto; object-fit: cover; }
body:not(#partner-pag) .banner.individualbanner4 .banner-content { padding: clamp(15px, -18.861px + 3.417vw, 30px); min-height: 80px; }
body:not(#partner-pag) .banner.individualbanner4 .banner-content .title { text-transform: uppercase; }
body:not(#partner-pag) .banner.individualbanner4 .banner-content:not(:has(.btn)) .title { margin-bottom: 0px; }
body:not(#partner-pag) .banner.individualbanner4 .banner-content-details { padding: 0px; background: none; }
body:not(#partner-pag) .banner.individualbanner5 { overflow: hidden; display: flex; flex-direction: column; height: 100%; }
body:not(#partner-pag) .banner.individualbanner5 > .row { height: 100%; flex-direction: column; }
body:not(#partner-pag) .banner.individualbanner5 .banner-image--wrapper { flex: unset; }
body:not(#partner-pag) .banner.individualbanner5 .banner-content--wrapper { flex: 1 1 0%; }
body:not(#partner-pag) .banner.individualbanner5 .banner-image { line-height: 0; flex: unset; }
body:not(#partner-pag) .banner.individualbanner5 .banner-image picture, 
body:not(#partner-pag) .banner.individualbanner5 .banner-image img { display: block; width: 100%; height: auto; object-fit: cover; }
body:not(#partner-pag) .banner.individualbanner5 .banner-content { padding: clamp(15px, -18.861px + 3.417vw, 30px); --content-h3-font-size: clamp(18px, 4.456px + 1.367vw, 24px); height: 100%; }
body:not(#partner-pag) .banner.individualbanner5 .banner-content-details { padding: 0px; background: none; }
.contenedor-banners-2 .banner.individualbanner4 { height: 100%; background-color: var(--bg-color); --content-h3-font-size: var(--content-h2-font-size); }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details { display: flex; flex-direction: column; flex: 1 1 0%; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details .item-content { display: flex; flex-direction: column; flex: 1 1 0%; }
.item-list.Sectores_cat_1:not(.special-item-list) .item .item-details .item-title-link.btn { margin-top: auto; }
.special-item-list.Sectores_cat_1 .item .item-content { display: flex; flex-direction: column; flex: 1 1 0%; }
.special-item-list.Sectores_cat_1 .item:not(.item-especial) .item-title-link.btn { margin-top: auto; }
.user-item .area-privada-label { font-size: 13px; font-weight: 500; margin-left: 6px; white-space: nowrap; }
.user-icon-wrap { position: relative; display: inline-flex; align-items: center; }
.share-copy { background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: initial; cursor: pointer; padding: 0px; }
.special-item-list.Sectores_cat_1 .item { height: 100%; }
.special-item-list.Sectores_cat_1:not(.swiper) .item { height: auto; }
.special-item-list.Sectores_cat_1 .item .single-post-slide-wrap { display: flex; flex-direction: column; height: 100%; }
.special-item-list.Sectores_cat_1 .item .item-details { flex: 1 1 0%; display: flex; flex-direction: column; }
.special-item-list.Sectores_cat_1 .item .item-content { display: flex; flex-direction: column; flex: 1 1 0%; }
.special-item-list.Sectores_cat_1 .item .item-title-link.btn { margin-top: auto; }

/* #sectorespage: los .individualbanner5 deben verse igual que las tarjetas .item
   del listado automatico de categorias (.special-item-list.Sectores_cat_1 .item),
   incluido el diseno interior del div. Se replican aqui las mismas declaraciones
   porque cada uno usa una estructura HTML distinta (banner-image/banner-content
   en individualbanner5, frente a item-miniature/item-details en .item) y no se
   pueden encadenar los mismos selectores.
   El color de fondo usado es el mismo que .item:nth-child(3n+1) (el primero de
   los tres tonos turquesa que alternan en el listado); cambialo aqui si en el
   futuro se prefiere otro de los tres.

   Dos !important necesarios, verificados con el inspector (no son gratuitos):
   - .banner-content-details: la regla base "body:not(#partner-pag) .banner
     .individualbanner5 .banner-content-details" (mas arriba, linea ~669) gana en
     especificidad porque el :not(#partner-pag) cuenta como un ID; el propio
     .item usa el mismo !important en su regla equivalente por el mismo motivo.
   - .title: el h3 se renderiza con style="color: var(--title-color)" inline
     (campo ColourTitle del banner, vacio si no se rellena) y un estilo inline
     gana siempre a cualquier regla externa que no lleve !important.

   Las variables --button-* van invertidas a proposito: el boton "Mas
   informacion" ya lleva la clase .btn-invert (viene del propio banner), y ese
   variante del tema usa las variables *-hover como estado por defecto y las
   normales como estado :hover (ver .btn-invert.btn en system.css). Poniendolas
   asi el aspecto en reposo coincide con el boton de .item sin tener que pelear
   contra ese comportamiento con mas !important. */
/* El margin-bottom puesto directamente en .individualbanner5 no crea espacio
   real entre filas cuando hay varios banners clonados en rejilla: el propio
   banner tiene height:100% (regla base de mas arriba) y queda estirado por el
   align-items:stretch del .row de Bootstrap, asi que su margen se absorbe y no
   empuja la fila siguiente (comprobado en el inspector). Hay que ponerlo en la
   columna .col-lg-4 que envuelve cada banner, que es el verdadero elemento
   flex de esa fila. Esa columna tampoco tiene clase propia para poder
   engancharla directamente, así que se selecciona con :has() (soportado en
   Chrome/Edge/Safari actuales). De paso se reduce su padding lateral de 15px a
   7.5px por lado para que el hueco entre banners de una misma fila sea el
   mismo que entre las tarjetas .item (7.5px + 7.5px = 15px en vez de 30px). */
/* El gutter de la columna (7.5px+7.5px, igual que el de .item) se aplica SIEMPRE,
   tambien cuando la columna lleva un .individualbanner5b: son columnas hermanas
   dentro de la MISMA fila que las tarjetas de sector (p.ej. col-lg-4 + col-lg-8
   completando los 12), y si solo una de las dos tiene el gutter reducido, el
   hueco entre ambas y su alineacion vertical con la fila dejan de coincidir.
   Lo que SI debe quedar fuera de .individualbanner5b es el diseño de tarjeta
   de sector en si (fondo, texto, boton...), y eso ya lo hace el
   :not(.individualbanner5b) de las reglas de mas abajo, sobre el propio
   .individualbanner5 — no hace falta repetirlo aqui, en el contenedor. */
#sectorespage div:has(> .individualbanner5) { padding-left: 7.5px !important; padding-right: 7.5px !important; margin-bottom: 15px !important; }
#sectorespage .individualbanner5:not(.individualbanner5b) a { text-decoration: none; }
#sectorespage .individualbanner5:not(.individualbanner5b) .banner-image--wrapper,
#sectorespage .individualbanner5:not(.individualbanner5b) .banner-image { margin-bottom: 0px; }
#sectorespage .individualbanner5:not(.individualbanner5b) .banner-image img,
#sectorespage .individualbanner5:not(.individualbanner5b) .banner-image picture { aspect-ratio: 1 / 1; overflow: hidden; }
#sectorespage .individualbanner5:not(.individualbanner5b) .banner-content { background-color: rgb(62, 183, 197); --content-p-color: #000; --content-h3-font-size: clamp(20px, 6.456px + 1.367vw, 26px); }
#sectorespage .individualbanner5:not(.individualbanner5b) .banner-content-details { padding: 30px !important; display: flex; flex-direction: column; flex: 1 1 0%; }
#sectorespage .individualbanner5:not(.individualbanner5b) .title,
#sectorespage .individualbanner5:not(.individualbanner5b) .content-text { margin-bottom: 10px; }
#sectorespage .individualbanner5:not(.individualbanner5b) .title { padding-top: 0px; padding-bottom: 0px; color: rgb(255, 255, 255) !important; }
#sectorespage .individualbanner5:not(.individualbanner5b) { --button-color-hover: var(--main-color-3); --button-color: #ffffff; --button-bg-color-hover: #ffffff; --button-bg-color: var(--main-color-7); }
#sectorespage .individualbanner5:not(.individualbanner5b) .btn { margin-top: auto; }
@media (max-width: 991px) {
  #sectorespage .individualbanner5:not(.individualbanner5b) .banner-content-details { padding: 15px !important; }
}

/* .individualbanner5b: plantilla alternativa (individualbanner5b.html), calcada
   del diseño original que sustituye ("Herramientas de gestión para nuestros
   sectores" / "Planes de higiene"): imagen a todo lo ancho arriba, y debajo
   una franja de color a todo lo ancho con dos columnas dentro (titulo a la
   izquierda, texto+boton a la derecha). Reusable en cualquier pagina, sin
   scoping a #sectorespage.
   La direccion en columna (imagen arriba, franja debajo) YA es el
   comportamiento por defecto de "body:not(#partner-pag) .banner
   .individualbanner5 > .row" (mas arriba, linea 662), asi que aqui no hace
   falta pelear ese flex-direction como en el intento anterior — solo hacen
   falta reglas nuevas (aspect-ratio de la imagen, la franja de color con sus
   dos columnas), sin declarar de nuevo las propiedades que la base ya deja
   bien. El !important de abajo es el unico necesario: cambia el valor del
   padding que pone esa misma regla base en .banner-content. */
.individualbanner5b .banner-image--wrapper { flex: unset; }
.individualbanner5b .banner-image picture,
.individualbanner5b .banner-image img { aspect-ratio: 21 / 9; }
.individualbanner5b .banner-content { background-color: var(--background4-bg-color); padding: 0 !important; height: auto; }
.individualbanner5b .banner-content > .row { display: flex; flex-wrap: wrap; align-items: center; margin: 0; min-height: 100%; }
/* !important en el padding: la regla base "body:not(#partner-pag) .banner
   .individualbanner5 .banner-content-details { padding:0px; ... }" (linea 669)
   reutiliza el mismo nombre de clase (.banner-content-details) que la columna
   de texto de aqui, y gana por el mismo truco de especificidad del
   :not(#partner-pag) — sin !important esta columna se queda a padding:0,
   con el texto pegado al borde. */
.individualbanner5b .banner-content-title-col,
.individualbanner5b .banner-content-details { padding: clamp(24px, 12px + 2.5vw, 48px) !important; }
.individualbanner5b .title { margin-bottom: 0; font-size: clamp(22px, 16px + 1.6vw, 32px); }
.individualbanner5b .content-text { font-size: clamp(15px, 14px + 0.3vw, 16px); line-height: 1.5; }
/* El campo Texto puede llevar dentro cualquier etiqueta normal de texto
   enriquecido (h1-h6, p, li, a, span...), como el <h3>+<p> del bloque
   original. Todas ellas tienen su propia regla de color en el tema
   (h1..h6 y .p/main p van directas al color por defecto del sitio, no por
   herencia), asi que el color que se pone en el contenedor (.content-text)
   no les llega solo. En este banner en concreto eso dejaba el parrafo en
   negro sobre el fondo oscuro, casi ilegible. Forzando inherit se iguala
   siempre al color puesto en el bloque, sea cual sea el fondo. */
.individualbanner5b .content-text :is(h1, h2, h3, h4, h5, h6, p, li, span, a, strong, em) { color: inherit; }
.individualbanner5b .content-text :is(h1, h2, h3, h4, h5, h6) { margin-bottom: 8px; }
.individualbanner5b .content-text p { margin-bottom: 10px; }
.individualbanner5b .content-text > :first-child { margin-top: 0; }
.individualbanner5b .content-text > :last-child { margin-bottom: 0; }
.individualbanner5b .btn { margin-top: 15px; }
@media (max-width: 991px) {
  .individualbanner5b .banner-image picture,
  .individualbanner5b .banner-image img { aspect-ratio: 16 / 9; }
  .individualbanner5b .banner-content-title-col,
  .individualbanner5b .banner-content-details { padding: 24px; }
}
@media (max-width: 768px) {
  .breadcrumb-item + .breadcrumb-item { max-width: 200px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-block; }
}
@media (max-width: 768px) {
  .breadcrumb-item:nth-child(2), .breadcrumb-item:nth-child(3) { display: none; }
}
.intranet, .process-page, #acceso_usuarios { --form-input-bg: #f6f6f6; }
.swiper:not(.swiper-initialized) { overflow: hidden; }
.swiper:not(.swiper-initialized) .swiper-wrapper { display: flex; gap: var(--swiper-gap, 0px); }
.swiper:not(.swiper-initialized) .swiper-slide { flex-shrink: 0; width: calc((100% - (var(--swiper-col, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col, 1)); }
@media (min-width: 576px) {
  .swiper:not(.swiper-initialized) .swiper-slide { width: calc((100% - (var(--swiper-col-sm, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col-sm, 1)); }
}
@media (min-width: 991px) {
  .swiper:not(.swiper-initialized) .swiper-slide { width: calc((100% - (var(--swiper-col-md, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col-md, 1)); }
}
@media (min-width: 1199px) {
  .swiper:not(.swiper-initialized) .swiper-slide { width: calc((100% - (var(--swiper-col-lg, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col-lg, 1)); }
}
.swiper:not(.swiper-initialized) { overflow: hidden; }
.swiper:not(.swiper-initialized) .swiper-wrapper { display: flex; gap: var(--swiper-gap, 0px); }
.swiper:not(.swiper-initialized) .swiper-slide { flex-shrink: 0; width: calc((100% - (var(--swiper-col, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col, 1)); }
@media (min-width: 576px) {
  .swiper:not(.swiper-initialized) .swiper-slide { width: calc((100% - (var(--swiper-col-sm, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col-sm, 1)); }
}
@media (min-width: 991px) {
  .swiper:not(.swiper-initialized) .swiper-slide { width: calc((100% - (var(--swiper-col-md, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col-md, 1)); }
}
@media (min-width: 1199px) {
  .swiper:not(.swiper-initialized) .swiper-slide { width: calc((100% - (var(--swiper-col-lg, 1) - 1) * var(--swiper-gap, 0px)) / var(--swiper-col-lg, 1)); }
}
.form-check.cat-filter-parent[id-cat="839"] label, .form-check.cat-filter-parent[id-cat="880"] label, .form-check.cat-filter-parent[id-cat="839"] .cat-filter-toggle, .form-check.cat-filter-parent[id-cat="880"] .cat-filter-toggle { font-weight: bold; }
.form-check.cat-filter-parent[id-cat="839"] input, .form-check.cat-filter-parent[id-cat="880"] input { display: none; }
.fullwidth { max-width: 1430px !important; }
.filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="839"], .filter-box .filter .cat-fields .cat-field-content .form-check[id-cat="880"] { padding-top: 15px; border-top: 1px solid rgb(187, 187, 187); margin-top: 15px; padding-left: 0px !important; }
.cat-fields .cat-field-content .form-check[id-cat="839"] label, .cat-fields .cat-field-content .form-check[id-cat="880"] label { text-transform: uppercase; }
.results-count { margin-top: -25px; }
.area-privada-label { color: rgb(102, 102, 102); }
.user-icon-wrap { color: rgb(102, 102, 102); }
.not.user-logged { background-color: rgb(187, 187, 187); }
.buscador-list-item .buscador-form .search-form .buscador-group input { border: 1px solid rgb(102, 102, 102); }
header .navbar-nav > .nav-item > .nav-link { color: var(--header-menu-color); font-size: var(--header-menu-font-size); font-family: var(--menu-font-family); font-weight: 600; }
.filter-pills { display: flex; flex-wrap: wrap; gap: 6px; margin: 0px 0px 12px; padding: 0px; }
.filter-pills:empty { display: none; }
.filter-pill { display: inline-flex; align-items: center; gap: 6px; background: var(--main-color-3, #17a2b8); color: rgb(255, 255, 255); padding: 4px 8px 4px 10px; border-radius: 999px; font-size: 12px; line-height: 1.4; }
.filter-pill-label { white-space: nowrap; }
.filter-pill-close { background: rgba(255, 255, 255, 0.25); border: 0px; color: inherit; width: 18px; height: 18px; border-radius: 50%; padding: 0px; line-height: 1; cursor: pointer; font-weight: bold; font-size: 14px; display: inline-flex; align-items: center; justify-content: center; }
.filter-pill-close:hover { background: rgba(255, 255, 255, 0.5); }
.item-list.Productos_cat_1 .item .item-details .item-title { margin-bottom: 15px; font-size: clamp(16px, 18.27px + 0.541vw, 22px); }

/* Partners visible per a tothom.
   Fins al 9/09/2026 aquest bloc amagava la pestanya i la diapositiva de
   Partners del slider de la home, i qualsevol element amb .onlylogged, a tot
   qui no fos administrador identificat (body.loogedback). Era provisional
   mentre es preparava la seccio. El client ha demanat que es vegi publicament.
   Tambe s'han tret les dues regles que reduien la graella de pestanyes a dues
   columnes, que hi eren nomes perque Partners no es veia: la regla general
   (.swiper-tab-buttons) ja preveu les tres columnes. */

/* LANDING PARTNERS */
#partner-pag .banner.individualbanner4 .title, #partners .banner.individualbanner4 .title{text-transform: none; margin-bottom: 15px; font-size: var(--content-h4-font-size); min-height: 40px;}
#partner-pag .banner.individualbanner4 .content-text, #partners .banner.individualbanner4 .content-text{margin-bottom: 30px; --content-p-font-size: 16px;}
#partner-pag .banner.individualbanner4 .portfolio-thumb{margin-bottom: 30px;}
#partner-pag .banner.individualbanner4 .portfolio-thumb img{aspect-ratio: 3/2; object-fit: contain; object-position: center;}

/* ARBEX Y LUCART */

#partner-pag .btn-invert.btn:not(.no-style-btn *):not(.no-style-btn) { background: var(--button-bg-color); color: var(--button-color); font-size: var(--button-font-size); border-radius: var(--button-border-radius); border: var(--button-border-size) var(--button-border-type) var(--button-border-color); padding-top: var(--button-padding-top); padding-bottom: var(--button-padding-bottom); padding-left: var(--button-padding-left); padding-right: var(--button-padding-right); }
#partner-pag .btn-invert.btn:not(.no-style-btn *):not(.no-style-btn):hover { background: var(--button-bg-color-hover); color: var(--button-color-hover); border-color: var(--button-border-color-hover); }

#partner-pag .banner.individualbanner5:not(.banner5catalogo) .portfolio-thumb{ background-color: #efefef; padding: 15px; margin-bottom: 30px;}
#partner-pag .banner.individualbanner5:not(.banner5catalogo) .portfolio-thumb img { mix-blend-mode: darken; object-fit: contain; aspect-ratio: 4 / 3; max-height: 280px; }
#partner-pag .banner.individualbanner5 .content-text ul{margin-bottom: 0; padding-left: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 0 5px;}
/* #partner-pag .banner.individualbanner5 .content-text ul li::marker{color: #3fbbca;} */
#partner-pag .banner.individualbanner5 .content-text{margin-bottom: 30px;}
#partner-pag .banner.individualbanner5 .content-text img { height: 55px !important; width: auto !important; }
#partner-pag .banner.individualbanner5 .content-text .title{font-size: var(--content-h4-font-size); text-transform: uppercase; margin-bottom: 15px;}
#partner-pag .banner.individualbanner5 .content-text .h2.title{font-size: var(--content-h2-font-size);}

@media (min-width: 1200px){ 
  #partner-pag .banner-icon .banner.individualbanner5 .portfolio-thumb img { max-height: 320px;}
  #partner-pag .banner-icon .banner.individualbanner5 .banner-image--wrapper, #partner-pag .banner-icon .banner.individualbanner5 .banner-content--wrapper{ max-width: 50%; flex: 0 0 50%; }
}
@media(max-width: 991px){
  #partner-pag .banner.individualbanner4 .title, #partners .banner.individualbanner4 .title{min-height: 60px;}
}

#partner-pag .banner5catalogo .portfolio-thumb{margin-bottom: 15px;}
#partner-pag .banner5catalogo .title{margin-bottom: 15px;}
#partner-pag .banner.individualbanner5.banner5catalogo .content-text{margin-bottom: 0 !important;}


/* ---- Secciones (antes desplegables; ahora siempre visibles) ---- */
/* se conserva la clase .hidden-section solo como ancla para el scroll */
.hidden-section { height: auto; overflow: visible; visibility: visible; opacity: 1; transform: none; }
.hidden-section .image img { aspect-ratio: 3 / 1; object-fit: contain; text-align: left; margin-left: 0; object-position: left; }

/* -- rejilla: el CMS genera col-lg-2.4 (clase inexistente en Bootstrap) -- */
#partner-pag .Marcas-Arbex .list > .row { align-items: stretch; margin-bottom: -35px; }
#partner-pag .Marcas-Arbex .list > .row > article.item { margin-bottom: 35px; }

@media (min-width: 992px) {
  #partner-pag .Marcas-Arbex .list > .row > article.item { flex: 0 0 20%; max-width: 20%; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  #partner-pag .Marcas-Arbex .list > .row > article.item { flex: 0 0 33.3333%; max-width: 33.3333%; }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  #partner-pag .Marcas-Arbex .list > .row > article.item { flex: 0 0 50%; max-width: 50%; }
}
@media (max-width: 575.98px) {
  #partner-pag .Marcas-Arbex { --marca-logo-h: 48px; }
  #partner-pag .Marcas-Arbex .list > .row > article.item { flex: 0 0 100%; max-width: 100%; }
}

/* -- cadena de alturas: la tarjeta ocupa todo el alto de la fila -- */
#partner-pag .Marcas-Arbex article.item > .single-post-slide-wrap,
#partner-pag .Marcas-Arbex article.item .container,
#partner-pag .Marcas-Arbex article.item .container > .row,
#partner-pag .Marcas-Arbex article.item .container > .row > [class*="col-"] > .row,
#partner-pag .Marcas-Arbex .banner.individualbannersheet4 { height: 100%; }

#partner-pag .Marcas-Arbex .banner.individualbannersheet4 > .row { height: 100%; flex-direction: column; flex-wrap: nowrap; }
#partner-pag .Marcas-Arbex .banner.individualbannersheet4 > .row > .col-12:first-child { flex: 0 0 auto; }
#partner-pag .Marcas-Arbex .banner.individualbannersheet4 > .row > .col-12:last-child { flex: 1 1 auto; display: flex; }

#partner-pag .Marcas-Arbex .banner-content { width: 100%; display: flex; padding: 0; min-height: 0; background: none !important; }
#partner-pag .Marcas-Arbex .banner-content-details { display: flex; flex-direction: column; width: 100%; padding: 0; background: none; }

/* -- logos: misma franja, alineados abajo a la izquierda -- */
#partner-pag .Marcas-Arbex .banner-image { line-height: 0; }
#partner-pag .Marcas-Arbex .banner .col-12{height: unset !important;}
#partner-pag .Marcas-Arbex .banner.individualbanner4 .portfolio-thumb { height: 60px; margin-bottom: 22px; display: flex; align-items: flex-end; justify-content: flex-start; }
#partner-pag .Marcas-Arbex .banner.individualbanner4 .portfolio-thumb picture { display: flex; align-items: flex-end; max-width: 100%; }
#partner-pag .Marcas-Arbex .banner.individualbanner4 .portfolio-thumb img { width: auto; height: auto; max-width: 200px; max-height: 60px; aspect-ratio: auto; object-fit: contain; object-position: left bottom; }


/* -- boton: siempre pegado al fondo de la tarjeta y del mismo tamano -- */
#partner-pag .Marcas-Arbex .banner-content-details .btn { margin-top: auto; align-self: flex-start; /* width: 100%; */}

/* la columna del mockup que contiene el listado viene como col-sm-4 col-9:
   forzamos ancho completo en tablet/movil sin depender del mockup */
@media (max-width: 991.98px) {
  #partner-pag [class*="col-"]:has(> .content-wrapper.Marcas-Arbex) { flex: 0 0 100%; max-width: 100%; width: 100%; }
}


#partner-pag .Sostenibilidad .list > .row { align-items: stretch; margin-bottom: -40px; }
#partner-pag .Sostenibilidad .list > .row > article.item { margin-bottom: 40px; }

/* tarjetas a la misma altura */
#partner-pag .Sostenibilidad article.item > .single-post-slide-wrap, #partner-pag .Sostenibilidad article.item .container, #partner-pag .Sostenibilidad article.item .container > .row, #partner-pag .Sostenibilidad article.item .container > .row > [class*="col-"] > .row, #partner-pag .Sostenibilidad .banner.individualbannersheet4 { height: 100%; }

#partner-pag .Sostenibilidad .banner.individualbannersheet4 > .row { height: 100%; flex-direction: column; flex-wrap: nowrap; }
#partner-pag .Sostenibilidad .banner.individualbannersheet4 > .row > .col-12:first-child { flex: 0 0 auto; }
#partner-pag .Sostenibilidad .banner.individualbannersheet4 > .row > .col-12:last-child { flex: 1 1 auto; display: flex; }

#partner-pag .Sostenibilidad .banner-content { width: 100%; display: flex; padding: 0; min-height: 0; background: none !important; }
#partner-pag .Sostenibilidad .banner-content .title{font-size: var(--content-h3-font-size);}
#partner-pag .Sostenibilidad .banner-content-details { display: flex; flex-direction: column; width: 100%; padding: 0; background: none; }

/* imagen cuadrada a todo el ancho de la columna */
#partner-pag .Sostenibilidad .banner-image { line-height: 0; }
#partner-pag .Sostenibilidad .banner.individualbanner4 .portfolio-thumb { margin-bottom: 22px; }
#partner-pag .Sostenibilidad .banner.individualbanner4 .portfolio-thumb picture { display: block; width: 100%; }
#partner-pag .Sostenibilidad .banner.individualbanner4 .portfolio-thumb img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: center; }



/* ============================================================
   BANNER 4 FICHA  (plantilla banner4ficha.html)
   Tarjeta con imagen + titulo; texto y boton fuera de la tarjeta
   ============================================================ */

.Marcas-Arbex .swiper .swiper-slide .single-post-slide-wrap .ficha-info,
.Marcas-Lucart .swiper .swiper-slide .single-post-slide-wrap .ficha-info,
.Marcas-Arbex .swiper .swiper-slide .single-post-slide-wrap .banner,
.Marcas-Lucart .swiper .swiper-slide .single-post-slide-wrap .banner,
.Marcas-Arbex .swiper .swiper-slide .single-post-slide-wrap .col-12,
.Marcas-Lucart .swiper .swiper-slide .single-post-slide-wrap .col-12,
.Marcas-Arbex .swiper .swiper-slide .single-post-slide-wrap .row,
.Marcas-Lucart .swiper .swiper-slide .single-post-slide-wrap .row,
.Marcas-Arbex .swiper .swiper-slide .single-post-slide-wrap .container,
.Marcas-Lucart .swiper .swiper-slide .single-post-slide-wrap .container,
.Marcas-Arbex .swiper .swiper-slide .single-post-slide-wrap ,
.Marcas-Lucart .swiper .swiper-slide .single-post-slide-wrap {height: 100%;}
.Marcas-Arbex .swiper .swiper-slide,
.Marcas-Lucart .swiper .swiper-slide{height: auto;}

.banner.banner4ficha { display: flex; flex-direction: column; height: 100%; --ficha-radius: 14px; --content-p-font-size: 14px;}

/* tarjeta: recorta la imagen con las esquinas redondeadas */
.banner.banner4ficha .ficha-card { background-color: #f2f2f2; border-radius: var(--ficha-radius); overflow: hidden; margin-bottom: 25px; flex: 0 0 auto; }
.banner.banner4ficha .ficha-card .banner-image { line-height: 0; }
.banner.banner4ficha .ficha-card .portfolio-thumb { margin: 0; flex-direction: column; align-items: start; justify-content: center; row-gap: 10px;}
.banner.banner4ficha .ficha-card picture { display: block; width: 100%; }
.banner.banner4ficha .ficha-card img { display: block; width: 100%; height: auto; max-width: 100%; aspect-ratio: auto; object-fit: cover; object-position: center; }

/* titulo dentro de la tarjeta */
.banner.banner4ficha .ficha-card .title { margin: 0; text-transform: uppercase; font-weight: normal; font-size: 14px; color: #000;}
/* si no hay imagen, el titulo no queda pegado al borde superior */
.banner.banner4ficha .ficha-card > .title:first-child { padding-top: 22px; }

/* texto y boton, fuera de la tarjeta */
.banner.banner4ficha .ficha-info { display: flex; flex-direction: column; flex: 1 1 auto; }
.banner.banner4ficha .ficha-info .content-text { margin-bottom: 25px; }
.banner.banner4ficha .ficha-info .btn { margin-top: auto; align-self: flex-start; }



/* ============================================================
   LISTADO "MARCAS LUCART"  (plantilla banner4-marcaslucart.html)
   Tarjeta redondeada + acento de color de marca en la esquina
   El color de marca sale del campo "Color de fondo" (--bg-color)
   ============================================================ */

/* -- separacion vertical entre filas; el numero de columnas lo manda
      la configuracion del bloc en el panel (aqui ya genera col-lg-3) -- */
#partner-pag .Marcas-Lucart .list > .row { align-items: stretch; margin-bottom: -40px; }
#partner-pag .Marcas-Lucart .list > .row > article.item { margin-bottom: 40px; }

/* -- quitar el padding duplicado de los wrappers internos del CMS -- */
#partner-pag .Marcas-Lucart article.item .container { max-width: none; width: 100%; padding-left: 0; padding-right: 0; }
#partner-pag .Marcas-Lucart article.item .container > .row { margin-left: 0; margin-right: 0; }
#partner-pag .Marcas-Lucart article.item .container [class*="col-"] { padding-left: 0; padding-right: 0; }

/* -- tarjetas a la misma altura -- */
#partner-pag .Marcas-Lucart article.item > .single-post-slide-wrap,
#partner-pag .Marcas-Lucart article.item .container,
#partner-pag .Marcas-Lucart article.item .container > .row,
#partner-pag .Marcas-Lucart article.item .container > .row > [class*="col-"] > .row,
#partner-pag .Marcas-Lucart .banner.banner4ficha { height: 100%; }

/* -- tarjeta + acento de marca -- */
.banner.banner4ficha {
  --ficha-radius: 18px;
  --ficha-accent-w: 30%;    /* ancho del acento de color   */
  --ficha-accent-h: 45%;    /* alto del acento de color    */
  --ficha-accent-out: 6px;  /* cuanto asoma fuera del borde */
}

.banner.banner4ficha .ficha-card-wrap { position: relative; margin-bottom: 25px; }

/* el acento va DETRAS de la tarjeta: solo asoma por la esquina redondeada */
.banner.banner4ficha .ficha-card-wrap::after { content: ""; position: absolute; z-index: 0; right: 0; bottom: 0; width: var(--ficha-accent-w); height: var(--ficha-accent-h); background: var(--bg-color); border-bottom-right-radius: 30px; pointer-events: none; }
.banner.banner4ficha .ficha-card { position: relative; z-index: 1; background: linear-gradient(180deg, #f4f4f4 0%, #e8e8e8 100%); border-radius: 18px 18px 60px 18px ; overflow: hidden; margin-bottom: 0; }

@media (max-width: 767.98px) {
  .banner.banner4ficha { --ficha-radius: 14px; }
}

/* ============================================================
   ITEM DE MARCA LUCART  (plantilla banner5-itemmarcalucart.html)
   Imagen a la izquierda sobre fondo claro + boton debajo;
   texto a la derecha sobre el color del bloc (--bg-color)
   ============================================================ */
.banner.banner5-itemmarcalucart { --itemmarca-pad: 15px; --itemmarca-img-bg: #f2f2f2;   /* fondo claro de la columna de imagen */ --itemmarca-gap: 30px;         /* aire entre la imagen y el boton     */ overflow: hidden; }

/* las dos columnas siempre a la misma altura */
.banner.banner5-itemmarcalucart > .row { align-items: stretch; }
.banner.banner5-itemmarcalucart .banner-image--wrapper,
.banner.banner5-itemmarcalucart .banner-content--wrapper { display: flex; }

/* -- columna izquierda: imagen arriba + boton anclado abajo -- */
.banner.banner5-itemmarcalucart .banner-image { width: 100%; background: var(--itemmarca-img-bg); padding: var(--itemmarca-pad); display: flex; flex-direction: column; justify-content: center; align-items: center; gap: var(--itemmarca-gap); }
.banner.banner5-itemmarcalucart .portfolio-thumb { margin: 0; width: 100%; line-height: 0; }
.banner.banner5-itemmarcalucart .portfolio-thumb picture { display: block; width: 100%; }
.banner.banner5-itemmarcalucart .portfolio-thumb img { display: block; width: 100%; height: auto; mix-blend-mode: darken; }
.banner.banner5-itemmarcalucart .banner-image--action { line-height: normal; text-align: center; position: absolute; bottom: 30px;}
.banner.banner5-itemmarcalucart .banner-image--action .btn { margin: 0; }
/* Boton de descarga del campo "Archivo" del bloque: siempre debajo del boton
   principal, no lo sustituye (el enlace del bloque y el PDF son cosas distintas) */
.banner.banner5-itemmarcalucart .banner-image--action .btn-descarga { display: block; margin-top: 10px; }
.banner.individualbanner5 .btn-descarga { margin-top: 15px; }
#partner-pag .banner5catalogo .btn-descarga { margin-top: 15px; }

/* -- columna derecha: panel de color -- */
.banner.banner5-itemmarcalucart .banner-content { width: 100%; background: var(--bg-color); }
.banner.banner5-itemmarcalucart .banner-content-details { padding: 30px; background: none; --content-p-font-size: 16px; }
.banner.banner5-itemmarcalucart .banner-content-details > .title { margin-bottom: 25px; }
.banner.banner5-itemmarcalucart .content-text,
.banner.banner5-itemmarcalucart .content-text strong,
.banner.banner5-itemmarcalucart .content-text p,
.banner.banner5-itemmarcalucart .content-text li { color: var(--text-color); }
.banner.banner5-itemmarcalucart .content-text p:last-child { margin-bottom: 0; }

/* "Sectores": titulillo en mayusculas y listado en linea separado por comas */
.banner.banner5-itemmarcalucart .content-text .title { color: var(--text-color); text-transform: uppercase; font-size: var(--content-h4-font-size); margin-top: 20px; margin-bottom: 15px; }
.banner.banner5-itemmarcalucart .content-text ul { list-style: none; margin: 0; padding: 0; }
.banner.banner5-itemmarcalucart .content-text ul li { display: inline; }
.banner.banner5-itemmarcalucart .content-text ul li:not(:last-child)::after { content: ", "; }

@media (max-width: 991.98px) {
  .banner.banner5-itemmarcalucart { --itemmarca-gap: 25px; }
}

.banner.banner4ficha { --ficha-logo-h: 175px; --ficha-logo-pad: 26px 30px; }
.banner.banner4ficha .ficha-card .portfolio-thumb { height: var(--ficha-logo-h); padding: var(--ficha-logo-pad); margin: 0; box-sizing: border-box; display: flex;}
.banner.banner4ficha .ficha-card picture { display: flex; align-items: center; justify-content: start; width: auto; max-width: 100%; height: auto; }
.banner.banner4ficha .ficha-card img { display: block; width: auto; height: auto; max-width: 100%; max-height: 40px; aspect-ratio: auto; object-fit: contain; object-position: center; }

@media (max-width: 991.98px) {
  .banner.banner4ficha { --ficha-logo-h: 130px; --ficha-logo-pad: 20px 24px; }
  .banner.banner4ficha .ficha-card img { max-height: calc(var(--ficha-logo-h) - 40px); }
}


.section-sostenibilidad{ --padding-section-sostenibilidad: 50px 90px; }
.section-sostenibilidad::after { position: absolute; pointer-events: none; background-size: contain !important; left: 0; right: 0; top: 0; bottom: 0; margin: auto; display: block; background-repeat: no-repeat !important; background-position: center !important; content: ""; width: 100px; }
@media (max-width: 991px){
  .section-sostenibilidad{ --padding-section-sostenibilidad: 30px; margin-bottom: 30px;}
  .section-sostenibilidad::after{bottom: 30px !important; top: unset !important; margin: 0 auto !important;}
  .section-sostenibilidad .section-sostenibilidad-text{order: 0; min-height: 300px;}
  .section-sostenibilidad .section-sostenibilidad-image{order: 1;}
}

.section-sostenibilidad .section-sostenibilidad-text .title{text-transform: uppercase;}
.section-sostenibilidad{position: relative;}

.section-sostenibilidad-1::after{ height: 110px; background: url(/media/images/productos-marcas/climate_neutral.png); }
.section-sostenibilidad-1 .section-sostenibilidad-image{padding-left: 0; padding-right: 0;}
.section-sostenibilidad-1 .section-sostenibilidad-text{padding: var(--padding-section-sostenibilidad); background-color: #f3f3f3; display: flex; align-items: center;}
.section-sostenibilidad-1 .section-sostenibilidad-text .content-text{display: flex; align-items: end;}
.section-sostenibilidad-1 .section-sostenibilidad-text img{ height: 200px !important; width: auto !important; }

.section-sostenibilidad-2::after{ height: 100px; background: url(/media/images/productos-marcas/FLASH_SOSTENIBLE.png); }
.section-sostenibilidad-2 .section-sostenibilidad-image{ padding: var(--padding-section-sostenibilidad); background-color: #f3f3f3;}
.section-sostenibilidad-2 .section-sostenibilidad-text{padding: var(--padding-section-sostenibilidad); background: url(/media/images/productos-marcas/peces.jpg); background-repeat: no-repeat; background-size: cover; display: flex; align-items: center; --content-p-color: #fff; --content-heading-color: #fff;}

#partner-pag .Marcas-Arbex [data-name="Scott"] .banner.individualbanner4 .portfolio-thumb{height: 70px; margin-bottom: 12px;}
#partner-pag .Marcas-Arbex [data-name="Scott"] .banner.individualbanner4 .portfolio-thumb img{max-height: 70px;}

.text-transform-none{text-transform: none !important;}

/* ============================================================
   FLECHAS DE CARRUSEL EN LAS LANDINGS DE PARTNERS (#partner-pag)
   Fondo gris oscuro con el icono en blanco.
   Afecta a Marcas-Arbex, Sostenibilidad (Arbex) y Marcas-Lucart.
   El estilo global (circulo blanco con flecha gris) se mantiene
   intacto para el resto del sitio.
   ============================================================ */

#partner-pag { --swiper-arrow-bg: #585857; --swiper-arrow-bg-hover: #3f3f3e; }

#partner-pag .swiper-button-prev,
#partner-pag .swiper-button-next {
  background: var(--swiper-arrow-bg);
  border-color: transparent;
  backdrop-filter: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}
#partner-pag .swiper-button-prev:hover,
#partner-pag .swiper-button-next:hover {
  background: var(--swiper-arrow-bg-hover);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
#partner-pag .swiper-button-prev::after,
#partner-pag .swiper-button-next::after { color: #ffffff; }
