/*
    Theme Name: Tictradeinternational
    Theme URI: 
    Author: Anahi Luna
    Author URI: 
    Description: Theme Diseñado para Tictradeinternational
    Version: 1.0
    License: GNU General Public License v2 or later
    License URI: http://www.gnu.org/licenses/gpl-2.0.html
    Tags: flexbox, css grid, mobile first
    Text Domain: Tictradeinternational
*/

@font-face {
    font-family: "Syne";
    src: url("./assets/fonts/Montserrat-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "DM_Sans";
    src: url("./assets/fonts/DM_Sans/DMSans-VariableFont_opsz\,wght.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html {
    box-sizing: border-box;
    margin: 0 !important;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'DM_Sans', sans-serif;
    background-color: #f7f7f7;
}


.logo-principal {
    height: auto;
    max-height: 100px;
    width: 150px;
}

.navbar-brand.logo-secundario-wrapper {
    width: auto;
    height: auto;
    max-height: 100px;
    overflow: hidden;
}

.navbar-brand.logo-secundario-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.sticky-top {
    background-color: #ffffff;
}

a {
    text-decoration: none;
}

ul {
    list-style: none;
}

.navbar-expand-lg .navbar-nav {
    width: 100%;
    justify-content: space-around;
}

.menu-item a {
    color: #da741c !important;
    font-family: 'DM_Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    text-transform: uppercase;
}

.menu-item a:hover {
    color: #1c1c1c;
}

/*Hero banner */
.banner__hero {
    max-width: 100%;
    overflow: hidden;
    width: 100%;
}

.banner-slider {
    position: relative;
}

.slide-content {
    position: relative;
    height: 600px;
    max-height: 600px;
    min-height: unset;
}

.slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.slide-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.3) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.slide-text {
    text-align: left;
    color: white;
    max-width: 100%;
    padding: 0 20px;
}

.slide-title {
    font-family: 'Syne', sans-serif;
    font-size: 3.5rem;
    font-weight: 800;
    margin-bottom: 1rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.slide-description {
    font-size: 2rem;
    margin-bottom: 2rem;
    line-height: 1.6;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.slide-tag {
    font-family: 'Syne', sans-serif;
    font-size: 1.875rem;
    margin-bottom: 2rem;
    margin-top: 2rem;
    line-height: 1.6;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.slide-button {
    background-color: #da741c;
    color: white;
    padding: 12px 30px;
    border-radius: 5px;
    font-weight: 600;
    text-transform: uppercase;
    transition: background-color 0.3s ease;
    border-color: transparent;
}

.slide-button:hover {
    background-color: white;
    color: #b8641f;
    border-color: transparent;
}

@media (max-width: 1024px) {
    .slide-content {
        height: 700px;
        max-height: 700px;
    }
}


@media (max-width: 768px) {
    .slide-content {
        height: 550px;
        max-height: 550px;
    }

    .slide-title {
        font-size: 2rem;
    }

    .slide-description {
        font-size: 1rem;
    }

    .slide-tag {
        font-size: 1rem;
    }

    .slide-button {
        padding: 10px 20px;
    }
    .navbar-brand.logo-secundario-wrapper img {
        width: 170px;
        min-height: 76px;
    }
}

.splide__arrows {
    display: none;
}

/*Sección Metricas */

.metricas__section {
    padding: 80px 0;
    position: relative;
    overflow: hidden;
    background-color: #1d1d1b;
}

.metricas__section .container {
    position: relative;
    z-index: 1;
}

.metricas__titulo {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    color: #da741c;
    margin: 0 0 12px;
}

.metricas__descripcion {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.6;
    text-align: center;
    color: white;
    margin: 0 auto 56px;
}

.metricas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 24px;
}

.metrica-item {
    background: #da741c;
    border-radius: 20px;
    padding: 36px 24px 28px;
    border: 1px solid #1d1d1b;
    border-top: 3px solid #1d1d1b;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    position: relative;
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease, border-top-color .3s;
    min-height: 400px;
    justify-content: center;
}

.metrica-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 40px rgba(217, 120, 43, .15);
    border-top-color: #b8641f;
}

.metrica-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, .45),
            transparent);
    transform: skewX(-15deg);
    transition: left .6s ease;
    pointer-events: none;
    z-index: 2;
}

.metrica-item:hover::before {
    left: 130%;
}

.metrica-icono-wrap {
    position: relative;
    width: 180px;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.metrica-icono-ring {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid rgba(217, 120, 43, .3);
    animation: metrica-ring 3s ease-out infinite;
}

.metrica-icono-ring--2 {
    animation-delay: .8s;
    border-color: rgba(217, 120, 43, .18);
}

.metrica-item:nth-child(2) .metrica-icono-ring {
    animation-delay: .4s;
}

.metrica-item:nth-child(2) .metrica-icono-ring--2 {
    animation-delay: 1.2s;
}

.metrica-item:nth-child(3) .metrica-icono-ring {
    animation-delay: .8s;
}

.metrica-item:nth-child(3) .metrica-icono-ring--2 {
    animation-delay: 1.6s;
}

.metrica-item:nth-child(4) .metrica-icono-ring {
    animation-delay: 1.2s;
}

.metrica-item:nth-child(4) .metrica-icono-ring--2 {
    animation-delay: 2s;
}

.metrica-item:nth-child(5) .metrica-icono-ring {
    animation-delay: 1.6s;
}

.metrica-item:nth-child(5) .metrica-icono-ring--2 {
    animation-delay: 2.4s;
}

.metrica-item:nth-child(6) .metrica-icono-ring {
    animation-delay: 2s;
}

.metrica-item:nth-child(6) .metrica-icono-ring--2 {
    animation-delay: 2.8s;
}

@keyframes metrica-ring {
    0% {
        opacity: .8;
        transform: scale(.85);
    }

    70% {
        opacity: .1;
        transform: scale(1.4);
    }

    100% {
        opacity: 0;
        transform: scale(1.6);
    }
}

.metrica-icono {
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: #fbf1e9;
    border: 1.5px solid #ecbd97;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    transition: background .3s, border-color .3s;
}

.metrica-item:hover .metrica-icono {
    background: #da741c;
    border-color: #da741c;
    transform: none;
    animation: none;
}

.metrica-icono::before {
    content: '';
    position: absolute;
    inset: -12px;
    border-radius: 50%;
    background: radial-gradient(circle at 40% 40%,
            rgba(217, 120, 43, .22) 0%,
            rgba(217, 120, 43, .06) 60%,
            transparent 100%);
    z-index: -1;
    animation: fondo-orbit 4s ease-in-out infinite;
}

.metrica-item:nth-child(2) .metrica-icono::before {
    animation-delay: .5s;
    animation-duration: 4.6s;
}

.metrica-item:nth-child(3) .metrica-icono::before {
    animation-delay: 1s;
    animation-duration: 3.8s;
}

.metrica-item:nth-child(4) .metrica-icono::before {
    animation-delay: 1.5s;
    animation-duration: 5s;
}

.metrica-item:nth-child(5) .metrica-icono::before {
    animation-delay: 2s;
    animation-duration: 4.2s;
}

.metrica-item:nth-child(6) .metrica-icono::before {
    animation-delay: 2.5s;
    animation-duration: 4.8s;
}

@keyframes fondo-orbit {
    0% {
        transform: translate(0px, 0px) scale(1);
        opacity: .8;
    }

    25% {
        transform: translate(6px, -8px) scale(1.1);
        opacity: 1;
    }

    50% {
        transform: translate(-5px, -6px) scale(.9);
        opacity: .7;
    }

    75% {
        transform: translate(4px, 4px) scale(1.05);
        opacity: .9;
    }

    100% {
        transform: translate(0px, 0px) scale(1);
        opacity: .8;
    }
}

.metrica-icono::after {
    content: '';
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    background: radial-gradient(circle at 65% 60%,
            rgba(217, 120, 43, .15) 0%,
            transparent 70%);
    z-index: -1;
    animation: fondo-orbit-2 5.5s ease-in-out infinite reverse;
}

.metrica-item:nth-child(2) .metrica-icono::after {
    animation-delay: .8s;
}

.metrica-item:nth-child(3) .metrica-icono::after {
    animation-delay: 1.6s;
}

.metrica-item:nth-child(4) .metrica-icono::after {
    animation-delay: 2.4s;
}

.metrica-item:nth-child(5) .metrica-icono::after {
    animation-delay: 3.2s;
}

.metrica-item:nth-child(6) .metrica-icono::after {
    animation-delay: 4s;
}

@keyframes fondo-orbit-2 {
    0% {
        transform: translate(0, 0) scale(1);
    }

    33% {
        transform: translate(-7px, 5px) scale(1.15);
    }

    66% {
        transform: translate(5px, -4px) scale(.88);
    }

    100% {
        transform: translate(0, 0) scale(1);
    }
}

.metrica-item:hover .metrica-icono::before {
    animation-play-state: paused;
    background: radial-gradient(circle at 40% 40%,
            rgba(255, 255, 255, .25) 0%,
            transparent 70%);
}

.metrica-item:hover .metrica-icono::after {
    animation-play-state: paused;
    opacity: 0;
}

.metrica-icono-img {
    width: 165px;
    height: 165px;
    object-fit: contain;

    transition: filter .3s;
    animation: none;
    transform: none;
    position: relative;
    z-index: 2;
}

.metrica-item:hover .metrica-icono-img {
    filter: brightness(0) invert(1);
    transform: none;
}

.metrica-icono-fallback {
    font-family: 'Syne', sans-serif;
    font-size: 1.1rem;
    font-weight: 800;
    color: #da741c;
    transition: color .3s;
    position: relative;
    z-index: 2;
}

.metrica-item:hover .metrica-icono-fallback {
    color: #ffffff;
}

.metrica-texto {
    width: 100%;
}

.metrica-titulo {
    font-family: 'DM Sans', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: #1d1d1b;
    letter-spacing: .06em;
    line-height: 1.2;
    overflow: hidden;
    text-align: center;
    transition: color .25s;
}

.metrica-item:hover .metrica-titulo {
    color: white;
}

@media (max-width: 1024px) {
    .metricas-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .metricas__section {
        padding: 60px 0;
    }

    .metricas-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .metrica-titulo {
        white-space: normal;
        text-align: center;
        font-size: 1rem;
        letter-spacing: normal;
    }
}

@media (max-width: 480px) {
    .metricas-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .metrica-item {
        padding: 28px 16px 22px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .metrica-icono::before,
    .metrica-icono::after,
    .metrica-icono-ring,
    .metrica-item::before {
        animation: none !important;
        transition: none !important;
    }
}

/* Cards Section */
.cards__section {
    padding: 80px 0;
    background-color: #fff;
}

.cards__section .titulo__seccion {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 700;
    line-height: 120%;
    text-align: center;
    color: #da741c;
}

.cards__section .descripcion {
    font-family: 'DM_Sans', sans-serif;
    font-size: 2rem;
    font-weight: 400;
    line-height: 120%;
    text-align: center;
    max-width: 100%;
    margin-bottom: 60px;
}

.cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 30px;
    padding-top: 30px;
}

.card-item {
    position: relative;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 14px 40px rgba(0, 0, 0, 0.15);
    overflow: visible;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 2px solid #da741c;
}

.card-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 24px 50px rgba(0, 0, 0, 0.2);
}

.background__white {
    width: 100%;
    height: 200px;
    background: transparent;
    flex-shrink: 0;
}

.card-img-zone {
    width: 100%;
    background: #1c1c1c;
    height: 200px;
    position: relative;
    overflow: visible;
    flex-shrink: 0;
}

.card-img-zone img {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 350px;
    width: auto;
    object-fit: contain;
    filter: drop-shadow(0 -8px 20px rgba(0, 0, 0, 0.3));
    z-index: 2;
}

.card__borde {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
    border-radius: 0 0 18px 18px;
}

.card-body {
    width: 100%;
    background: #ffffff;
    padding: 24px 24px 0;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    z-index: 1;
}

.card-label {
    font-family: 'Syne', sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #da741c;
    margin-bottom: 6px;
}

.card-title {
    font-family: 'Syne', sans-serif;
    font-size: 1.6rem;
    font-weight: 800;
    color: #1c1c1c;
    margin-bottom: 14px;
}

.card-desc {
    font-size: 0.95rem;
    line-height: 1.6;
    color: #666;
    margin-bottom: 0;
    flex: 1;
}

.card-stats {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-radius: 0 0 18px 18px;
    overflow: hidden;
    background: #da741c;
    margin-top: auto;
}

.card-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px 8px;
    border-right: 1px solid rgba(255, 255, 255, 0.25);
}

.card-stat:last-child {
    border-right: none;
}

.card-stat-value {
    font-family: 'Syne', sans-serif;
    font-size: 1.6rem;
    font-weight: 800;
    color: #fff;
    line-height: 1;
}

.card-stat-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.8);
    margin-top: 4px;
}

.card-cta-wrap {
    width: 100%;
    padding: 20px 24px;
    margin-top: auto;
}

.card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 12px 24px;
    border-radius: 999px;
    background-color: #da741c;
    color: #ffffff;
    font-weight: 700;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    transition: background-color 0.25s ease, transform 0.25s ease;
}

.card-cta:hover {
    background-color: #1c1c1c;
    transform: translateY(-2px);
    color: #fff;
}


@media (max-width: 1024px) {
    .cards-grid {
        grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
        gap: 15px;
    }

    .background__white {
        height: 120px;
    }

    .card-img-zone {
        height: 120px;
    }

    .card-img-zone img {
        height: 210px;
    }

    .card-title {
        font-size: 1.2rem;
    }

    .card-body {
        padding: 12px 12px 0;
        text-align: left;
        align-items: flex-start;
    }

    .card-cta-wrap {
        padding: 10px 12px;
    }
}

@media (max-width: 768px) {
    .cards__section {
        padding: 0;
    }

    .cards-grid {
        padding-top: 60px;
        gap: 50px;
        display: flex;
        flex-direction: column;
    }

    .background__white,
    .card-img-zone {
        height: 160px;
    }

    .card-img-zone img {
        height: 300px;
    }

    .card-title {
        font-size: 1.3rem;
    }

    .card-body {
        text-align: left;
        align-items: flex-start;
    }
}

/* ════════════════════════════════SECCIÓN ════════════════════════════════ */

.valores__section {
    padding: 120px 0 220px;
    background-color: #ffffff;
    position: relative;
}

.valores__section .section-header {
    text-align: center;
}

.valores__section h2 {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    margin: 0;
    color: #da741c;
}

.valores-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px;
    align-items: flex-start;
    position: relative;
    z-index: 1;
}

.valor-item--pos-0 {
    margin-top: 259px;
    transform: translate(45px, 10px);
}

.valor-item--pos-1 {
    margin-top: 340px;
    transform: translate(20px, 155px);
}

.valor-item--pos-2 {
    margin-top: 0px;
    transform: translate(-55px, 10px);
}

.valor-img-wrap {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
    border-radius: 20px;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0px;
}

.valor-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.valor-img-block {
    position: relative;
    text-align: center;
}

.valor-num {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #da741c;
    color: #fff;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 25px rgba(217, 120, 43, .4);
}

.valor-content {
    text-align: center;
    margin-top: 40px;
}

.valor-title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 8px;
}

.valor-desc {
    font-size: 14px;
    color: #6b6b6b;
}

.valores__curva-wrap {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 50%;
    height: 70%;
    z-index: 0;
    pointer-events: none;
    top: 228px;
    opacity: 0.1;
    transform: translate(-50%, -24px);
}

.valores__curva-svg {
    width: 100%;
    height: 100%;
    display: block;
    fill: #da741c;
}

.valor-item {
    position: relative;
    z-index: 2;
}

@media (max-width: 1600px) {
    .valor-item--pos-0 {
        margin-top: 259px;
        transform: translate(133px, 10px);
    }

    .valor-item--pos-1 {
        margin-top: 340px;
        transform: translate(50px, 220px);
    }

    .valor-item--pos-2 {
        margin-top: 0px;
        transform: translate(-130px, 10px);
    }
}

@media (max-width: 1024px) {
    .valores-grid {
        grid-template-columns: 1fr;
        gap: 60px;
    }

    .valor-item--pos-0,
    .valor-item--pos-1,
    .valor-item--pos-2 {
        margin-top: 0;
        max-width: 400px;
    }

    .valor-item--pos-0 {
        transform: translate(465px, 10px);
    }

    .valor-item--pos-1 {
        transform: translate(400px, 200px);
    }

    .valor-item--pos-2 {
        transform: translate(30px, -510px);
    }
}

@media (max-width: 993px) {
    .valores-grid {
        grid-template-columns: 1fr;
        gap: 60px;
    }

    .valor-item--pos-0,
    .valor-item--pos-1,
    .valor-item--pos-2 {
        margin-top: 0;
        max-width: 400px;
    }

    .valor-item--pos-0 {
        transform: translate(365px, 10px);
    }

    .valor-item--pos-1 {
        transform: translate(285px, 220px);
    }

    .valor-item--pos-2 {
        transform: translate(-80px, -510px);
    }
}

@media (max-width: 768px) {
    .valores__section {
        padding: 120px 0 50px;
    }

    .valor-item--pos-0 {
        transform: translate(205px, 10px);
    }

    .valor-item--pos-1 {
        transform: translate(170px, 220px);
    }

    .valor-item--pos-2 {
        transform: translate(-135px, -420px);
    }
}

@media (max-width: 600px) {

    .valor-item--pos-0,
    .valor-item--pos-1,
    .valor-item--pos-2 {
        max-width: 200px;
    }

    .valor-item--pos-0 {
        transform: translate(150px, 10px);
    }

    .valor-item--pos-1 {
        transform: translate(145px, 15px);
    }

    .valor-item--pos-2 {
        transform: translate(14px, -80px);
    }
}

/* Sección Contacto */
.contact__section {
    padding: 80px 0;
    background-color: #fff;
    text-align: center;
}

.titulo__seccion {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    color: #333;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.descripcion {
    font-family: 'DM_Sans', sans-serif;
    font-size: 1.2rem;
    color: #666;
    margin-bottom: 3rem;
    line-height: 1.6;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* Estilos para Contact Form 7 */
.wpcf7 {
    max-width: 800px;
    margin: 0 auto;
}

.wpcf7-form {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1.5rem;
    align-items: start;
}

.wpcf7-form p {
    margin: 0;
}

/* Nombre, email, asunto en la primera fila */
.wpcf7-form p:nth-child(1),
.wpcf7-form p:nth-child(2),
.wpcf7-form p:nth-child(3),
.wpcf7-form p:nth-child(4) {
    grid-column: span 1;
}

/* Mensaje ocupa toda la fila */
.wpcf7-form p:nth-child(5) {
    grid-column: 1 / -1;
    padding: 0;
    margin: 0;
    width: 100%;
}

/* Botón ocupa toda la fila, alineado a la derecha */
.wpcf7-form p:nth-child(6) {
    grid-column: 1 / -1;
    text-align: right;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea {
    width: 100%;
    padding: 1rem;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-family: 'DM_Sans', sans-serif;
    font-size: 1rem;
    transition: border-color 0.3s ease;
    box-sizing: border-box;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form textarea:focus {
    outline: none;
    border-color: #da741c;
}

.wpcf7-form textarea {
    resize: vertical;
    min-height: 120px;
}

.wpcf7-form label {
    text-align: left;
    width: 100%;
}

.wpcf7-form input[type="submit"] {
    background-color: #da741c;
    color: #fff;
    border: none;
    padding: 1rem 2rem;
    border-radius: 8px;
    font-family: 'DM_Sans', sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease;
    display: block;
    margin-left: auto;
    margin-right: 0;
}

.wpcf7-form input[type="submit"]:hover {
    background-color: #b8641f;
}

.wpcf7-response-output {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 8px;
    font-family: 'DM_Sans', sans-serif;
    grid-column: 1 / -1;
}

.wpcf7-mail-sent-ok {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.wpcf7-validation-errors,
.wpcf7-mail-sent-ng {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* Responsive Contacto */
@media (max-width: 768px) {

    .contact__section {
        padding: 60px 0;
    }

    .titulo__seccion {
        font-size: 2rem;
    }

    .descripcion {
        font-size: 1rem;
        margin-bottom: 2rem;
    }

    .wpcf7 {
        max-width: 100%;
        padding: 0 1rem;
    }

    .wpcf7-form {
        grid-template-columns: 1fr;
        /* Una columna en móvil */
    }

    .wpcf7-form p:nth-child(1),
    .wpcf7-form p:nth-child(2),
    .wpcf7-form p:nth-child(3),
    .wpcf7-form p:nth-child(4),
    .wpcf7-form p:nth-child(5) {
        grid-column: auto;
        text-align: left;
    }

    .wpcf7-form input[type="submit"] {
        margin-left: 0;
    }
}

/* ── Banner Simple ── */
.banner__simple {
    padding: 0;
}

.banner__simple-inner {
    position: relative;
    overflow: hidden;
    width: 100%;
}

/* ── Imagen ── */
.banner__simple-picture {
    display: block;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.banner__simple-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;

}

/* ── Overlay sobre imagen ── */
.banner__simple-inner::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
            rgba(0, 0, 0, .65) 0%,
            rgba(0, 0, 0, .35) 50%,
            rgba(0, 0, 0, .05) 100%);
    pointer-events: none;
}

/* ── Contenido de texto ── */
.banner__simple-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.banner__simple-title {
    font-family: 'Syne', sans-serif;
    font-size: clamp(1.6rem, 3vw, 2.6rem);
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0 0 16px;
}

/* Acento naranja en la primera palabra si se quiere */
.banner__simple-title span {
    color: #da741c;
}

.banner__simple-desc {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.5rem;
    color: rgba(255, 255, 255, .8);
    line-height: 1.65;
    margin: 0;
}

/* ── Variante: sin imagen (fondo sólido) ── */
.banner__simple--solid .banner__simple-inner {
    background: #1c1c1c;
    min-height: 280px;
}

.banner__simple--solid .banner__simple-inner::after {
    display: none;
}

/* ── Variante: fondo naranja ──*/
.banner__simple--orange .banner__simple-inner {
    background: #da741c;
    min-height: 280px;
}

.banner__simple--orange .banner__simple-inner::after {
    display: none;
}

/* ── Línea decorativa izquierda ── */
.banner__simple-title::before {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: #da741c;
    border-radius: 2px;
    margin-bottom: 16px;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
    .banner__simple-img {
        height: 320px;
    }

    .banner__simple-content {
        padding: 40px 44px;
    }
}

@media (max-width: 768px) {
    .banner__simple-picture {
        height: auto;
    }

    .banner__simple-img {
        height: 100%;
        object-position: center top;
    }

    .banner__simple-inner::after {
        background: linear-gradient(to bottom,
                rgba(0, 0, 0, .15) 0%,
                rgba(0, 0, 0, .70) 60%,
                rgba(0, 0, 0, .80) 100%);
    }

    .banner__simple-content {
        justify-content: flex-end;
        padding: 28px 28px 36px;
        max-width: 100%;
    }

    .banner__simple-title::before {
        width: 32px;
        margin-bottom: 12px;
    }

    .banner__simple-desc {
        font-size: 1.2rem;
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .banner__simple-img {
        height: 380px;
    }

    .banner__simple-content {
        padding: 24px 20px 28px;
    }
}

/* ── Sección Texto + Valores ── */
.texto__valores {
    padding: 96px 0;
    background-color: #ffffff;
}

.texto__valores-header {
    text-align: center;
    max-width: 100%;
    margin: 0 auto 64px;
}

.texto__valores-tag {
    display: inline-block;
    font-family: 'DM Sans', sans-serif;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #da741c;
    margin-bottom: 14px;
    position: relative;
    padding: 0 24px;
}

.texto__valores-tag::before,
.texto__valores-tag::after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 2px;
    background: #da741c;
    border-radius: 2px;
}

.texto__valores-tag::before {
    left: 0;
}

.texto__valores-tag::after {
    right: 0;
}

.texto__valores-title {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    color: #da741c;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0 0 16px;
}

.texto__valores-desc {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.5rem;
    line-height: 1.7;
    color: #222222;
    margin: 0;
}

.texto__valores-grid {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    border-radius: 16px;
    overflow: hidden;
}

.texto__valores-item {
    background: #1c1c1c;
    display: flex;
    flex-direction: column;
    transition: background .25s;
    position: relative;
    border: 2px solid #da741c;
    border-radius: 16px;
    align-items: center;
    overflow: hidden;
    height: 400px;
    justify-content: space-between;
    text-align: center;
    width: 30.33%;
    cursor: pointer;
    min-height: 500px;
}

.texto__valores-icon {
    width: 100%;
    height: 166.66px;
    background-color: #da741c;
}

.space__card {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 166.66px;
    background-color: white;
    overflow: hidden;
}

.space__card img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.titulo__card {
    width: 100%;
    height: 166.66px;
    background-color: #1c1c1c;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.texto__valores-item>* {
    position: relative;
    z-index: 1;
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(50px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.slide-in-left.animate {
    opacity: 0;
    transform: translateX(-50px);
    animation: slideInLeft 0.8s ease-out forwards;
}

.slide-in-right.animate {
    opacity: 0;
    transform: translateX(50px);
    animation: slideInRight 0.8s ease-out forwards;
}

.texto__valores-item:hover .texto__valores-name {
    color: #da741c;
}

.texto__valores-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.texto__valores-icon img {
    width: 150px;
    height: 150px;
    object-fit: contain;
}

.texto__valores-name {
    font-family: 'Syne', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -.01em;
    line-height: 1.25;
    margin: 0;
}

.texto__valores--light {
    background-color: #f7f4ec;
}

.texto__valores--light .texto__valores-grid {
    background: #ede7d4;
}

.texto__valores--light .texto__valores-item {
    background: #f7f4ec;
}

.texto__valores--light .texto__valores-item:hover {
    background: #ffffff;
}

.texto__valores--light .texto__valores-title {
    color: #1c1c1c;
}

.texto__valores--light .texto__valores-desc {
    color: #6b6b6b;
}

.texto__valores--light .texto__valores-name {
    color: #1c1c1c;
}

.texto__valores--light .texto__valores-text {
    color: #6b6b6b;
}

.texto__valores--light .texto__valores-icon {
    background: rgba(217, 120, 43, .08);
}

/* ── Responsive ── */

@media (max-width: 1024px) {
    .texto__valores {
        padding: 72px 0;
    }

    .texto__valores-grid {
        gap: 10px;
        justify-content: center;
    }

    .texto__valores-item {
        width: 48%;
    }
}

@media (max-width: 768px) {
    .texto__valores {
        padding: 56px 0;
    }

    .texto__valores-grid {
        flex-direction: column;
        gap: 20px;
    }

    .texto__valores-header {
        margin-bottom: 40px;
    }

    .texto__valores-item {
        width: 100%;
    }

    .space__card img {
        object-fit: contain;
    }
}

@media (max-width: 480px) {
    .texto__valores-item {
        width: 100%;
        min-width: 300px;
    }

    .texto__valores-icon {
        flex-shrink: 0;
    }

    .texto__valores-name {
        flex: 1;
        align-self: center;
        font-size: 1.5rem;
    }

    .texto__valores-text {
        width: 100%;
        padding-left: 0px;
    }
}

/* ════════════════════════════════════════════════════ BLOQUE FLIP CARD ════════════════════════════════════════════════════ */

.flipbloque {
    --orange: #da741c;
    --orange-soft: rgba(217, 120, 43, .10);
    --orange-mid: rgba(217, 120, 43, .22);
    --dark: #1d1d1b;
    --white: #ffffff;
    --text-muted: rgba(255, 255, 255, .62);
    --radius-card: 28px;
    --radius-item: 18px;
    --transition-layout: .55s cubic-bezier(.4, 0, .2, 1);
    --transition-spring: .65s cubic-bezier(.34, 1.56, .64, 1);

    padding: 96px 0;
    background: #f7f7f7;
    overflow: hidden;
}

.flipbloque__titulo {
    font-family: 'Syne', sans-serif;
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 800;
    color: var(--orange);
    letter-spacing: -.03em;
    line-height: 1.08;
    text-align: center;
    margin: 0 0 64px;
}

.flipbloque__wrapper {
    width: 100%;
}

.flipbloque__card {
    position: relative;
    border-radius: var(--radius-card);
    overflow: hidden;
    cursor: pointer;
    user-select: none;
    min-height: 480px;
    opacity: 0;
    transform: translateY(32px) scale(.96);
    transition:
        opacity .5s ease,
        transform var(--transition-spring);
}

.flipbloque__card.is-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.flipbloque__frente {
    position: absolute;
    inset: 0;
    background: var(--orange);
    border-radius: var(--radius-card);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 28px;
    padding: 48px 40px;
    z-index: 2;
    overflow: hidden;
    transition: opacity .4s ease, transform .4s ease;
}

.flipbloque__frente::before {
    content: "";
    position: absolute;
    top: -40px;
    left: -40px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0.06);
    background-image: url(./assets/img/TIC-WHITE.png);
    background-size: 120px;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 1;
    pointer-events: none;
    z-index: 9;
}

.flipbloque__frente::after {
    content: '';
    position: absolute;
    bottom: -60px;
    right: -60px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .06);
    pointer-events: none;
}

/* Ocultar frente al girar */
.flipbloque__card.is-flipped .flipbloque__frente {
    opacity: 0;
    transform: scale(.92);
    pointer-events: none;
    z-index: 1;
}

.flipbloque__frente-hero {
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
}

.flipbloque__frente-hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-card);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0) 100%);
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0) 100%);
    opacity: .55;
    transition: opacity .4s ease;
}

.flipbloque__card:hover .flipbloque__frente-hero-img {
    opacity: .35;
}

.flipbloque__frente-centro {
    position: relative;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
}

.flipbloque__frente-icono-wrap {
    position: relative;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .22);
    display: flex;
    align-items: center;
    justify-content: center;
    animation: flip-float 3.6s ease-in-out infinite;
}

.flipbloque__frente-icono {
    width: 56px;
    height: 56px;
    object-fit: contain;
    filter: brightness(0) invert(1);
    transition: transform .4s ease;
}

.flipbloque__card:hover .flipbloque__frente-icono {
    transform: scale(1.14) rotate(-5deg);
}

.flipbloque__pulse {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    border: 1.5px solid rgba(255, 255, 255, .35);
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.flipbloque__pulse--1 {
    width: 148px;
    height: 148px;
    animation: flip-ring 2.6s ease-out infinite;
}

.flipbloque__pulse--2 {
    width: 190px;
    height: 190px;
    animation: flip-ring 2.6s ease-out infinite .6s;
}

.flipbloque__reverso {
    position: absolute;
    inset: 0;
    border-radius: var(--radius-card);
    display: grid;
    grid-template-columns: 1fr 1fr;
    z-index: 1;
    opacity: 0;
    transform: scale(.94) translateY(10px);
    transition: opacity .4s ease .1s, transform .5s var(--transition-spring) .05s;
    pointer-events: none;
    overflow: hidden;
}

.flipbloque__card.is-flipped .flipbloque__reverso {
    opacity: 1;
    transform: scale(1) translateY(0);
    pointer-events: auto;
    z-index: 2;
    background: var(--dark);
}

.flipbloque__reverso-izq {
    padding: 44px 36px 75px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 24px;
    position: relative;
    overflow: hidden;
}

.flipbloque__reverso-izq::before {
    content: "";
    position: absolute;
    top: -40px;
    left: -40px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: url(./assets/img/TIC-WHITE.png) center / 100px no-repeat rgba(255, 255, 255, .06);
    pointer-events: none;
}

.flipbloque__reverso-der {
    padding: 44px 36px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 24px;
    border-left: 1px solid rgba(217, 120, 43, .12);
}

.flipbloque__reverso-titulo {
    font-family: 'Syne', sans-serif;
    font-size: clamp(1.3rem, 2vw, 1.75rem);
    font-weight: 800;
    color: var(--white);
    letter-spacing: -.02em;
    line-height: 1.15;
    margin: 0 0 4px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.flipbloque__reverso-titulo-second {
    font-family: 'Syne', sans-serif;
    font-size: clamp(1.3rem, 2vw, 1.75rem);
    font-weight: 800;
    color: var(--orange);
    letter-spacing: -.02em;
    line-height: 1.15;
    margin: 0 0 4px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(217, 120, 43, .15);
    text-align: center;
}

.flipbloque__reverso-titulo-second span {
    font-size: 2.2rem;
    display: block;
    line-height: 1.1;
}

.flipbloque__servicios {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    gap: 12px;
}

.flipbloque__servicio-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    border-radius: var(--radius-item);
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .08);
    opacity: 0;
    transform: translateX(-12px);
    transition:
        opacity .4s ease,
        transform .55s cubic-bezier(.34, 1.56, .64, 1),
        background .25s,
        border-color .25s;
}

.flipbloque__servicio-item.is-visible {
    opacity: 1;
    transform: translateX(0);
}

.flipbloque__servicio-item:hover {
    background: rgba(217, 120, 43, .12);
    border-color: rgba(217, 120, 43, .3);
    transform: translateX(4px);
}

.flipbloque__servicio-icon {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 12px;
    background: var(--orange-soft);
    border: 1px solid var(--orange-mid);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .25s, transform .25s;
}

.flipbloque__servicio-item:hover .flipbloque__servicio-icon {
    background: var(--orange);
    transform: scale(1.08) rotate(-4deg);
}

.flipbloque__servicio-img {
    width: 26px;
    height: 26px;
    object-fit: contain;
    filter: invert(54%) sepia(60%) saturate(600%) hue-rotate(350deg) brightness(95%);
    transition: filter .25s;
}

.flipbloque__servicio-item:hover .flipbloque__servicio-img {
    filter: brightness(0) invert(1);
}

.flipbloque__servicio-titulo {
    font-family: 'Syne', sans-serif;
    font-size: .95rem;
    font-weight: 700;
    color: var(--white);
    line-height: 1.25;
}

.flipbloque__difs {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.flipbloque__dif-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    border-radius: var(--radius-item);
    border: 1px solid rgba(217, 120, 43, .1);
    background: #fafafa;
    opacity: 0;
    transform: scale(.85) translateX(20px);
    transition:
        opacity .4s ease,
        transform .6s cubic-bezier(.34, 1.56, .64, 1),
        box-shadow .25s,
        border-color .25s;
}

.flipbloque__dif-item.is-visible {
    opacity: 1;
    transform: scale(1) translateX(0);
}

.flipbloque__dif-item:hover {
    box-shadow: 0 8px 28px rgba(217, 120, 43, .14);
    border-color: rgba(217, 120, 43, .3);
    transform: translateY(-2px);
}

.flipbloque__dif-icon {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    border-radius: 12px;
    background: var(--orange-soft);
    border: 1px solid var(--orange-mid);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .25s, transform .25s;
}

.flipbloque__dif-item:hover .flipbloque__dif-icon {
    background: var(--orange);
    transform: scale(1.08) rotate(-3deg);
}

.flipbloque__dif-img {
    width: 28px;
    height: 28px;
    object-fit: contain;
    filter: invert(54%) sepia(60%) saturate(600%) hue-rotate(350deg) brightness(95%);
    transition: filter .25s;
}

.flipbloque__dif-item:hover .flipbloque__dif-img {
    filter: brightness(0) invert(1);
}

.flipbloque__dif-titulo {
    font-family: 'Syne', sans-serif;
    font-size: .95rem;
    font-weight: 700;
    color: #0a0a0a;
    line-height: 1.25;
}

@keyframes flip-float {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-9px);
    }
}

@keyframes flip-ring {
    0% {
        opacity: .6;
        transform: translate(-50%, -50%) scale(.82);
    }

    70% {
        opacity: .1;
        transform: translate(-50%, -50%) scale(1.2);
    }

    100% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(1.45);
    }
}

@media (max-width: 1024px) {
    .flipbloque__frente-icono-wrap {
        width: 90px;
        height: 90px;
    }

    .flipbloque__frente-icono {
        width: 46px;
        height: 46px;
    }

    .flipbloque__reverso-izq,
    .flipbloque__reverso-der {
        padding: 36px 28px;
    }

    .flipbloque__card {
        min-height: 580px;
    }

    .flipbloque__servicios {
        flex-direction: column;
    }
}

@media (max-width: 768px) {
    .flipbloque {
        padding: 72px 0;
    }

    .flipbloque__reverso {
        grid-template-columns: 1fr;
        overflow-y: auto;
        max-height: 100%;
    }

    .flipbloque__reverso-izq {
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }

    .flipbloque__servicios {
        flex-direction: column;
    }

    .flipbloque__reverso-der {
        border-left: none;
        border-top: 1px solid rgba(217, 120, 43, .12);
        justify-content: flex-start;
    }

    .flipbloque__card {
        min-height: 420px;
    }

    .flipbloque__frente {
        padding: 36px 28px;
    }

    .flipbloque__card.is-flipped {
        min-height: 1100px;
    }
}

@media (max-width: 480px) {
    .flipbloque {
        padding: 56px 0;
    }

    .flipbloque__titulo {
        margin-bottom: 40px;
    }

    .flipbloque__frente-icono-wrap {
        width: 80px;
        height: 80px;
    }

    .flipbloque__pulse--1 {
        width: 110px;
        height: 110px;
    }

    .flipbloque__pulse--2 {
        width: 144px;
        height: 144px;
    }

    .flipbloque__frente-icono {
        width: 38px;
        height: 38px;
    }

    .flipbloque__card {
        min-height: 320px;
    }

    .flipbloque__card.is-flipped {
        min-height: 1200px;
    }

    .flipbloque__reverso-izq,
    .flipbloque__reverso-der {
        padding: 28px 20px;
        gap: 16px;
    }

    .flipbloque__servicio-icon,
    .flipbloque__dif-icon {
        width: 42px;
        height: 42px;
    }

    .flipbloque__servicio-img,
    .flipbloque__dif-img {
        width: 22px;
        height: 22px;
    }

    .flipbloque__servicios {
        flex-direction: column;
        justify-content: center;
    }
}

/* ── Sección Equipo ── */
.section__equipo {
    padding: 96px 0;
    background-color: #1c1c1c;
}

.equipo__header {
    text-align: center;
    max-width: 580px;
    margin: 0 auto 56px;
}

.equipo__tag {
    display: inline-block;
    font-family: 'DM Sans', sans-serif;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #da741c;
    margin-bottom: 14px;
    padding: 0 24px;
    position: relative;
}

.equipo__tag::before,
.equipo__tag::after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 2px;
    background: #da741c;
    border-radius: 2px;
}

.equipo__tag::before {
    left: 0;
}

.equipo__tag::after {
    right: 0;
}

.equipo__title {
    font-family: 'Syne', sans-serif;
    font-size: clamp(1.8rem, 2.8vw, 2.6rem);
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0 0 14px;
}

.equipo__subtitle {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.2rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, .45);
    margin: 0;
}

.equipo__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.equipo__card {
    background: #222222;
    border: 1px solid #2a2a2a;
    border-radius: 20px;
    padding: 36px 32px;
    display: flex;
    flex-direction: column;
    gap: 0;
    transition: border-color .25s, transform .3s;
    position: relative;
    overflow: hidden;
}

.equipo__card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #da741c;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .35s ease;
}

.equipo__card:hover {
    border-color: #333333;
    transform: translateY(-4px);
}

.equipo__card:hover::before {
    transform: scaleX(1);
}

.equipo__avatar {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: linear-gradient(135deg, #da741c, #b16020);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    flex-shrink: 0;
}

.equipo__iniciales {
    font-family: 'Syne', sans-serif;
    font-size: 1.3rem;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -.02em;
    line-height: 1;
}

.equipo__info {
    margin-bottom: 20px;
}

.equipo__nombre {
    font-family: 'Syne', sans-serif;
    font-size: 1.15rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin: 0 0 6px;
}

.equipo__puesto {
    display: inline-block;
    font-family: 'DM Sans', sans-serif;
    font-size: .78rem;
    font-weight: 600;
    color: #da741c;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.equipo__divider {
    height: 1px;
    background: #2a2a2a;
    margin-bottom: 20px;
}

.equipo__contacto {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 24px;
}

.equipo__contacto-item {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    transition: color .2s;
}

.equipo__contacto-icon {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: #2a2a2a;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .2s;
}

.equipo__contacto-icon svg {
    width: 14px;
    height: 14px;
    color: #da741c;
}

.equipo__contacto-text {
    font-family: 'DM Sans', sans-serif;
    font-size: .82rem;
    color: rgba(255, 255, 255, .5);
    transition: color .2s;
    word-break: break-all;
}

.equipo__contacto-item:hover .equipo__contacto-icon {
    background: rgba(217, 120, 43, .15);
}

.equipo__contacto-item:hover .equipo__contacto-text {
    color: #ffffff;
}

.equipo__whatsapp {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: 100px;
    background: rgba(37, 211, 102, .1);
    border: 1px solid rgba(37, 211, 102, .2);
    color: #25d366;
    text-decoration: none;
    font-family: 'DM Sans', sans-serif;
    font-size: .8rem;
    font-weight: 600;
    transition: background .25s, border-color .25s;
    margin-top: auto;
}

.equipo__whatsapp svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.equipo__whatsapp:hover {
    background: rgba(37, 211, 102, .18);
    border-color: rgba(37, 211, 102, .4);
}

.section__equipo--light {
    background-color: #f7f4ec;
}

.section__equipo--light .equipo__title {
    color: #1c1c1c;
}

.section__equipo--light .equipo__subtitle {
    color: #6b6b6b;
}

.section__equipo--light .equipo__card {
    background: #ffffff;
    border-color: #ede7d4;
}

.section__equipo--light .equipo__card:hover {
    border-color: #ddd4b8;
}

.section__equipo--light .equipo__nombre {
    color: #1c1c1c;
}

.section__equipo--light .equipo__divider {
    background: #ede7d4;
}

.section__equipo--light .equipo__contacto-icon {
    background: #f7f4ec;
}

.section__equipo--light .equipo__contacto-text {
    color: #6b6b6b;
}

.section__equipo--light .equipo__contacto-item:hover .equipo__contacto-text {
    color: #1c1c1c;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
    .section__equipo {
        padding: 72px 0;
    }

    .equipo__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .section__equipo {
        padding: 56px 0;
    }

    .equipo__header {
        margin-bottom: 40px;
    }

    .equipo__card {
        padding: 28px 24px;
    }
}

@media (max-width: 540px) {
    .equipo__grid {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto;
    }
}

/* ── Cards Imagen Section ── */
.cards__imagen {
    padding: 96px 0;
    background-color: #ffffff;
}

.cards__imagen-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-bottom: 56px;
    text-align: center;
}

.cards__imagen-title {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    color: #da741c;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0;
}

.cards__imagen-subtitle {
    font-family: 'DM Sans', sans-serif;
    font-size: 2rem;
    line-height: 1.7;
    color: #6b6b6b;
    margin: 0;
    align-self: end;
    width: 100%;
}

.cards__imagen-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    align-items: start;
}

.cards__imagen-card {
    height: 530px;
    perspective: 1000px;
    cursor: pointer;
    border-radius: 18px;
}

.cards__imagen-card {
    height: 530px;
    perspective: 1000px;
    cursor: pointer;
    border-radius: 18px;
}

.cards__imagen-card.is-active{
    box-shadow:
        0 0 0 4px rgba(218, 116, 28, 0.25),
        0 0 24px 6px rgba(218, 116, 28, 0.2),
        0 20px 40px rgba(218, 116, 28, 0.15);
    transform: translateY(-6px);
    animation: card-pulse 1.2s ease-in-out 3;
}

@keyframes card-pulse {
    0%   {
        box-shadow:
            0 0 0 4px rgba(218, 116, 28, 0.25),
            0 0 24px 6px rgba(218, 116, 28, 0.2),
            0 20px 40px rgba(218, 116, 28, 0.15);
    }
    50%  {
        box-shadow:
            0 0 0 8px rgba(218, 116, 28, 0.15),
            0 0 40px 12px rgba(218, 116, 28, 0.3),
            0 20px 50px rgba(218, 116, 28, 0.25);
    }
    100% {
        box-shadow:
            0 0 0 4px rgba(218, 116, 28, 0.25),
            0 0 24px 6px rgba(218, 116, 28, 0.2),
            0 20px 40px rgba(218, 116, 28, 0.15);
    }
}

.cards__imagen-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 18px;
    transform-style: preserve-3d;
    transition: transform .55s cubic-bezier(.4, 0, .2, 1);
}

.cards__imagen-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 18px;
    transform-style: preserve-3d;
    transition: transform .55s cubic-bezier(.4, 0, .2, 1);
}

@media (hover: hover) {
    .cards__imagen-card:hover .cards__imagen-card-inner {
        transform: rotateY(180deg);
    }
}

.cards__imagen-card.is-flipped .cards__imagen-card-inner {
    transform: rotateY(180deg);
}

.cards__imagen-card-front,
.cards__imagen-card-back {
    position: absolute;
    inset: 0;
    border-radius: 18px;
    padding: 28px 26px;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    display: flex;
    flex-direction: column;
    gap: 0;
    overflow: hidden;
}

.cards__imagen-card-front {
    background: #ffffff;
    border: 2px solid #da741c;
}

.cards__imagen-card-front::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background-image: url(./assets/img/logotic-black.png);
    background-repeat: no-repeat;
    background-size: 220px auto;
    background-position: center;
    opacity: 0.1;
    mix-blend-mode: screen;
    pointer-events: none;
}

.cards__imagen-card--featured .cards__imagen-card-front {
    background: #da741c;
    border-color: #da741c;
}

.cards__imagen-card-back {
    background: #da741c;
    border: 2px solid #da741c;
    transform: rotateY(180deg);
}

.cards__imagen-card--featured .cards__imagen-card-back {
    background: #1c1c1c;
    border-color: #1c1c1c;
}

.cards__imagen-card-num {
    font-family: 'Syne', sans-serif;
    font-size: 1rem;
    font-weight: 800;
    color: #ecbd97;
    letter-spacing: .06em;
    margin-bottom: 16px;
}

.cards__imagen-card--featured .cards__imagen-card-num {
    color: rgba(255, 255, 255, .3);
}

.cards__imagen-card-top {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
    align-items: flex-start;
    justify-content: space-between;
}

.cards__imagen-card-tag {
    display: inline-block;
    font-family: 'DM Sans', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #da741c;
    background: #fbf1e9;
    border: 1px solid #ecbd97;
    padding: 3px 11px;
    border-radius: 100px;
    width: fit-content;
    margin-bottom: 4px;
}

.cards__imagen-card--featured .cards__imagen-card-front .cards__imagen-card-tag,
.cards__imagen-card-back .cards__imagen-card-tag {
    background: rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .9);
    border-color: rgba(255, 255, 255, .25);
}

.cards__imagen-card-title {
    font-family: 'Syne', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    color: #1c1c1c;
    letter-spacing: -.02em;
    line-height: 1.25;
    margin: 0;
}

.cards__imagen-card--featured .cards__imagen-card-title {
    color: #ffffff;
}

.cards__imagen-card-desc {
    font-family: 'DM Sans', sans-serif;
    font-size: 1rem;
    line-height: 1.65;
    color: #222222;
    margin: 0;
    font-weight: 500;
}

.cards__imagen-card-servicios ul li {
    font-family: 'DM Sans', sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin: 6px 0 0;
}

.cards__imagen-card-servicios {
    font-family: 'Syne', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin: 6px 0 0;
}

.cards__imagen-card-servicios ul{
    margin-bottom: 0;
}

.cards__imagen-card--featured .cards__imagen-card-desc {
    color: rgba(255, 255, 255, .8);
}

.cards__imagen-card-hint {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
    padding-top: 14px;
}

.cards__imagen-card-hint-text {
    font-family: 'DM Sans', sans-serif;
    font-size: .75rem;
    font-weight: 600;
    color: #da741c;
}

.cards__imagen-card--featured .cards__imagen-card-front .cards__imagen-card-hint-text {
    color: rgba(255, 255, 255, .7);
}

.cards__imagen-card-hint svg {
    width: 14px;
    height: 14px;
    color: #da741c;
    transition: transform .2s;
}

.cards__imagen-card--featured .cards__imagen-card-front .cards__imagen-card-hint svg {
    color: rgba(255, 255, 255, .7);
}

@media (hover: hover) {
    .cards__imagen-card-hint {
        display: none;
    }
}

.cards__imagen-card-back-title {
    font-family: 'Syne', sans-serif;
    font-size: .95rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin: 6px 0 0;
}

.cards__imagen-card-divider {
    height: 1px;
    background: rgba(255, 255, 255, .25);
    margin: 14px 0;
}

.cards__imagen-card-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
    flex: 1;
    overflow: hidden;
}

.cards__imagen-card-list-item {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    font-family: 'DM Sans', sans-serif;
    font-size: .8rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, .88);
}

.cards__imagen-card-list-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .6);
    flex-shrink: 0;
    margin-top: 6px;
}

.cards__imagen-card-hint--back .cards__imagen-card-hint-text {
    color: rgba(255, 255, 255, .7);
}

.cards__imagen-card-hint--back svg {
    color: rgba(255, 255, 255, .7);
}

/* ── Responsive ── */
@media (max-width: 1400px) {
    .cards__imagen-card {
        height: 500px;
    }

    .cards__imagen-card-tag {
        font-size: 0.725rem;
    }
}

@media (max-width: 1200px) {
    .cards__imagen-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .cards__imagen-card {
        height: 550px;
    }
}

@media (max-width: 1024px) {
    .cards__imagen {
        padding: 72px 0;
    }

    .cards__imagen-header {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-bottom: 40px;
    }

    .cards__imagen-card {
        height: 550px;
    }
}

@media (max-width: 768px) {
    .cards__imagen-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .cards__imagen {
        padding: 56px 0;
    }

    .cards__imagen-card {
        height: 480px;
    }

    .cards__imagen-card-front,
    .cards__imagen-card-back {
        padding: 24px 20px;
    }
}

@media (max-width: 600px) {
    .cards__imagen-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}


/* ============================================ SECCIÓN: INDUSTRIAS ============================================ */

.industrias__section {
    padding: 96px 0;
}

.industrias__header {
    text-align: center;
    max-width: 100%;
    margin: 0 auto 56px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}

.industrias__tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'DM Sans', sans-serif;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #da741c;
    border: 1px solid rgba(217, 120, 43, .4);
    padding: 6px 18px;
    border-radius: 100px;
}

.industrias__tag-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #da741c;
    flex-shrink: 0;
}

.industrias__title {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    color: #da741c;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0;
}

.industrias__subtitle {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.5rem;
    line-height: 1.7;
    color: #6b6b6b;
    margin: 0;
}

.industrias__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.industrias__item {
    background: #ffffff;
    border: 1px solid #ede7d4;
    border-radius: 18px;
    padding: 32px 28px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative;
    overflow: hidden;
    transition: border-color .25s, transform .3s, box-shadow .3s;
}

.industrias__item:hover {
    border-color: #da741c;
    transform: translateY(-5px);
    box-shadow: 0 16px 40px rgba(217, 120, 43, .1);
}

.industrias__item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #da741c;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .35s ease;
    border-radius: 18px 18px 0 0;
}

.industrias__item:hover::before {
    transform: scaleX(1);
}

.industrias__item-icon {
    width: 150px;
    height: 150px;
    border-radius: 14px;
    background: #fbf1e9;
    border: 1px solid #ecbd97;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .25s, border-color .25s;
}

.industrias__item:hover .industrias__item-icon {
    background: #da741c;
    border-color: #da741c;
}

.industrias__item-icon img {
    width: 120px;
    height: 120px;
    object-fit: contain;
    transition: filter .25s;
}

.industrias__item:hover .industrias__item-icon img {
    filter: brightness(0) invert(1);
}

.industrias__item-num {
    font-family: 'Syne', sans-serif;
    font-size: 1rem;
    font-weight: 800;
    color: #da741c;
    transition: color .25s;
}

.industrias__item:hover .industrias__item-num {
    color: #ffffff;
}

.industrias__item-body {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.industrias__item-title {
    font-family: 'Syne', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #1c1c1c;
    letter-spacing: -.02em;
    line-height: 1.25;
    margin: 0;
    transition: color .25s;
}

.industrias__item:hover .industrias__item-title {
    color: #da741c;
}

.industrias__item-desc {
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #6b6b6b;
    margin: 0;
}

.industrias__item--flip {
    background: transparent;
    border: none;
    padding: 0;
    perspective: 1000px;
    min-height: 420px;
    overflow: visible;
    box-shadow: none;
    transform: none;
    transform-style: preserve-3d;
}

.industrias__item--flip:hover {
    transform: none;
    box-shadow: none;
    border-color: transparent;
}

.industrias__item--flip::before {
    display: none;
}

.industrias__item-front,
.industrias__item-back {
    position: absolute;
    inset: 0;
    border-radius: 18px;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1);
    overflow: hidden;
}

.industrias__item-front {
    background: #ffffff;
    border: 1px solid #ede7d4;
    padding: 32px 28px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    transform: rotateY(0deg);
    align-items: center;
    justify-content: center;
}

.industrias__item--flip:hover .industrias__item-front {
    transform: rotateY(-180deg);
}

.industrias__item-front::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #da741c;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .35s ease;
    border-radius: 18px 18px 0 0;
}

.industrias__item--flip:hover .industrias__item-front::before {
    transform: scaleX(1);
}

.industrias__item-hint {
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #da741c;
    letter-spacing: .06em;
    text-transform: uppercase;
    opacity: .6;
    display: flex;
    align-items: center;
    gap: 4px;
}

.industrias__item-hint::after {
    content: '→';
    transition: transform .25s;
}

.industrias__item--flip:hover .industrias__item-hint::after {
    transform: translateX(4px);
}

.industrias__item-back {
    background: #1c1c1c;
    border: 1px solid #2a2a2a;
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    transform: rotateY(180deg);
    justify-content: space-between;
}

.industrias__item--flip:hover .industrias__item-back {
    transform: rotateY(0deg);
}

.industrias__item-back-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.industrias__item-back-icon {
    width: 36px;
    height: 36px;
    object-fit: contain;
    flex-shrink: 0;
    filter: brightness(0) invert(1);
    opacity: .85;
}

.industrias__item-back-title {
    font-family: 'Syne', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    line-height: 1.2;
}

.industrias__sectores {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    overflow-y: auto;
    max-height: 220px;
    scrollbar-width: thin;
    scrollbar-color: rgba(217, 120, 43, .3) transparent;
    padding-top: 10px;
}

.industrias__sector {
    display: flex;
    align-items: center;
    gap: 16px;
    font-family: 'DM Sans', sans-serif;
    font-size: 16.5px;
    font-weight: 500;
    color: rgba(255, 255, 255, .78);
    line-height: 1.3;
    transition: color .2s;
}

.industrias__sector svg {
    flex-shrink: 0;
    color: #da741c;
    width: 14px;
    height: 14px;
}

.logos__card {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: end;
    width: 100%;
    max-width: 100%;
    height: 70px;
    overflow: hidden;
}

.logos__card img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.industrias__sector:hover {
    color: #ffffff;
}

.industrias__section--dark {
    background-color: #1c1c1c;
}

.industrias__section--dark .industrias__title {
    color: #ffffff;
}

.industrias__section--dark .industrias__subtitle {
    color: rgba(255, 255, 255, .45);
}

.industrias__section--dark .industrias__item {
    background: #222222;
    border-color: #2a2a2a;
}

.industrias__section--dark .industrias__item:hover {
    border-color: #da741c;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .4);
}

.industrias__section--dark .industrias__item-icon {
    background: rgba(217, 120, 43, .1);
    border-color: rgba(217, 120, 43, .2);
}

.industrias__section--dark .industrias__item-title {
    color: #ffffff;
}

.industrias__section--dark .industrias__item-desc {
    color: rgba(255, 255, 255, .45);
}

.industrias__section--dark .industrias__item-front {
    background: #222222;
    border-color: #2a2a2a;
}

.industrias__section--dark .industrias__item-front:hover {
    border-color: #da741c;
}



@media (max-width: 1024px) {
    .industrias__section {
        padding: 72px 0;
    }

    .industrias__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .industrias__section {
        padding: 56px 0;
    }

    .industrias__header {
        margin-bottom: 40px;
    }

    .industrias__item {
        padding: 26px 22px;
    }

    .industrias__item--flip {
        padding: 26px 22px;
    }

    .industrias__item--flip {
        perspective: none;
        transform-style: flat;
        background: #ffffff;
        border: 1px solid #ede7d4;
        border-radius: 18px;
        padding: 32px 28px;
        min-height: unset;
        height: auto;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .industrias__item--flip:hover {
        border-color: #da741c;
        transform: none;
        box-shadow: 0 16px 40px rgba(217, 120, 43, .1);
    }

    .industrias__item--flip::before {
        display: block;
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: #da741c;
        transform: scaleX(0);
        transform-origin: left;
        transition: transform .35s ease;
        border-radius: 18px 18px 0 0;
    }

    .industrias__item-front {
        position: static;
        inset: auto;
        backface-visibility: visible;
        transform: none !important;
        transition: none;
        border-radius: 0;
        border: none;
        padding: 0;
        background: transparent;
        display: flex;
        flex-direction: column;
        gap: 20px;
        align-items: flex-start;
        justify-content: flex-start;
        overflow: visible;
    }

    .industrias__item-front::before {
        display: none;
    }

    .industrias__item-back {
        position: static;
        inset: auto;
        backface-visibility: visible;
        transform: none !important;
        transition: none;
        background: transparent !important;
        border: none;
        border-top: 1px solid #ede7d4 !important;
        border-radius: 0;
        padding: 20px 0 0;
        display: flex;
        flex-direction: column;
        gap: 16px;
        justify-content: flex-start;
        overflow: visible;
    }

    .industrias__item-back::before {
        content: '';
        position: absolute;
        inset: 0;
        z-index: 0;
        background-image: url('./assets/img/logotic-black.png');
        background-repeat: no-repeat;
        background-size: 150px auto;
        background-position: bottom right;
        opacity: 0.05;
        pointer-events: none;
    }

    .industrias__item-back-title {
        color: #1c1c1c;
    }

    .industrias__item-back-header {
        border-bottom-color: rgba(0, 0, 0, .08);
    }

    .industrias__item-back-icon {
        filter: none;
        opacity: 1;
    }

    .industrias__sector {
        color: #444444;
    }

    .industrias__sector svg {
        color: #da741c;
    }

    .industrias__sectores {
        max-height: none;
        overflow: visible;
    }

    .industrias__item-hint {
        display: none;
    }

    .logos__card {
        display: none;
    }

    .industrias__item--flip:hover .industrias__item-front,
    .industrias__item--flip:hover .industrias__item-back {
        transform: none !important;
    }

}

@media (max-width: 480px) {
    .industrias__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}

/* ── Sección Ubicaciones ── */
.ubicaciones__section {
    padding: 96px 0;
}

.ubicaciones__header {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 72px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.ubicaciones__title {
    font-family: 'Syne', sans-serif;
    font-size: clamp(1.8rem, 2.8vw, 2.6rem);
    font-weight: 800;
    color: #1c1c1c;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0;
}

.ubicaciones__subtitle {
    font-family: 'DM Sans', sans-serif;
    font-size: .95rem;
    line-height: 1.7;
    color: #6b6b6b;
    margin: 0;
}

.ubicaciones__list {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.ubicaciones__card {
    perspective: 1100px;
    height: 550px;
    max-width: 100%;
    cursor: pointer;
    opacity: 0;
    transform: translateY(28px);
    transition:
        opacity .5s ease,
        transform .6s cubic-bezier(.34, 1.56, .64, 1);
}

.ubicaciones__card.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.ubicaciones__card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    transition: transform .72s cubic-bezier(.4, 0, .2, 1);
    border-radius: 22px;
}

.ubicaciones__card-front::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: url('./assets/img/TIC-WHITE.png');
    background-repeat: no-repeat;
    background-size: 150px auto;
    background-position: center bottom;
    opacity: 0.20;
    mix-blend-mode: screen;
    pointer-events: none;
}

@media (hover: hover) {
    .ubicaciones__card:hover .ubicaciones__card-inner {
        transform: rotateY(180deg);
    }
}

.ubicaciones__card.is-flipped .ubicaciones__card-inner {
    transform: rotateY(180deg);
}

.ubicaciones__card-front,
.ubicaciones__card-back {
    position: absolute;
    inset: 0;
    border-radius: 22px;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    overflow: hidden;
}


.ubicaciones__card-front {
    background: #1c1c1c;
    display: flex;
    flex-direction: column;
}

.ubicaciones__card-img-wrap {
    position: relative;
    flex: 1;
    overflow: hidden;
    max-height: 300px;
}

.ubicaciones__card-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s ease;
}

.ubicaciones__card:hover .ubicaciones__card-img {
    transform: scale(1.06);
}

.ubicaciones__card-img-wrap::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom,
            transparent 40%,
            rgba(28, 28, 28, .72) 100%);
    z-index: 1;
}

.ubicaciones__card-num {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    font-family: 'Syne', sans-serif;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #da741c;
    background: rgba(28, 28, 28, .65);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(217, 120, 43, .35);
    padding: 5px 12px;
    border-radius: 100px;
}

.ubicaciones__card-front-footer {
    padding: 22px 24px;
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
}

.ubicaciones__card-name {
    font-family: 'Syne', sans-serif;
    font-size: 1.2rem;
    font-weight: 800;
    color: #fff;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin: 0;
}

.ubicaciones__card-flip-hint {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1.5px solid rgba(255, 255, 255, .35);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color .25s, background .25s;
    animation: hint-pulse 2.2s ease-in-out infinite;
}

.ubicaciones__card:hover .ubicaciones__card-flip-hint {
    background: #da741c;
    border-color: #da741c;
    animation: none;
}

.ubicaciones__card-flip-hint svg {
    width: 16px;
    height: 16px;
    stroke: rgba(255, 255, 255, .8);
    fill: none;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@keyframes hint-pulse {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .45;
    }
}

.ubicaciones__card-front-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 24px;
    right: 24px;
    height: 1px;
    background: rgba(217, 120, 43, .3);
}

.ubicaciones__card-back {
    background: #da741c;
    transform: rotateY(180deg);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 36px 32px 32px;

    background-image:
        radial-gradient(circle at 80% 20%, rgba(255, 255, 255, .12) 0%, transparent 50%),
        radial-gradient(circle at 20% 80%, rgba(0, 0, 0, .08) 0%, transparent 45%);
}

.ubicaciones__card-back-num {
    font-family: 'Syne', sans-serif;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .6);
    display: block;
    margin-bottom: 10px;
}

.ubicaciones__card-back-title {
    font-family: 'Syne', sans-serif;
    font-size: 1.4rem;
    font-weight: 800;
    color: #fff;
    letter-spacing: -.02em;
    line-height: 1.15;
    margin: 0 0 6px;
}

.ubicaciones__card-back-title::after {
    content: '';
    display: block;
    width: 32px;
    height: 3px;
    background: rgba(255, 255, 255, .5);
    border-radius: 2px;
    margin-top: 14px;
}

.ubicaciones__card-back-desc {
    flex: 1;
    display: flex;
    align-items: flex-start;
}

.ubicaciones__card-back-desc p {
    font-family: 'DM Sans', sans-serif;
    font-size: .9rem;
    line-height: 1.75;
    color: rgba(255, 255, 255, .88);
    margin: 0 0 12px;
}

.ubicaciones__card-back-desc p:last-child {
    margin-bottom: 0;
}

.ubicaciones__card-back-deco {
    position: absolute;
    bottom: -10px;
    right: 16px;
    font-family: 'Syne', sans-serif;
    font-size: 7rem;
    font-weight: 900;
    color: rgba(255, 255, 255, .07);
    line-height: 1;
    pointer-events: none;
    user-select: none;
    letter-spacing: -.05em;
}

.ubicaciones__section--dark {
    background-color: #1c1c1c;
}

.ubicaciones__section--dark .ubicaciones__title {
    color: #ffffff;
}

.ubicaciones__section--dark .ubicaciones__subtitle {
    color: rgba(255, 255, 255, .45);
}

.ubicaciones__card.no-flip {
    cursor: default;
    pointer-events: none;
}

.ubicaciones__card.no-flip .ubicaciones__card-flip-hint {
    display: none;
}

@media (hover: hover) {
    .ubicaciones__card.no-flip:hover .ubicaciones__card-inner {
        transform: none;
    }
}

.ubicaciones__card.no-flip.is-flipped .ubicaciones__card-inner {
    transform: none;
}

.ubicaciones__list {
    justify-items: center;
}

.ubicaciones__card {
    width: 100%;
    max-width: 450px;
}

@media (max-width: 1300px) {
    .ubicaciones__list {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }

    .ubicaciones__card {
        height: 650px;
    }
}

@media (max-width: 1024px) {
    .ubicaciones__section {
        padding: 72px 0;
    }

    .ubicaciones__list {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .ubicaciones__card {
        height: 480px;
    }
}

@media (max-width: 768px) {
    .ubicaciones__section {
        padding: 56px 0;
    }

    .ubicaciones__list {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .ubicaciones__card {
        height: 550px;
        max-width: 100%;
    }

    .ubicaciones__header {
        margin-bottom: 48px;
    }

    .ubicaciones__card-back {
        padding: 28px 24px 24px;
    }

    .ubicaciones__card-back-title {
        font-size: 1.2rem;
    }
}

/* ── Sección Mapa ── */
.mapa__section {
    padding: 96px 0;
    background-color: #1c1c1c;
}

.mapa__inner {
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    gap: 72px;
    align-items: center;
}

.mapa__content {
    position: relative;
}

.mapa__content::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: url('./assets/img/TIC-WHITE.png');
    background-repeat: no-repeat;
    background-size: 200px auto;
    background-position: right bottom;
    opacity: 0.20;
    mix-blend-mode: screen;
    pointer-events: none;
}

.mapa__tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'DM Sans', sans-serif;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #da741c;
    border: 1px solid rgba(217, 120, 43, .4);
    padding: 6px 16px;
    border-radius: 100px;
    margin-bottom: 20px;
    width: fit-content;
}

.mapa__tag-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #da741c;
    flex-shrink: 0;
}

.mapa__title {
    font-family: 'Syne', sans-serif;
    font-size: clamp(1.8rem, 2.5vw, 2.4rem);
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0 0 14px;
}

.mapa__subtitle {
    font-family: 'DM Sans', sans-serif;
    font-size: .95rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, .5);
    margin: 0 0 32px;
}

.mapa__address {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 20px;
}

.mapa__address:last-of-type {
    margin-bottom: 36px;
}

.mapa__address-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(217, 120, 43, .1);
    border: 1px solid rgba(217, 120, 43, .2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #da741c;
}

.mapa__address-icon svg {
    width: 16px;
    height: 16px;
}

.mapa__address-label {
    display: block;
    font-family: 'DM Sans', sans-serif;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #da741c;
    margin-bottom: 4px;
}

.mapa__address-text {
    font-family: 'DM Sans', sans-serif;
    font-size: .85rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, .55);
    margin: 0;
}

.mapa__ctas {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.mapa__cta {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 13px 22px;
    border-radius: 100px;
    font-family: 'DM Sans', sans-serif;
    font-size: .85rem;
    font-weight: 600;
    text-decoration: none;
    transition: all .25s;
    width: fit-content;
}

.mapa__cta--phone {
    background: #da741c;
    color: #ffffff;
}

.mapa__cta--phone:hover {
    background: #c86d22;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(217, 120, 43, .35);
}

.mapa__cta--whats {
    background: rgba(37, 211, 102, .1);
    border: 1px solid rgba(37, 211, 102, .25);
    color: #25d366;
}

.mapa__cta--whats:hover {
    background: rgba(37, 211, 102, .18);
    border-color: rgba(37, 211, 102, .45);
    transform: translateY(-2px);
}

.mapa__cta-icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mapa__cta-icon svg {
    width: 16px;
    height: 16px;
}

.mapa__embed-wrap {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #282828;
}

.mapa__embed-wrap::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 20px;
    box-shadow: inset 0 0 0 2px rgba(217, 120, 43, .15);
    z-index: 1;
    pointer-events: none;
}

.mapa__embed p {
    margin: 0;
    padding: 0;
    line-height: 0;
    height: 100%;
}

.mapa__embed iframe {
    width: 100% !important;
    height: 480px !important;
    min-height: 480px;
    border: none !important;
    display: block;
    filter: grayscale(20%) contrast(1.05);
}

.mapa__embed-wrap {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #282828;
    height: 480px;
}

.mapa__embed {
    width: 100%;
    height: 100%;
    display: block;
    line-height: 0;
}

.mapa__embed--placeholder {
    background: #222222;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.mapa__embed--placeholder p {
    font-family: 'DM Sans', sans-serif;
    font-size: .85rem;
    color: rgba(255, 255, 255, .3);
    margin: 0;
}

.mapa__section--light {
    background-color: #f7f4ec;
}

.mapa__section--light .mapa__title {
    color: #1c1c1c;
}

.mapa__section--light .mapa__subtitle {
    color: #6b6b6b;
}

.mapa__section--light .mapa__address-text {
    color: #5c5c5c;
}

.mapa__section--light .mapa__embed-wrap {
    border-color: #ede7d4;
}

.mapa__section--light .mapa__embed--placeholder {
    background: #ffffff;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
    .mapa__section {
        padding: 72px 0;
    }

    .mapa__inner {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .mapa__embed {
        height: 380px;
    }

    .mapa__embed-wrap {
        height: 400px;
    }

    .mapa__embed iframe {
        height: 400px !important;
    }
}

@media (max-width: 768px) {
    .mapa__section {
        padding: 56px 0;
    }

    .mapa__embed {
        height: 320px;
    }

    .mapa__ctas {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .mapa__embed-wrap {
        height: 320px;
    }

    .mapa__embed iframe {
        height: 320px !important;
    }

    .mapa__content::before {
        background-size: 100px auto;
        background-position: right top;
        top: -50px;
    }
}

@media (max-width: 480px) {
    .mapa__embed {
        height: 260px;
    }

    .mapa__ctas {
        flex-direction: column;
    }

    .mapa__cta {
        width: 100%;
        justify-content: center;
    }

    .mapa__embed-wrap {
        height: 260px;
    }

    .mapa__embed iframe {
        height: 260px !important;
    }
}

.logo-footer {
    width: 100%;
    height: auto;
    max-width: 120px;
}

/* ============================================ SECCIÓN: PUNTOS DE TRABAJO ============================================ */

.puntos-trabajo {
    padding: 80px 0 100px;
    background-color: #fff;
    overflow: hidden;
}

.puntos-trabajo__header {
    text-align: center;
    margin-bottom: 70px;
}

.puntos-trabajo__label {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #da741c;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.puntos-trabajo__titulo {
    font-size: 3rem;
    font-weight: 800;
    color: #da741c;
    line-height: 1.15;
    margin: 0;
    font-family: 'Syne', sans-serif;
}

.puntos-trabajo__grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0 24px;
    position: relative;
    align-items: start;
}

.puntos-trabajo__linea-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
    z-index: 0;
}

.puntos-trabajo__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    z-index: 1;
    padding: 0 10px;
    grid-row: 1;
}

.puntos-trabajo__item--abajo {
    margin-top: 80px;
}

.puntos-trabajo__icono-wrap {
    position: relative;
    margin-bottom: 20px;
    display: inline-block;
}

.puntos-trabajo__circulo {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    border: 5px solid #da741c;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.puntos-trabajo__circulo.circulo--abajo {
    border: 5px solid #1c1c1c;
}

.puntos-trabajo__circulo img {
    width: 180px;
    height: 180px;
    object-fit: contain;
    display: block;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
}

.puntos-trabajo__item:hover .puntos-trabajo__circulo {
    background-color: #fff5f5;
    transform: scale(1.08);
}

.puntos-trabajo__numero {
    position: absolute;
    bottom: 4px;
    right: 4px;
    width: 38px;
    height: 38px;
    background-color: #da741c;
    color: #fff;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.puntos-trabajo__contenido {
    max-width: 200px;
}

.puntos-trabajo__nombre {
    font-size: 24px;
    font-weight: 700;
    color: #282828;
    margin: 0 0 10px;
    line-height: 1.3;
}

.puntos-trabajo__descripcion {
    font-size: 14px;
    color: #1c1c1c;
    line-height: 1.6;
    margin: 0;
}

.curva {
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.curva img {
    width: 100%;
    display: block;
}

.curva--naranja {
    top: -25px;
    width: calc(10% - 2px);
}

.curva--pos-1-2 {
    left: calc(17%);
}

.curva--pos-3-4 {
    left: calc(58%);
}

.curva--negra {
    bottom: -50px;
    width: calc(12% - 12px);
}

.curva--pos-2-3 {
    left: calc(35%);
}

.curva--pos-4-5 {
    left: calc(76%);
}

@media (max-width: 1400px) {
    .curva--pos-1-2 {
        left: calc(20%);
    }

    .curva--pos-3-4 {
        left: calc(63%);
    }

    .curva--pos-2-3 {
        left: calc(38%);
    }

    .curva--pos-4-5 {
        left: calc(84%);
    }

}

@media (max-width: 1200px) {
    .puntos-trabajo__circulo {
        width: 160px;
        height: 160px;
    }

    .puntos-trabajo__circulo img {
        width: 140px;
        height: 140px;
    }

    .puntos-trabajo__nombre {
        font-size: 18px;
    }

    .puntos-trabajo__descripcion {
        font-size: 13px;
    }

    .puntos-trabajo__contenido {
        max-width: 160px;
    }

    .curva--negra {
        width: calc(15% - 11px);
    }

    .curva--pos-4-5 {
        left: calc(86%);
    }
}

@media (max-width: 1024px) {
    .puntos-trabajo__circulo {
        width: 130px;
        height: 130px;
    }

    .puntos-trabajo__circulo img {
        width: 110px;
        height: 110px;
    }

    .puntos-trabajo__nombre {
        font-size: 15px;
    }

    .puntos-trabajo__descripcion {
        font-size: 12px;
    }

    .puntos-trabajo__contenido {
        max-width: 130px;
    }

    .puntos-trabajo__numero {
        width: 28px;
        height: 28px;
        font-size: 10px;
    }

    .curva--naranja {
        top: -18px;
    }

    .curva--negra {
        bottom: -38px;
    }

    .puntos-trabajo__item--abajo {
        margin-top: 60px;
    }

    .curva--negra {
        width: calc(12% - 11px);
    }

    .curva--pos-4-5 {
        left: calc(77%);
    }

    .curva--pos-2-3 {
        left: calc(35%);
    }

    .curva--pos-1-2 {
        left: calc(17%);
    }

    .curva--pos-3-4 {
        left: calc(58%);
    }
}

@media (max-width: 991px) {
    .puntos-trabajo {
        padding: 60px 0 80px;
    }

    .curva {
        display: none;
    }

    .puntos-trabajo__grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 50px 40px;
        justify-items: center;
        align-items: start;
        position: relative;
    }

    .puntos-trabajo__item:last-of-type:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .puntos-trabajo__item--abajo {
        margin-top: 0;
    }

    .puntos-trabajo__circulo {
        width: 160px;
        height: 160px;
    }

    .puntos-trabajo__circulo img {
        width: 140px;
        height: 140px;
    }

    .puntos-trabajo__contenido {
        max-width: 180px;
    }

    .puntos-trabajo__nombre {
        font-size: 18px;
    }

    .puntos-trabajo__grid::before {
        content: '';
        position: absolute;
        top: 80px;
        left: 10%;
        width: 80%;
        height: 2px;
        background: repeating-linear-gradient(to right,
                #da741c 0px, #da741c 8px,
                transparent 8px, transparent 16px);
        z-index: 0;
        opacity: 0.35;
    }
}

@media (max-width: 768px) {
    .puntos-trabajo {
        padding: 50px 0 60px;
    }

    .puntos-trabajo__header {
        margin-bottom: 48px;
    }

    .curva {
        display: none;
    }

    .puntos-trabajo__grid::before {
        display: none;
    }

    .puntos-trabajo__grid {
        display: flex;
        flex-direction: column;
        gap: 16px;
        position: relative;
    }

    .puntos-trabajo__linea-svg {
        display: none;
    }

    .puntos-trabajo__item {
        flex-direction: row;
        text-align: left;
        align-items: center;
        gap: 20px;
        padding: 0;
        width: 100%;
    }

    .puntos-trabajo__item--abajo {
        flex-direction: row-reverse;
        text-align: right;
        margin-top: 0;
    }

    .puntos-trabajo__circulo {
        width: 150px;
        height: 150px;
        flex-shrink: 0;
    }

    .puntos-trabajo__circulo img {
        width: 100px;
        height: 100px;
    }

    .puntos-trabajo__contenido {
        max-width: 100%;
        flex: 1;
    }

    .puntos-trabajo__nombre {
        font-size: 1.1rem;
    }

    .puntos-trabajo__descripcion {
        font-size: 13px;
    }
}

/* ── Sección contenedor ── */
.section__valores {
    position: relative;
}

.valores__grid {
    display: flex;
    flex-direction: column;
}

.valores__item {
    position: relative;
    padding: 5rem 3rem;
    min-height: 380px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1.25rem;
    overflow: hidden;
}

.valores__item>* {
    position: relative;
    z-index: 2;
}

.valores__item--naranja::before {
    background-image: url('./assets/img/logotic-black.png');
    opacity: 0.10;
    mix-blend-mode: multiply;
}

.valores__item--blanco::before {
    background-image: url('./assets/img/logotic-black.png');
    opacity: 0.08;
    mix-blend-mode: multiply;
}

.valores__item--negro::before {
    background-image: url('./assets/img/TIC-WHITE.png');
    opacity: 0.18;
    mix-blend-mode: screen;
}

.valores__item::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background-repeat: no-repeat;
    background-size: 160px auto;
    background-position: right top;
    margin: 20px;
}

.valores__item::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
}

.valores__item--naranja {
    background-color: #da741c;
}

.valores__item--naranja::before {
    opacity: 0.55;
    mix-blend-mode: multiply;
}

.valores__item--blanco {
    background-color: #f5f5f5;
}

.valores__item--blanco::before {
    opacity: 0.48;
    mix-blend-mode: multiply;
}

.valores__item--blanco::after {
    background: linear-gradient(105deg,
            rgba(245, 245, 245, 0.90) 0%,
            rgba(245, 245, 245, 0.50) 45%,
            rgba(245, 245, 245, 0.90) 100%);
}

.valores__item--negro {
    background-color: #111111;
}

.valores__item--negro::before {
    opacity: 0.60;
    mix-blend-mode: screen;
}

.valores__item--negro::after {
    background: linear-gradient(105deg,
            rgba(17, 17, 17, 0.88) 0%,
            rgba(17, 17, 17, 0.45) 45%,
            rgba(17, 17, 17, 0.88) 100%);
}

.valores__titulo {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}

.valores__descripcion {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.75;
    margin: 0;
}

.valores__item--naranja .valores__titulo {
    color: #ffffff;
}

.valores__item--naranja .valores__descripcion {
    color: rgba(255, 255, 255, 0.88);
}

.valores__item--blanco .valores__titulo {
    color: #111111;
}

.valores__item--blanco .valores__descripcion {
    color: #444444;
}

.valores__item--negro .valores__titulo {
    color: #ffffff;
}

.valores__item--negro .valores__descripcion {
    color: rgba(255, 255, 255, 0.78);
}

@media (max-width: 768px) {
    .valores__item {
        padding: 3.5rem 1.75rem;
        min-height: auto;
    }

    .valores__item::before {
        background-size: 120px auto;
    }
}

@media (max-width: 480px) {
    .valores__item {
        padding: 2.75rem 1.25rem;
    }

    .valores__item::before {
        background-size: 90px auto;
    }
}

/* ============================================ SECCIÓN: COBERTURA ============================================ */

.cobertura {
    padding: 80px 0;
    background-color: #fff;
    overflow: hidden;
}

.cobertura__header {
    text-align: center;
    margin: 0 auto 56px;
}

.cobertura__titulo {
    font-family: 'Syne', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    color: #da741c;
    line-height: 1.15;
    margin: 0 0 20px;
}

.cobertura__descripcion {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.5rem;
    color: #444;
    line-height: 1.75;
    margin: 0;
}

.cobertura__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    gap: 30px;
}

.cobertura__col {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-around;
}

.cobertura__col-header {
    display: flex;
    align-items: center;
    gap: 12px;
}

.cobertura__badge {
    display: inline-block;
    font-family: 'Syne', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.06em;
    padding: 6px 18px;
    border-radius: 999px;
}

.cobertura__badge--naranja {
    background-color: transparent;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0 20px;
    width: 30%;
    flex-direction: column;
}

.cobertura__badge--naranja p {
    font-family: 'Syne', sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #1c1c1c;
    margin: 0;
    width: 100%;
}

.cobertura__badge--naranja ul {
    width: 100%;
    padding-left: 1rem;
    margin: 0;
}


.cobertura__badge--naranja ul li {
    font-family: 'Syne', sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #1c1c1c;
    margin: 0;
    width: 100%;
}

.cobertura__badge--negro {
    background-color: transparent;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0 20px;
    flex-direction: column;
    width: 30%;
}

.cobertura__badge--negro p {
    font-family: 'Syne', sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #da741c;
    margin: 0;
    width: 100%;
}

.cobertura__badge--negro ul {
    width: 100%;
    padding-left: 1rem;
    margin: 0;
}

.cobertura__badge--negro ul li {
    font-family: 'Syne', sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #da741c;
    margin: 0;
}

.cobertura__imagen-wrap {
    position: relative;
    border-radius: 12px 12px 0 12px;
    overflow: hidden;
    line-height: 0;
    max-height: 260px;
}

.cobertura__imagen-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 12px 12px 0 12px;
}

.cobertura__imagen-deco {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 60px 60px;
    border-color: transparent transparent #da741c transparent;
}

.cobertura__mapa-wrap {
    border-radius: 12px;
    overflow: hidden;
    line-height: 0;
    background-color: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70%;
}

.container__text{
    display: flex;
    width: 100%;
    height: auto;
    text-align: left;
    padding:0;
}

.container__text h4{
    font-family: 'Syne', sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #1c1c1c;
    margin: 0;
    width: 100%;
}

#mapaRegional,
#mapaMaritimo,
#chartdiv {
    width: 100%;
    height: 550px;
}

.cobertura__mapa-gif {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 12px;
}

.cobertura__lista-wrap {
    border-radius: 16px 16px 60px 16px;
    padding: 32px 36px;
}

.cobertura__lista-wrap--naranja {
    background-color: #da741c;
}

.cobertura__lista-wrap--negro {
    background-color: #111111;
}

.cobertura__lista {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 20px;
}

.cobertura__lista li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    line-height: 1.3;
}

.cobertura__lista li svg {
    flex-shrink: 0;
    color: #fff;
    width: 18px;
    height: 18px;
}

.cobertura__col--nacional {
    border-right: 1px solid #f0f0f0;
}

.cobertura__col--internacional {
    padding-left: 0;
    flex-direction: row-reverse;
}

@media (max-width:1024px) {

    .cobertura__col {
        flex-direction: column;
    }

    .cobertura__badge--naranja,
    .cobertura__mapa-wrap {
        width: 100%;
    }
}


@media (max-width: 991px) {
    .cobertura {
        padding: 60px 0;
    }

    .cobertura__inner {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .cobertura__col--nacional {
        border-right: none;
        padding-right: 0;
        border-bottom: 1px solid #f0f0f0;
        padding-bottom: 48px;
    }

    .cobertura__header {
        margin-bottom: 40px;
    }
}

@media (max-width: 575px) {
    .cobertura {
        padding: 48px 0;
    }

    .cobertura__lista-wrap {
        padding: 24px 20px;
        border-radius: 12px 12px 40px 12px;
    }

    .cobertura__lista {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .cobertura__header {
        margin-bottom: 32px;
    }

    .cobertura__descripcion {
        font-size: 1rem;
    }
}

.mision__punto {
    opacity: 0;
    transform: translateX(40px);
    animation: punto-entrada .7s cubic-bezier(.22, 1, .36, 1) both;
}

.mision__punto:nth-child(2) {
    animation-delay: .15s;
}

.mision__punto:nth-child(3) {
    animation-delay: .30s;
}

.mision__punto:nth-child(4) {
    animation-delay: .45s;
}

@keyframes punto-entrada {
    from {
        opacity: 0;
        transform: translateX(40px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.mision__linea-svg line {
    stroke-dasharray: 300;
    stroke-dashoffset: 300;
    animation: linea-draw 1.2s cubic-bezier(.4, 0, .2, 1) .2s both;
}

@keyframes linea-draw {
    to {
        stroke-dashoffset: 0;
    }
}

.mision__punto-icono {
    animation: icono-pulse 3.6s ease-in-out infinite;
}

.mision__punto:nth-child(2) .mision__punto-icono {
    animation-delay: .4s;
}

.mision__punto:nth-child(3) .mision__punto-icono {
    animation-delay: .8s;
}

.mision__punto:nth-child(4) .mision__punto-icono {
    animation-delay: 1.2s;
}

@keyframes icono-pulse {

    0%,
    100% {
        box-shadow: 0 4px 16px rgba(217, 120, 43, .10);
    }

    50% {
        box-shadow: 0 4px 28px rgba(217, 120, 43, .28);
    }
}

.mision__punto:hover .mision__punto-icono {
    animation: none;
    transform: scale(1.08);
}

.mision__punto-icono {
    position: relative;
}

.mision__punto-icono::after {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    border: 2px solid rgba(217, 120, 43, .5);
    opacity: 0;
    transform: scale(.85);
    transition: opacity .3s, transform .3s;
}

.mision__punto:hover .mision__punto-icono::after {
    opacity: 1;
    transform: scale(1);
}

.mision__punto-titulo {
    position: relative;
    display: inline-block;
}

.mision__punto-titulo::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: #da741c;
    border-radius: 2px;
    transition: width .35s cubic-bezier(.4, 0, .2, 1);
}

.mision__punto:hover .mision__punto-titulo::after {
    width: 100%;
}

.mision__punto-desc {
    transition: transform .3s ease, color .25s;
}

.mision__punto:hover .mision__punto-desc {
    transform: translateY(-2px);
}

.mision__imagen {
    transition: transform .8s cubic-bezier(.25, .46, .45, .94);
}

.mision__imagen-wrap:hover .mision__imagen {
    transform: scale(1.04);
}

.mision__imagen-col::before {
    animation: blob-float 6s ease-in-out infinite;
}

@keyframes blob-float {

    0%,
    100% {
        transform: translate(0, 0) scale(1);
    }

    33% {
        transform: translate(12px, -16px) scale(1.04);
    }

    66% {
        transform: translate(-8px, 10px) scale(.97);
    }
}

.mision__arco path {
    stroke-dasharray: 600;
    stroke-dashoffset: 600;
    animation: arco-draw 1.6s cubic-bezier(.4, 0, .2, 1) .4s both;
}

@keyframes arco-draw {
    to {
        stroke-dashoffset: 0;
    }
}

.mision__tag {
    position: relative;
    overflow: hidden;
}

.mision__tag::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, .35),
            transparent);
    animation: tag-shimmer 3.5s ease-in-out 1s infinite;
}

@keyframes tag-shimmer {
    0% {
        left: -60%;
    }

    40% {
        left: 120%;
    }

    100% {
        left: 120%;
    }
}

@media (prefers-reduced-motion: reduce) {

    .mision__punto,
    .mision__punto-icono,
    .mision__linea-svg line,
    .mision__arco path,
    .mision__imagen-col::before,
    .mision__tag::after {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
        stroke-dashoffset: 0 !important;
    }
}

.mision__punto:nth-child(1) .mision__punto-icono {
    animation: icono-float-1 4s ease-in-out infinite;
}

.mision__punto:nth-child(2) .mision__punto-icono {
    animation: icono-float-2 4.6s ease-in-out infinite .4s;
}

.mision__punto:nth-child(3) .mision__punto-icono {
    animation: icono-float-3 3.8s ease-in-out infinite .8s;
}

@keyframes icono-float-1 {

    0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        box-shadow: 0 4px 16px rgba(217, 120, 43, .12);
    }

    30% {
        transform: translateY(-8px) rotate(-3deg);
        box-shadow: 0 12px 28px rgba(217, 120, 43, .22);
    }

    70% {
        transform: translateY(-4px) rotate(2deg);
        box-shadow: 0 8px 20px rgba(217, 120, 43, .16);
    }
}

@keyframes icono-float-2 {

    0%,
    100% {
        transform: translate(0px, 0px) rotate(0deg);
        box-shadow: 0 4px 16px rgba(217, 120, 43, .12);
    }

    25% {
        transform: translate(5px, -6px) rotate(3deg);
        box-shadow: 0 10px 24px rgba(217, 120, 43, .20);
    }

    75% {
        transform: translate(-4px, -9px) rotate(-2deg);
        box-shadow: 0 14px 30px rgba(217, 120, 43, .25);
    }
}

@keyframes icono-float-3 {

    0%,
    100% {
        transform: translateY(0px) scale(1);
        box-shadow: 0 4px 16px rgba(217, 120, 43, .12);
    }

    40% {
        transform: translateY(-10px) scale(1.06);
        box-shadow: 0 16px 32px rgba(217, 120, 43, .26);
    }

    80% {
        transform: translateY(-5px) scale(1.02);
        box-shadow: 0 10px 22px rgba(217, 120, 43, .18);
    }
}

.mision__punto-icono img {
    animation: img-wobble 5s ease-in-out infinite;
    transform-origin: center;
}

.mision__punto:nth-child(2) .mision__punto-icono img {
    animation-delay: .6s;
    animation-duration: 4.4s;
}

.mision__punto:nth-child(3) .mision__punto-icono img {
    animation-delay: 1.2s;
    animation-duration: 5.6s;
}

@keyframes img-wobble {

    0%,
    100% {
        transform: rotate(0deg) scale(1);
    }

    20% {
        transform: rotate(-6deg) scale(1.08);
    }

    50% {
        transform: rotate(4deg) scale(.95);
    }

    80% {
        transform: rotate(-3deg) scale(1.04);
    }
}

.mision__punto-icono::before {
    content: '';
    position: absolute;
    inset: -8px;
    border-radius: 50%;
    border: 2px solid rgba(217, 120, 43, .3);
    animation: ring-expand 3s ease-out infinite;
}

.mision__punto:nth-child(2) .mision__punto-icono::before {
    animation-delay: .8s;
}

.mision__punto:nth-child(3) .mision__punto-icono::before {
    animation-delay: 1.6s;
}

@keyframes ring-expand {
    0% {
        opacity: .7;
        transform: scale(.85);
    }

    70% {
        opacity: .1;
        transform: scale(1.35);
    }

    100% {
        opacity: 0;
        transform: scale(1.5);
    }
}

.mision__punto:hover .mision__punto-icono {
    animation: none !important;
    transform: scale(1.12) !important;
    box-shadow: 0 12px 32px rgba(217, 120, 43, .35) !important;
}

.mision__punto:hover .mision__punto-icono img {
    animation: none !important;
    transform: scale(1.1) !important;
    filter: brightness(0) invert(1) !important;
}

.mision__punto:hover .mision__punto-icono::before {
    animation: none !important;
    opacity: 0 !important;
}

@media (prefers-reduced-motion: reduce) {

    .mision__punto-icono,
    .mision__punto-icono img,
    .mision__punto-icono::before {
        animation: none !important;
        transform: none !important;
    }
}

/* BANNER INTEGRAL */
.bic {
    padding: 96px 24px;
    background-color: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 48px;
}

.bic__titulo {
    font-family: 'Syne', sans-serif;
    font-size: clamp(2rem, 5vw, 3.8rem);
    font-weight: 700;
    color: #ffffff;
    text-align: center;
    line-height: 1.15;
    letter-spacing: -0.03em;
    margin: 0;
    overflow: hidden;
}

.bic__line {
    display: block;
    opacity: 0;
    transform: translateY(50px);
    transition:
        opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1) calc(var(--i) * 0.16s),
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1) calc(var(--i) * 0.16s);
}

.bic.is-animated .bic__line {
    opacity: 1;
    transform: translateY(0);
}

.bic__titulo strong,
.bic__titulo span {
    color: #da741c;
    font-weight: inherit;
}

.bic__card {
    background: #1d1d1b;
    border: 1px solid rgba(217, 120, 43, 0.15);
    border-radius: 20px;
    padding: 48px 36px;
    width: 100%;
    max-width: 1400px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    text-decoration: none;
    position: relative;
    cursor: pointer;
    opacity: 0;
    transform: translateY(32px) scale(0.97);
    transition:
        opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.3s,
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.3s,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
    min-height: 400px;
    justify-content: center;
}

.bic__card::before {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    content: "";
    top: -40px;
    left: -40px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: url(./assets/img/TIC-WHITE.png) center center / 100px no-repeat rgba(255, 255, 255, 0.08);
    background-position: center center;
}

.bic.is-animated .bic__card {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.bic.is-animated .bic__icon-link {
    opacity: 1;
    transform: scale(1);
}

.bic__icon-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: rgba(218, 116, 28, 0.1);
    border: 1.5px solid rgba(218, 116, 28, 0.3);
    opacity: 0;
    transform: scale(0.8);
    transition:
        opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.4s,
        transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 0.4s,
        background 0.25s ease,
        border-color 0.25s ease;
    text-decoration: none;
}

.bic.is-animated .bic__icon-link {
    opacity: 1;
    transform: scale(1);
}

.bic__icon-link:hover {
    background: #da741c;
    border-color: #da741c;
    text-decoration: none;
}

.bic__pulse-ring {
    position: absolute;
    inset: -1px;
    border-radius: 50%;
    border: 1.5px solid #da741c;
    opacity: 0;
    animation: bic-pulse 2.2s ease-out infinite;
    pointer-events: none;
}

@keyframes bic-pulse {
    0% {
        transform: scale(1);
        opacity: 0.6;
    }

    100% {
        transform: scale(1.9);
        opacity: 0;
    }
}

.bic__icon {
    width: 44px;
    height: 44px;
    object-fit: contain;
    filter: invert(55%) sepia(70%) saturate(600%) hue-rotate(340deg) brightness(1.1);
    transition:
        filter 0.25s ease,
        transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    position: relative;
    z-index: 1;
}

.bic__icon-link:hover .bic__icon {
    filter: brightness(0) invert(1);
    transform: scale(1.12) rotate(-6deg);
}

.bic__tooltip {
    position: absolute;
    bottom: calc(100% + 12px);
    left: 50%;
    transform: translateX(-50%) translateY(6px);
    font-family: 'DM Sans', sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #1c1c1c;
    background: #da741c;
    padding: 5px 14px;
    border-radius: 100px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.bic__tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: #da741c;
}

.bic__icon-link:hover .bic__tooltip {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

@media (max-width: 768px) {
    .bic {
        padding: 72px 20px;
        gap: 40px;
    }

    .bic__icon-link {
        width: 88px;
        height: 88px;
    }

    .bic__icon {
        width: 38px;
        height: 38px;
    }
}

@media (max-width: 480px) {
    .bic {
        padding: 56px 16px;
        gap: 32px;
    }

    .bic__icon-link {
        width: 76px;
        height: 76px;
    }

    .bic__icon {
        width: 32px;
        height: 32px;
    }
}

footer ul {
    max-width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

@media (max-width:768px) {

    .proceso__title,
    .mision__title,
    .cobertura__titulo,
    .cards__imagen-title,
    .metricas__titulo,
    .industrias__title,
    .valores__titulo,
    .puntos-trabajo__titulo,
    .texto__valores-title,
    .cards__section .titulo__seccion,
    .valores__section h2 {
        font-size: 2rem;
    }

    .valores__section .section-header {
        margin: 0 auto 30px;
    }

    .metricas__descripcion,
    .valores__descripcion,
    .cards__imagen-subtitle,
    .industrias__subtitle,
    .texto__valores-desc {
        font-size: 1rem;
    }

    .industrias__item-front {
        display: none;
    }

    .proceso__header {
        margin: 0 auto 30px;
    }

    .logos__card {
        display: none;
    }
}

.footer__tic {
    background-color: #1d1d1b;
}

.footer-heading {
    cursor: pointer;
}

.list-unstyled li a:hover,
.footer-tagline:hover,
.footer-heading:hover {
    color: #da741c !important;
}
