/**
* Theme Name: Diteck Child
* Description: This is a child theme of Diteck, generated by Merlin WP.
* Author: <a href="https://wpopal.com/">Opalthemes</a>
* Template: diteck
* Version: 1.2.1
*/
/******************************************************************
* Tipografía
* General
* Header
* Home
* Solutions
* Products
* About us
* Contact
* Single post
* Footer
******************************************************************/
:root {
    --primary-color: #11214B;
    --secondary-color: #FFD41D;
    --tertiary-color: #1171E7;
    --font-twk: 'TWKEverett', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --font-archivo: 'Archivo', sans-serif;
}

/****** Tipografía ******/
body, button, input, textarea {
    font-family: var(--font-archivo);
    font-size: 22px;
    line-height: 1.5;
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .heading {
    font-family: var(--font-twk);
    line-height: 1.2;
    letter-spacing: 1px;
}
h1, .alpha {
    letter-spacing: 1px;
}
p:last-child {
    margin-bottom: 0;
}
.lletra-destacada {
    font-family: var(--font-twk);
    font-size: 352px;
    font-weight: 500;
    line-height: 1;
    text-transform: uppercase;
}
.size-270, .size-270 * {
    font-size: 270px;
}
.h1-destacat, .h1-destacat * {
    font-size: 140px;
    font-weight: 400;
}
h1, .h1 {
    font-size: 100px;
    line-height: 1;
}
h2, .h2 {
    font-size: 60px;
}
h3, .h3,
.solutions__idea-items .elementor-link-showcase-title .link-showcase-title {
    font-size: 35px;
}
.size-48 {
    font-size: 48px;
}
.p1-destacat, .p1-destacat * {
    font-size: 30px;
    line-height: 1.2;
}
.size-20 {
    font-size: 20px;
}
.extrabold, .extrabold * {
    font-weight: 800;
}
.light, .light * {
    font-weight: 300;
}
.font-twk {
    font-family: var(--font-twk);
}
@media (max-width: 1366px) {
    .lletra-destacada {
        font-size: 320px;
    }
    .size-270, .size-270 * {
        font-size: 250px;
    }
    .h1-destacat, .h1-destacat * {
        font-size: 130px;
    }
}
@media (max-width: 1200px) {
    body, button, input, textarea {
        font-size: 20px;
    }
    .lletra-destacada {
        font-size: 290px;
    }
    .size-270, .size-270 * {
        font-size: 220px;
    }
    .h1-destacat, .h1-destacat * {
        font-size: 104px;
    }
    h1, .h1 {
        font-size: 90px;
    }
    .p1-destacat, .p1-destacat * {
        font-size: 28px;
    }
    h2, .h2 {
        font-size: 54px;
    }
    .size-48 {
        font-size: 40px;
    }
    h3, .h3,
    .solutions__idea-items .elementor-link-showcase-title .link-showcase-title {
        font-size: 32px;
    }
}
@media (max-width: 1024px) {
    .lletra-destacada {
        font-size: 260px;
    }
    .size-270, .size-270 * {
        font-size: 190px;
    }
    .h1-destacat, .h1-destacat * {
        font-size: 92px;
    }
    h1, .h1 {
        font-size: 80px;
    }
    .p1-destacat, .p1-destacat * {
        font-size: 26px;
    }
    h2, .h2 {
        font-size: 50px;
    }
    .size-48 {
        font-size: 36px;
    }
    h3, .h3,
    .solutions__idea-items .elementor-link-showcase-title .link-showcase-title {
        font-size: 30px;
    }
}
@media (max-width: 880px) {
    .lletra-destacada {
        font-size: 230px;
    }
    .size-270, .size-270 * {
        font-size: 170px;
    }
    h1, .h1 {
        font-size: 74px;
    }
    .h1-destacat, .h1-destacat * {
        font-size: 80px;
    }
    .p1-destacat, .p1-destacat * {
        font-size: 24px;
    }
    h2, .h2 {
        font-size: 44px;
    }
    .size-48 {
        font-size: 32px;
    }
    h3, .h3,
    .solutions__idea-items .elementor-link-showcase-title .link-showcase-title {
        font-size: 26px;
    }
}
@media (max-width: 767px) {
    .size-270, .size-270 * {
        font-size: 140px;
    }
    .p1-destacat, .p1-destacat * {
        font-size: 22px;
    }
    h2, .h2 {
        font-size: 42px;
    }
    h3, .h3 {
        font-size: 24px;
    }
}
@media (max-width: 580px) {
    .size-270, .size-270 * {
        font-size: 130px;
    }
    .h1-destacat, .h1-destacat * {
        font-size: 70px;
    }
    h1, .h1 {
        font-size: 48px;
    }
    .p1-destacat, .p1-destacat * {
        font-size: 20px;
    }
    h2, .h2 {
        font-size: 40px;
    }
    .size-48 {
        font-size: 28px;
    }
    h3, .h3,
    .solutions__idea-items .elementor-link-showcase-title .link-showcase-title {
        font-size: 24px;
    }
}
@media (max-width: 400px) {
    .size-270, .size-270 * {
        font-size: 110px;
    }
    h1, .h1 {
        font-size: 42px;
    }
    .h1-destacat, .h1-destacat * {
        font-size: 54px;
    }
    .p1-destacat, .p1-destacat * {
        font-size: 20px;
    }
    h2, .h2 {
        font-size: 32px;
    }
    .size-48 {
        font-size: 24px;
    }
    h3, .h3,
    .solutions__idea-items .elementor-link-showcase-title .link-showcase-title {
        font-size: 22px;
    }
    .size-20 {
        font-size: 18px;
    }
}

/****** General ******/
.page-last-section {
    margin-bottom: -152px;
}
.primary-button .elementor-button .elementor-button-icon {
    background-color: transparent;
}
.primary-button .elementor-button {
    padding: 15px 30px;
    background-color: var(--secondary-color);
    font-size: 35px;
}
.primary-button .elementor-button:hover {
    background-color: #ffed4e;
}
.primary-button .elementor-button svg {
    width: 40px;
    height: 40px;
}
.primary-button .elementor-button .elementor-button-text {
    color: var(--primary-color);
}
p {
    margin-bottom: 20px;
}
ul, ol {
    margin: 0 0 0 24px;
}
li:not(.menu-item):not(:last-child) {
    margin-bottom: 20px;
}
li::marker {
    color: var(--tertiary-color);
}
.heading-center {
    display: block;
    width: fit-content;
    text-align: center;
}
.navigation-post-filter a.active, .navigation-post-filter a:hover {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}
.elementor-pagination .page-numbers.current,
.elementor-pagination .page-numbers.current:hover,
.pagination ul.page-numbers li .page-numbers.current,
.pagination ul.page-numbers li .page-numbers:hover {
    background-color: var(--primary-color);
    color: #ffffff;
    box-shadow: 0 0 0 1px var(--primary-color) inset;
}
.pagination ul.page-numbers li .page-numbers.current,
.pagination ul.page-numbers li .page-numbers:hover {
    border-color: var(--primary-color);
}
.elementor-pagination .page-numbers:hover {
    background-color: var(--tertiary-color);
    border-color: var(--tertiary-color);
    border: 1px solid var(--tertiary-color);
}
@media (max-width: 1200px) {
    .primary-button .elementor-button {
        font-size: 30px;
    }
}
@media (max-width: 1024px) {
    .page-last-section {
        margin-bottom: -190px;
    }
    .primary-button .elementor-button svg {
        width: 30px;
        height: 30px;
    }
    .primary-button .elementor-button {
        font-size: 26px;
    }  
}
@media (max-width: 880px) {
    .page-last-section {
        margin-bottom: -170px;
    }
    .primary-button .elementor-button {
        font-size: 24px;
    }
}
@media (max-width: 580px) {
    .primary-button .elementor-button svg {
        width: 23px;
        height: 23px;
    }
    .primary-button .elementor-button {
        font-size: 20px;
    }
}

/****** Header ******/
.elementor-widget-diteck-button.header__contact-button .elementor-button-content-wrapper:before {
    content: none;
}
.main-navigation ul ul.sub-menu li {
    min-width: 348px;
}
.main-navigation .sub-menu .menu-item a {
    padding: 7px 30px;
}
.main-navigation ul.menu > li.menu-item.current-menu-parent > a, 
.main-navigation ul.menu > li.menu-item.current-menu-item > a, 
.main-navigation ul.menu > li.menu-item.current-menu-ancestor > a,
.main-navigation ul.menu li.menu-item .sub-menu .menu-item:hover > a {
    color: var(--tertiary-color);
}
.main-navigation ul.menu > li.menu-item > a:before {
    top: calc(50% - 6px);
    height: 12px;
    width: 12px;
    border-radius: 0;
    clip-path: polygon(25% 6.7%, 75% 6.7%, 100% 50%, 75% 93.3%, 25% 93.3%, 0% 50%);
    background-color: var(--tertiary-color);
}
.header__contact-button.elementor-widget-diteck-button .elementor-button-content-wrapper {
    padding-right: 0;
}
.header__contact-button.elementor-widget-diteck-button .elementor-button .elementor-button-text {
    margin-right: 10px;
}
@media (min-width: 768px) {
    .main-navigation ul li.menu-item-767 {
        display: none;
    }
}

/****** Home ******/
/* Hexagons section */
.hexagon-section {
    aspect-ratio: 1920/2318;
    overflow: hidden;
}
.background-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.background-image {
    width: 100%;
    object-fit: cover;
    object-position: center;
}
.content-overlay {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.main-title {
    position: absolute;
    top: 60px;
    left: 80px;
    z-index: 3;
}
.hexagon-content {
    position: relative;
    width: 100%;
    height: 100%;
}
.text-box {
    position: absolute;
    color: white;
    text-align: left;
    z-index: 3;
}
.text-box h3 {
    font-family: var(--font-archivo);
    margin-bottom: 10px;
    color: white;
}
.text-box p {
    line-height: 1.2;
    font-weight: 300;
}
.contract-research {
    top: 10%;
    right: 30%;
    max-width: 20vw;
}
.custom-synthesis {
    top: 37%;
    left: 22%;
    max-width: 424px;
}
.custom-synthesis p {
    max-width: 346px;
}
.main-message {
    top: 42%;
    right: 7vw;
    text-align: center;
    max-width: 600px;
}
.main-message * {
    font-family: var(--font-twk);
}
.main-message p {
    font-size: 60px;
    margin-bottom: 5px;
}
.main-message h3 {
    margin: 0;
    font-size: 90px;
}
.joint-projects {
    bottom: 24%;
    left: 35%;
    max-width: 345px;
}
.cta-button {
    position: absolute;
    bottom: 90px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
}
.lets-talk-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--secondary-color);
    color: var(--primary-color);
    border: none;
    padding: 15px 30px;
    font-size: 35px;
    font-weight: 700;
    border-radius: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
}
.lets-talk-btn:hover {
    background-color: #ffed4e;
}
.lets-talk-btn .cta-button-icon {
    font-size: 4px;
    margin-right: 10px;
}
@media (max-width: 1500px) {
    .contract-research {
        top: 7%;
    }
    .custom-synthesis {
        left: 20%;
    }
    .main-message {
        right: 6vw;
    }
    .joint-projects {
        bottom: 23%;
        left: 32%;
    }
}
@media (max-width: 1360px) {
    .custom-synthesis {
        left: 18%;
    }
    .main-message p {
        font-size: 50px;
    }
    .main-message h3 {
        font-size: 78px;
    }
    .joint-projects {
        max-width: 340px;
    }
}
@media (max-width: 1200px) {
    .contract-research {
        top: 5%;
    }
    .custom-synthesis {
        left: 17%;
    }
    .main-message p {
        font-size: 42px;
    }
    .main-message h3 {
        font-size: 64px;
    }
    .joint-projects {
        max-width: 265px;
    }
    .lets-talk-btn {
        font-size: 30px;
    }
    .cta-button {
        bottom: 60px;
    }
}
@media (max-width: 1024px) {
    .hexagon-section {
        aspect-ratio: 1920/2815;
    }
    .background-image {
        aspect-ratio: 6/9;
        object-position: -17vw center;
    }
    .main-title {
        top: 40px;
        left: 30px;
    }
    .custom-synthesis {
        left: 5%;
    }
    .joint-projects {
        bottom: 20%;
        left: 26%;
    }
    .lets-talk-btn {
        font-size: 26px;
    }
    .cta-button-icon svg {
        width: 30px;
        height: 30px;
    }
}
@media (max-width: 880px) {
    .background-image {
        object-position: -18vw center;
    }
    .main-title {
        top: 20px;
        left: 26px;
    }
    .contract-research {
        right: 31%;
        max-width: 23vw;
    }
    .custom-synthesis {
        left: 5%;
    }
    .main-message {
        right: 2vw;
    }
    .main-message p {
        font-size: 38px;
    }
    .main-message h3 {
        font-size: 60px;
    }
    .joint-projects {
        left: 22%;
    }
    .lets-talk-btn {
        font-size: 24px;
    }
}
@media (max-width: 767px) {
    .hexagon-section,
    .background-image {
        aspect-ratio: 760/1942;
    }
    .background-image {
        object-position: center;
    }
    .main-title {
        display: none;
    }
    .home__work-title h2 {
        margin-bottom: 0;
    }
    .contract-research {
        right: 32%;
        top: 10%;
        max-width: 38vw;
        text-align: center;
    }
    .custom-synthesis {
        left: 21%;
        top: 36%;
        text-align: center;
    }
    .main-message {
        right: 24vw;
        top: 60%;
    }
    .main-message p {
        font-size: 30px;
    }
    .main-message h3 {
        font-size: 48px;
    }
    .joint-projects {
        left: 27%;
        bottom: 9%;
        text-align: center;
    }
    .cta-button:not(.home__work-button) {
        display: none;
    }
    .cta-button.home__work-button {
        position: relative;
        transform: none;
        left: auto;
        bottom: auto;
        width: max-content;
    }
}
@media (max-width: 580px) {
    .hexagon-section,
    .background-image {
        aspect-ratio: 486/1942;
    }
    .contract-research {
        right: 24%;
        top: 11%;
        max-width: 55vw;
    }
    .custom-synthesis {
        left: 9%;
        top: 36%;
        max-width: 80vw;
    }
    .custom-synthesis p {
        max-width: 100%;
    }
    .main-message {
        right: 14%;
        top: 60%;
        width: 74vw;
    }
    .joint-projects {
        left: 16%;
        bottom: 10%;
        width: 70vw;
        max-width: 100%;
    }
    .cta-button.home__work-button .lets-talk-btn {
        font-size: 20px;
    }
    .cta-button-icon svg {
        width: 23px;
        height: 23px;
    }
}
@media (max-width: 400px) {
    .contract-research {
        top: 7%;
    }
    .custom-synthesis {
        left: 11%;
        top: 35%;
        max-width: 76vw;
    }
    .main-message {
        right: 12%;
        width: 75vw;
    }
    .main-message p {
        font-size: 24px;
    }
    .main-message h3 {
        font-size: 38px;
    }
    .joint-projects {
        bottom: 8%;
    }
}
/* End Hexagons section */
.blog-grid {
    background-color: #1171E7;
    border-radius: 24px;
}
.blog-grid .post-thumbnail {
    margin-bottom: 25px;
}
.blog-grid .post-thumbnail img {
    border-radius: 0;
}
.post-thumbnail .entry-meta {
    left: auto;
    right: 0;
    justify-content: center;
    padding: 10px 20px;
    border-radius: 20px 0 0 0;
    background-color: #1171E7;
    font-family: var(--font-archivo);
    font-size: 30px;
    font-weight: 500;
}
.post-thumbnail .entry-meta:before,
.post-thumbnail .entry-meta > div:not(:first-child):not(:last-child):after {
    content: none;
}
.post-thumbnail .entry-meta .categories-link,
.post-thumbnail .entry-meta .post-author {
    display: none;
}
.post-thumbnail .entry-meta a {
    color: #ffffff;
}
.elementor-widget-diteck-post-grid .elementor-post-style-1 .blog-grid .post-content {
    padding: 0 20px 0;
}
.omega.entry-title {
    font-size: 30px;
    font-weight: 300;
}
.omega.entry-title a {
    color: #ffffff;
}
.entry-excerpt {
    font-size: 22px;
    font-weight: 400;
    color: #ffffff;
}
@media (max-width: 1360px) {
    .post-thumbnail .entry-meta {
        font-size: 24px;
    }
}
@media (max-width: 580px) {
    .elementor .home__values .elementor-element {
        --width: 100%;
        justify-content: normal;
    }
    .home__values .size-270 h3,
    .home__values .elementor-widget-text-editor,
    .home__values .elementor-widget-heading h2 {
        text-align: center;
    }
    .post-thumbnail .entry-meta {
        font-size: 20px;
    }
    .omega.entry-title {
        font-size: 26px;
    }
    .entry-excerpt {
        font-size: 20px;
    }
}

/****** Solutions ******/
.solutions__title h1 {
    max-width: 980px;
    margin: 0 auto;
}
.solutions__title.e-con.e-con > .e-con-inner > .elementor-widget.elementor-widget-text-editor {
    max-width: 835px;
    margin: 20px auto 0;
}
.solutions__letter-container {
    max-width: 273px;
}
.solutions__letter-container .lletra-destacada {
    margin-bottom: -50px;
}
.solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title {
    gap: 75px;
}
.solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title:before {
    content: counter(item, decimal-leading-zero);
    font-family: var(--font-twk);
    font-size: 100px;
    font-weight: 500;
    line-height: 1;
    color: var(--tertiary-color);
}
.solutions__idea-items .link-showcase-title-wrapper {
    padding: 10px 0 50px 50px;
}
.solutions__idea-items .link-showcase-contnet-wrapper {
    padding-right: 50px;
}
.solutions__idea-items .elementor-link-showcase-title .link-showcase-title {
    margin-bottom: 20px;
    font-weight: 500;
    color: var(--primary-color);
}
.solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title:first-child {
    border-top: none;
}
.solutions__idea-items .elementor-link-showcase-title a {
    color: var(--tertiary-color);
}
.solutions__idea-items .elementor-link-showcase-title a:hover {
    color: var(--secondary-color);
}
.solution__title h1 {
    max-width: 1005px;
}
.solution__text-padding {
    padding-left: 55px;
}
.solution__challenge-list {
    max-width: 916px;
}
.solutions__idea-items.solution__idea-items .link-showcase-title-inner .elementor-link-showcase-title:before,
.solutions__idea-items.solution__idea-items .elementor-link-showcase-title .link-showcase-title {
    color: #ffffff;
}
.solution__idea-items .elementor-link-showcase-title a {
    color: #ffffff;
}
.solution__icons-grid .elementor-image-box-description {
    max-width: 330px;
    margin: 0 auto;
}
@media (min-width: 1367px) and (max-width: 1520px) {
    .solution__col-img-1 img,
    .solution__col-img-2 img {
        max-width: 42vw;
    }
}
@media (min-width: 1367px) {
    .solution__col-img-1 {
        position: absolute;
        top: 52px;
        right: 0;
    }
    .solution__col-img-2 {
        position: absolute;
        top: 268px;
        right: 0;
    }
}
@media (max-width: 1366px) {
    .solutions__letter-container {
        max-width: 250px;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title {
        gap: 60px;
    }
    .solutions__idea-items .link-showcase-title-wrapper {
        padding: 10px 0 50px 40px;
    }
    .solutions__idea-items .link-showcase-contnet-wrapper {
        padding-right: 40px;
    }
}
@media (max-width: 1200px) {
    .solutions__letter-container {
        max-width: 210px;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title {
        gap: 40px;
    }
    .solutions__idea-items .link-showcase-title-wrapper {
        padding: 10px 0 50px 20px;
    }
    .solutions__idea-items .link-showcase-contnet-wrapper {
        padding-right: 20px;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title:before {
        font-size: 90px;
    }
    .elementor .elementor-element.solution__title:not(.elementor-motion-effects-element-type-background) {
        background-position: 25% center;
    }
}
@media (max-width: 1024px) {
    .solutions__letter-container {
        max-width: 195px;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title {
        gap: 20px;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title:before {
        font-size: 80px;
    }
}
@media (max-width: 880px) {
    .solutions__letter-container {
        max-width: 172px;
    }
    .solutions__letter-container .lletra-destacada {
        margin-bottom: -30px;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title:before {
        font-size: 70px;
    }
}
@media (min-width: 768px) {
    .solution__angle::after {
        position: absolute;
        content: "";
        top: 0;
        left: -1px;
        width: 72px;
        height: 80px;
        clip-path: polygon(-100% 0%, 100% 0%, 100% 0%, 0% 100%);
        background-color: var(--tertiary-color);
    }
}
@media (max-width: 767px) {
    .solutions__letter-container {
        position: absolute;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title {
        opacity: 1;
    }
    .solutions__idea-items .elementor-link-showcase-inner {
        flex-direction: column;
    }
    .solutions__idea-items .link-showcase-title-wrapper {
        padding: 0 0 40px 0;
    }
    .solutions__idea-items .link-showcase-title-inner .elementor-link-showcase-title:first-child {
        padding-top: 0;
    }
    .elementor .elementor-element.solution__title:not(.elementor-motion-effects-element-type-background) {
        background-position: 17% center;
    }
}
@media (max-width: 380px) {
    .solutions__idea-items .elementor-link-showcase-title a {
        font-size: 16px;
    }
}

/****** Products ******/
.elementor-productbox-item {
    position: relative;
    cursor: pointer;
    height: 100%;
    transition: all 0.3s;
}
.elementor-widget-diteck-productos-box .teambox-item-inner {
    position: relative;
    height: 100%;
    border-radius: 20px;
    overflow: hidden;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.elementor-productbox-item .teambox-item-inner:after {
    height: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%);
}
.elementor-productbox-item .teambox-item-inner:before, 
.elementor-productbox-item .teambox-item-inner:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 2;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.elementor-productbox-item:hover .teambox-item-inner:after {
    height: 100%;
}
.button-product-item {
    margin-bottom: 24px;
}
.elementor-widget-diteck-productos-box .product-image {
    position: relative;
    padding: 20px;
}
.elementor-widget-diteck-productos-box .product-image img {
    margin: auto;
}
.elementor-productbox-item .team-content {
    padding: 25px 20px;
}
.elementor-productbox-item .team-name {
    color: #ffffff;
    margin-bottom: 0;
    font-family: var(--font-archivo);
    font-size: 34px;
    font-weight: 300;
}
.elementor-productbox-item .button-product-detail:not(.button-product-item) {
    position: absolute;
    width: 62px;
    height: 38px;
    bottom: 0;
    right: 0;
    padding: 14px 0 0 14px;
    border-radius: 22px 0 0;
    background-color: #F4F8FF;
    z-index: 2;
}
.elementor-productbox-item .button-product-detail:before {
    content: "";
    width: 20px;
    height: 20px;
    clip-path: path("M 0 0 Q 0,20 21,21 L -1 21 Z");
    background-color: #F4F8FF;
    position: absolute;
    bottom: 100%;
    right: 0;
    transform: rotate(-90deg);
}
.elementor-productbox-item .button-product-detail .popup-icon:before {
    position: absolute;
    width: 48px;
    height: 48px;
    background-color: var(--secondary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    color: var(--primary-color);
    font-size: 30px;
    bottom: -22px;
    right: 0;
    z-index: 3;
    transition: all 0.3s ease;
    font-family: "diteck-icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    vertical-align: middle;
    content: "";
}
.elementor-productbox-item:hover .button-product-detail .popup-icon:before {
    background-color: var(--primary-color);
    color: #ffffff;
}
.elementor-productbox-item .button-product-detail:after {
    content: "";
    width: 20px;
    height: 20px;
    clip-path: path("M 0 0 Q 0,20 21,21 L -1 21 Z");
    background-color: #F4F8FF;
    position: absolute;
    bottom: 0;
    right: 100%;
    transform: rotate(-90deg);
}
.product__pfas-grid-last .elementor-widget-image:last-child {
    grid-column: 4 / span 2;
}
@media (max-width: 1200px) {
    .elementor-productbox-item .team-name {
        font-size: 26px;
    }
}
@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-widget-diteck-productos-box .d-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .product__pfas-grid-last .elementor-widget-image:last-child {
        grid-column: 1 / span 2;
    }
}
@media (max-width: 768px) {
    .elementor .elementor-element.elementor-widget-diteck-productos-box .d-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 500px) {
    .elementor .elementor-element.elementor-widget-diteck-productos-box .d-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

/****** About us ******/
.nosotros__team-grid .elementor-teambox-item .team-content {
    padding: 25px;
}
.nosotros__team-grid h4.team-name {
    font-size: 35px;
    font-weight: 700;
}
.nosotros__team-grid .elementor-teambox-item .button-popup-detail,
.nosotros__team-grid .elementor-teambox-item .button-popup-detail:before,
.nosotros__team-grid .elementor-teambox-item .button-popup-detail:after {
    background-color: #F4F8FF;
}
.nosotros__team-grid .elementor-teambox-item .button-popup-detail .popup-icon:before {
    background-color: var(--secondary-color);
    color: var(--primary-color);
    font-size: 30px;
}
.nosotros__team-grid .elementor-teambox-item:hover .button-popup-detail .popup-icon:before {
    background-color: var(--primary-color);
    color: #ffffff;
}
.nosotros__team-grid.elementor-widget-diteck-team-box .team-image img {
    filter: none;
}

/****** Contact ******/
input[type=text], input[type=email], textarea {
    padding: 12px 25px;
    font-size: 22px;
    font-weight: 400;
    color: var(--primary-color);
}
input[type=text]::placeholder, input[type=email]::placeholder, textarea::placeholder {
    color: var(--primary-color);
}
button.accordion-header {
    background-color: transparent;
    padding: 0;
    margin: 0;
    text-align: left;
}
.accordion-content {
    font-size: 20px;
    color: #ffffff;
}
.contacto__formulario label {
    font-weight: 500;
    color: #ffffff;
}
.wpcf7-form .submit-btn {
    margin-top: -30px;
    text-align: left;
}
.wpcf7-form .submit-btn input[type=submit] {
    width: fit-content;
    padding: 12px 25px;
    background-color: var(--secondary-color);
    color: var(--primary-color);
    font-family: var(--font-archivo);
    font-size: 22px;
    line-height: 22px;
    font-weight: 500;
    border-radius: 14px;
}
.wpcf7-form .submit-btn input[type=submit]:hover {
    background-color: var(--primary-color);
    color: #ffffff;
}

/****** Single post ******/
.page-id-3655 h1 {
    max-width: 820px;
    margin: 0 auto;
}
.single__entry-header {
    padding-top: 35px;
}
.single .widget-area {
    padding-top: 105px;
}
.single-post .single-content .post-thumbnail {
    padding-top: 0;
}
.single-post .single-content .post-thumbnail img {
    position: relative;
}

/****** Footer ******/
.footer__contact-list li {
    line-height: 1.2;
}
.footer__contact-list .elementor-icon-list-text {
    max-width: 540px;
}
.elementor-50 .elementor-element.footer__contact-list .elementor-icon-list-item:last-child .elementor-icon-list-text:hover {
    color: #ffffff;
}
.footer__xarxes .h3 {
    font-family: var(--font-archivo);
}
.footer__legals #lw-footer .lw-footer-wrapper {
    background-color: transparent;
}
.footer__legals #lw-footer div.lawwwing-document-open,
.footer__legals #lw-footer div.lw-consent-edit,
.footer__legals #lw-footer span {
    color: #ffffff;
    font-size: 18px;
    font-weight: 300;
}
.footer__legals #lw-footer div.lw-consent-edit {
    margin-right: 0;
}
.footer__legals #lw-footer div.lawwwing-document-open:hover,
.footer__legals #lw-footer div.lw-consent-edit:hover {
    font-weight: 300;
}
#lw-footer:not(.footer__lw-footer) {
    display: none;
}
@media (max-width: 600px) {
    .footer__legals #lw-footer .lw-footer-wrapper {
        flex-direction: row;
        justify-content: flex-start;
    }
    .footer__legals #lw-footer div.lawwwing-document-open,
    .footer__legals #lw-footer div.lw-consent-edit {
        margin: 0 1em 0 0;
    }
}
@media (max-width: 580px) {
    .footer__legals ul {
        row-gap: 20px;
    }
}
@media (max-width: 400px) {
    .p1-destacat.footer__contact-list * {
        font-size: 18px;
    }
    .elementor-widget.footer__contact-list .elementor-icon-list-icon svg {
        width: 40px;
        height: 40px;
    }
    .footer__xarxes h3 {
        font-size: 18px;
    }
}