@import url(https://fonts.googleapis.com/css?family=Lora:400,400italic);
@import url(https://fonts.googleapis.com/css?family=Roboto:100,100italic,400,400italic);
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { border: 0; font-size: 100%; font: inherit; margin: 0; padding: 0; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block }
blockquote, q { quotes: none }
table { border-collapse: collapse; border-spacing: 0; width: 100%; }
:focus { outline: 0; }
ul, li { list-style: none; }
a { text-decoration: none; }
* { scrollbar-width: none;           /* Firefox */ -ms-overflow-style: none;        /* Internet Explorer 10+ */ }
*::-webkit-scrollbar, *::-webkit-scrollbar { display: none;                   /* Chrome, Safari */ }
.d-none { display: none !important; }
[lang='es'] [lng]:not([lng='es']) { display: none !important; }
[lang='cat'] [lng]:not([lng='cat']) { display: none !important; }
[lang='en'] [lng]:not([lng='en']) { display: none !important; }

/**/
.flex { display: flex; display: -webkit-flex; display: -ms-flex; flex-direction: row; justify-content: space-between; align-items: stretch; -webkit-flex-direction: row; -webkit-justify-content: space-between; -webkit-align-items: stretch; }
.flex.products_group { -webkit-justify-content: flex-start; justify-content: flex-start; }
header nav ul li, footer article > *, header article > *, .sect-2 article > * { align-self: center; -webkit-align-self: center; }
header, section, footer { width: 100%; padding: 0; margin: 0; }
body { font-smoothing: antialiased; -webkit-font-smoothing: antialiased; height: 100%; width: 100%; font-family: Roboto, sans-serif; line-height: 1.5; padding-top: 8rem !important; font-size: 15px; }
p { font-size: 16px; color: #555555; }
article { max-width: 1080px; margin: 0 auto; }
h2 { font-family: Lora, serif; font-size: 34px; text-align: center; font-weight: 100; font-style: normal; color: #555555; line-height: 1.2; }
h3 { font-size: 24px; text-align: center; font-weight: 400; font-style: normal; font-family: Roboto, sans-serif; margin: 0; }
h4 { color: #555555; font-size: 16px; font-weight: 400; font-style: normal; font-family: Roboto, sans-serif; }
h5 { color: #e23770; font-size: 26px; font-weight: 400; font-style: normal; font-family: Lora, serif; }
input, textarea { border: 0; background-color: #F7F7F7; line-height: 34px; height: 34px; color: #000000; padding: 0 10px; font-size: 14px; width: 100%; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; }
input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill { background-color: #F7F7F7 !important; }
table { border-collapse: separate; border-spacing: 16px; }
.hidden { display: none; }
.subNavBtn.active { border-bottom: 1px solid #999999; padding: 0 0 3px; }
.col_1-2, .col_1-4, .col_3-4, .col_2-3 { box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; }
.col_1-2 { width: 50%; }
.col_1-4 { width: 25%; }
.col_3-4 { width: 75%; }
.col_2-3 { width: 66.66%; }
.sect-3 article, .sect-4 article, .sect-5 article, .sect-6 article { padding: 4rem 0; }
.sect-3 h2, .sect-5 h2 { margin-bottom: 3rem; }
.sect-4 h2 { margin-bottom: 0; }
.magenta { color: #e23770; }
.button-a, button.button-a { height: 2rem; line-height: 2rem; padding: 0 2rem; color: #ffffff; background: #e23770; display: inline-block; border: 0; box-shadow: 0 3px 0 0 #B02E5F; font-size: .9rem; cursor: pointer; text-transform: uppercase; letter-spacing: .1rem; font-weight: bold; }
.button-b, button.button-b { height: 30px; line-height: 30px; padding: 0 20px; color: #555555; background: #f0f0f0; display: inline-block; border: 0; font-size: 14px; cursor: pointer; }
.button-b.active, button.button-b.active { color: #ffffff; background: #e23770; border-bottom: 3px solid #B02E5F; }
.button-c, button.button-c { height: 30px; line-height: 30px; padding: 0 0 3rem 0; margin: 20px 0 0 0; color: #555555; background: url(../img/icons_godown.png); background-position: bottom center; background-repeat: no-repeat; background-size: 28px; display: inline-block; border: 0; font-size: 14px; cursor: pointer; }
.button-menu { height: 30px; width: 30px; background: url(../img/icons_menu.png); background-position: center center; background-repeat: no-repeat; background-size: 30px; border: 0; cursor: pointer; }
.responsive-show { display: block; }
.bx-wrapper { overflow: hidden; }
.directory { color: #e23770; font-size: 14px; }
.reference { color: #e23770; font-size: 12px; }
.lopd { padding: 0 !important; font-size: 12px; }
.ov-hidden { overflow: hidden; }

/*Header*/
header { border-top: 3px solid #e23770; height: 8rem; z-index: 1; background: rgba(999, 999, 999, 0.95); top: 0 !important; position: fixed !important; align-items: center; display: flex; z-index: 2; }
header article { width: 100%; }
header figure.logotype { height: 2.25rem; width: auto; background-image: url(../img/logotype.png); background-size: contain; background-position: center center; background-repeat: no-repeat; aspect-ratio: 6/1; cursor: pointer; }
header nav ul { display: flex; gap: 1rem; }
header nav a, .goog-te-gadget-simple:before { font-family: Roboto, sans-serif; line-height: 1.5; color: #555555; text-decoration: none; font-size: 1rem; }
header li.language { display: flex; gap: .5em; }
header li.language a { color: #e23770; cursor: pointer; }
header li.language a.active { border-bottom: 1px solid #e23770; padding: 0 0 3px; }
header li span { padding: 0 5px; }

/**/
ul.bxslider li { height: 600px; background-size: cover; background-position: center center; }
.sect-1 { position: relative; max-width: 1080px; margin: 0 auto 2rem; border-radius: 1rem; overflow: hidden; }
.sect-1 .content { position: absolute; margin: auto; top: 0; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.sect-1 .content *:not(.magenta) { color: #fff; }
.sect-2 { background: url(../img/bg_profile.jpg); background-size: cover; background-position: center center; }
.sect-2 h2, .sect-2 p { color: #ffffff; text-align: left; margin-bottom: 12px; }
.sect-2 p { }
.sect-2 article { height: 32rem; }

/**/
.thinking { padding: 140px 0; background: url(../img/bg_thinking_top.png), url(../img/bg_thinking_bottom.png); background-position: top, bottom; background-size: 100% 100px; background-color: #e23770; background-repeat: no-repeat; }
.thinking article { background: url(../img/icons_thinking.png); background-position: right top; background-size: 120px; background-repeat: no-repeat; }
.thinking { color: #ffffff; }
.thinking h2 { font-size: 36px; text-align: left; color: #ffffff; }
.thinking p { font-size: 22px; text-align: left; padding-right: 100px; color: #ffffff; }
.thinking.highlights, .thinking.info { padding: 40px 0 140px 0; background: url(../img/bg_thinking_bottom.png); background-position: bottom; background-size: 100% 100px; background-color: #e23770; background-repeat: no-repeat; }
.thinking.highlights article { background-image: url(../img/icons_bio.png); }
.thinking.info article { background-image: url(../img/icons_info.png); }
.thinking article a.button-a { border: 1px solid #ffffff; }

/**/
.sect-3 ul { flex-wrap: wrap; -webkit-flex-wrap: wrap; }
.sect-3 ul li { padding: .5rem; text-align: center; color: #555555; }
.sect-3 p { text-align: center; }
.sect-3 figure { width: 100px; height: 100px; background: #f7f7f7; margin: auto; border-radius: 50%; -webkit-border-radius: 50%; -ms-border-radius: 50%; -moz-border-radius: 50%; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; padding: 15px; margin: 0 auto 15px; }
.sect-3 figure img { width: 70px; height: 70px; }

/**/
.products_group_menu { justify-content: center; -webkit-justify-content: center; gap: .75rem; margin: 1.5rem 0; flex-wrap: wrap; }
.products_group_menu li a { margin: 20px 5px; }
.products_group { flex-wrap: wrap; -webkit-flex-wrap: wrap; -webkit-justify-content: start; justify-content: start; }
.products_group li { width: 25%; background: transparent; position: relative; background-position: top center; background-size: cover; background-repeat: no-repeat; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; padding: .5rem; }
.products_group li > * { width: 100%; overflow: hidden; display: block; }
.products_group li a:before { content: ""; }
.products_group li img { aspect-ratio: 1/1; width: 100%; object-fit: cover; object-position: top center; border-radius: .5rem; }
.products_group li .title { margin-top: .5rem; white-space: nowrap; text-overflow: ellipsis; display: block; width: 100%; overflow: hidden; color: #000; }
.sect-4 p { text-align: center; }

/**/
.sect-5 { background-color: #f4f4f4; }
.sect-5 article { padding-bottom: 6rem; }
.sect-5 h4, .sect-5 p { }
.sect-5 p a { color: #555555; font-weight: 600; }
.sect-5 .flex { flex-wrap: wrap; -webkit-flex-wrap: wrap; }
.sect-5 .links { margin: auto; width: 440px; }
.sect-5 .links > * { display: flex; width: 100%; color: #000; padding: .75rem; gap: .5rem; background-color: #fff; border-radius: 1rem; margin-bottom: 1rem; position: relative; align-items: center; }
.sect-5 .links > * i { }
.sect-5 .links i.bi-chevron-right { position: absolute; right: 1rem; font-size: .7rem; top: 0; bottom: 0; margin: auto; height: 1rem; line-height: 1rem; }
.sect-5 .links a:hover { background-color: #e23770; color: #fff }

/**/
.sect-6 article.flex { flex-wrap: wrap; -webkit-flex-wrap: wrap; }
.sect-6 h5 { line-height: 1.2; margin-bottom: 10px; }
.sect-6 h6 { font-weight: bold; text-transform: uppercase; font-size: .8rem; letter-spacing: .1rem; margin-bottom: .5rem; margin-top: 1.5rem; }
.sect-6 p { margin-bottom: 10px; }

/**/
.sect-7 { text-align: center; background-color: rgba(0, 0, 0, 0.75); position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9; padding: 2rem 0; align-items: center; max-height: 100%; }
.sect-7:not(.d-none) { display: flex; }
.sect-7 .btn-close { position: fixed; top: 1rem; right: 1rem; }
.sect-7 .btn-close i { font-size: 2rem; color: #fff; cursor: pointer; }
.sect-7 article { background-color: #fff; padding: 2rem; width: 800px; overflow: scroll; border-radius: .5rem; position: relative; max-height: 100%; }
.sect-7 article figure { max-width: 560px; margin: auto; display: block; margin-bottom: 2rem; }
.sect-7 article figure img { width: 100%; border-radius: .5rem; }
.sect-7 article .bottom { color: #333; }
.sect-7 article .bottom a { color: #333; text-decoration: underline; }

/**/
.sect-8 { padding: 4rem 0; }
.sect-8 ul { display: flex; width: 100%; flex-direction: row; gap: 2rem; }
.sect-8 ul li { aspect-ratio: 5/3; position: relative; width: 100%; border-radius: .5rem; overflow: hidden; cursor: pointer; background-color: #2e2e2e; }
.sect-8 ul li > img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: .8; }
.sect-8 ul li > div { position: absolute; color: #fff; top: 0; left: 0; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .5rem; }
.sect-8 ul li > div h5 { color: #fff; }
.sect-8 ul li > div .btn { padding: .5rem; background-color: #e23770; }

/**/
footer { background: #555555; padding: 1.5rem 0; }
footer * { color: #ffffff; font-size: 14px }
footer p a { text-decoration: underline; margin-left: .5rem; }
footer article { flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap-reverse; -webkit-flex-wrap: wrap-reverse; }
footer ul.flex { justify-content: flex-end; -webkit-justify-content: flex-end; align-items: center; gap: .5rem; }
footer ul li { }
footer ul li a { height: 2rem; min-width: 2rem; line-height: 2rem; display: inline-flex; background-color: rgba(255, 255, 255, 0.2); align-items: center; justify-content: center; border-radius: 1rem; padding: 0 .75rem; gap: .5rem; }
footer ul li a i { text-decoration: none; color: #fff; }
@media only screen and (min-width:800px) {
    .sect-3 ul li:nth-child(2) { -webkit-animation-delay: 0.15s; animation-delay: 0.15s; }
    .sect-3 ul li:nth-child(3) { -webkit-animation-delay: 0.3s; animation-delay: 0.3s; }
    .sect-3 ul li:nth-child(4) { -webkit-animation-delay: 0.45s; animation-delay: 0.45s; }
    .responsive-show { display: none; }
}
@media only screen and (max-width:1000px) {
    article { padding-left: 5% !important; padding-right: 5% !important; }
    .col_1-4 { width: 50%; }
    .col_3-4 { width: 100%; }
    .thinking article { background-position: 95% top; }
    footer ul.flex { justify-content: flex-end; -webkit-justify-content: flex-end; }
}
@media only screen and (max-width:800px) {
    .wow { animation-name: none !important; -webkit-animation-name: none !important; }
    .col_1-2 { width: 100%; }
    .col_2-3 { width: 100%; }
    .sect-3 h2, .sect-5 h2 { margin-bottom: 30px; }
    .sect-3 article, .sect-4 article, .sect-5 article, .sect-6 article { padding: 40px 0; }
    .thinking { padding: 80px 0; background-size: 100% 60px; }
    .thinking.highlights, .thinking.info { padding: 40px 0 80px 0; background-size: 100% 60px; }
    ul.products_group li { width: 50%; }
    body { padding-top: 80px !important; }
    header { background: #e23770; border-width: 0; }
    header, header article { height: 80px; }
    header nav.col_1-2 { width: auto; }
    header nav a { line-height: 2; }
    header nav ul.flex { flex-direction: column; -webkit-flex-direction: column; position: absolute; width: auto; height: auto; background-color: #ffffff; right: 0; top: 80px; display: none; padding: 5%; box-shadow: 0 2px 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow: 0 2px 1px 1px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 2px 1px 1px rgba(0, 0, 0, 0.1); -ms-box-shadow: 0 2px 1px 1px rgba(0, 0, 0, 0.1); -o-box-shadow: 0 2px 1px 1px rgba(0, 0, 0, 0.1); }
    header nav ul.flex.visible { display: block; }
    header figure.logotype { background-image: url(../img/logotype_white.png); width: 200px; }
    .sect-1 { margin: 0; border-radius: 0; }
    ul.products_group_menu li a.button-b { margin: 10px 5px; padding: 0 10px; }
    footer ul.flex { justify-content: center; -webkit-justify-content: center; margin-bottom: .5rem; }
    footer p { text-align: center; }

    /**/
    .product_description { padding-right: 0; }
    .product_picture br { display: none; }
    .sect-6 article.flex { flex-wrap: wrap-reverse; -webkit-flex-wrap: wrap; }

    /**/
    .sect-7 { padding: 5rem 0 0 0; align-items: unset; }
    .sect-8 ul { flex-direction: column }
}