/* ================================================================= */
/* Estilos FINAIS E COMPLETOS para o Widget Conexão G - Visão        */
/* Inclui todas as opções de layout e temas de cor                 */
/* ================================================================= */

/* --- 1. ESTILOS BASE (Layout, Espaçamento e Fontes) --- */
.conexao-visao { padding: 80px 0; position: relative; overflow: hidden; }
.conexao-visao__title-block { margin-bottom: 20px; }
.conexao-visao__subtitle-icon { margin-right: 6px; }
.conexao-visao__subtitle { font-size: 14px; font-weight: 600; text-transform: uppercase; margin: 0; }
.conexao-visao__title { font-size: 40px; font-weight: 700; line-height: 1.2; margin-top: 5px; }
.conexao-visao__summary { font-size: 16px; font-weight: 500; line-height: 1.8; }
.conexao-visao__feature-list { margin-top: 35px; }
.conexao-visao__feature-item-top { display: flex; align-items: center; gap: 15px; }
.conexao-visao__feature-icon { display: flex; align-items: center; justify-content: center; min-width: 50px; height: 50px; border-radius: 50%; font-size: 24px; transition: all 0.4s ease-in-out; flex-shrink: 0; }
.conexao-visao__feature-title { font-size: 18px; font-weight: 700; margin: 0; }
.conexao-visao__feature-text { font-size: 15px; font-weight: 500; line-height: 1.7; margin: 0; }
.conexao-visao__shape { position: absolute; bottom: 0; z-index: 0; left: 0; }

/* --- 2. LAYOUTS DA LISTA DE ITENS --- */
.conexao-visao__feature-list.feature-list--row { display: flex; gap: 30px; }
.conexao-visao__feature-list.feature-list--row .conexao-visao__feature-item { flex: 1; }
.conexao-visao__feature-list.feature-list--column { display: flex; flex-direction: column; gap: 25px; }
.conexao-visao__feature-list.feature-list--column .conexao-visao__feature-item { padding-bottom: 25px; border-bottom: 1px solid; }
.conexao-visao__feature-list.feature-list--column .conexao-visao__feature-item:last-child { border-bottom: none; padding-bottom: 0; }

/* --- 3. LAYOUTS DOS ITENS INDIVIDUAIS --- */
.conexao-visao__feature-item.item-layout--below .conexao-visao__feature-item-top { margin-bottom: 15px; }
.conexao-visao__feature-item.item-layout--integrated .conexao-visao__feature-item-top { align-items: flex-start; }
.conexao-visao__feature-item.item-layout--integrated .conexao-visao__feature-text-wrapper { display: flex; flex-direction: column; }
.conexao-visao__feature-item.item-layout--integrated .conexao-visao__feature-title { margin-bottom: 5px; }

/* --- 4. TEMA CLARO (APENAS TEXTOS E ELEMENTOS) --- */
.conexao-visao--light .conexao-visao__subtitle, 
.conexao-visao--light .conexao-visao__summary, 
.conexao-visao--light .conexao-visao__feature-text { color: var(--ostech-text, #686A6F); }
.conexao-visao--light .conexao-visao__title, 
.conexao-visao--light .conexao-visao__feature-title { color: var(--ostech-text-dark, #222429); }
.conexao-visao--light .feature-list--column .conexao-visao__feature-item { border-color: var(--ostech-border-color, #DBDBDB); }
.conexao-visao--light .conexao-visao__feature-icon { background: var(--ostech-gray, #F4F5F8); color: var(--ostech-base, #FFAA17); }
.conexao-visao--light .conexao-visao__feature-item:hover .conexao-visao__feature-icon { background: var(--ostech-base, #FFAA17); color: var(--ostech-secondary, #232429); }

/* --- 5. TEMA ESCURO (APENAS TEXTOS E ELEMENTOS) --- */
.conexao-visao--dark .conexao-visao__subtitle, 
.conexao-visao--dark .conexao-visao__summary, 
.conexao-visao--dark .conexao-visao__feature-text { color: var(--ostech-text-gray, #999B9F); }
.conexao-visao--dark .conexao-visao__title, 
.conexao-visao--dark .conexao-visao__feature-title { color: var(--ostech-white, #fff); }
.conexao-visao--dark .feature-list--column .conexao-visao__feature-item { border-color: rgba(255, 255, 255, 0.2); }
.conexao-visao--dark .conexao-visao__feature-icon { background: var(--ostech-black, #171717); color: var(--ostech-base, #FFAA17); }
.conexao-visao--dark .conexao-visao__feature-item:hover .conexao-visao__feature-icon { background: var(--ostech-base, #FFAA17); color: var(--ostech-secondary, #232429); }

/* --- 6. Responsividade --- */
@media (max-width: 991px) {
    .conexao-visao { padding: 80px 0; }
    .conexao-visao__shape { display: none; }
    .conexao-visao__feature-list.feature-list--row { flex-direction: column; gap: 30px; }
    .conexao-visao__text-column, .conexao-visao__image-column { width: 100% !important; flex: 0 0 100% !important; max-width: 100% !important; }
}

/* --- 6. ESTILOS DA IMAGEM, VÍDEO E MÁSCARA --- */
.conexao-visao .row { display: flex; flex-wrap: wrap; align-items: stretch; }
.conexao-visao .conexao-visao__image-wrapper { height: 100%; width: 100%; position: relative; border-radius: 8px; overflow: hidden; }
.conexao-visao .conexao-visao__image-wrapper::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: background-color 0.3s ease; pointer-events: none; z-index: 1; }

/* Regras para Imagem, Vídeo e Iframe preencherem o contêiner */
.conexao-visao .conexao-visao__image-wrapper img,
.conexao-visao .conexao-visao__image-wrapper video,
.conexao-visao .conexao-visao__image-wrapper iframe {
    height: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

/* Estilos da máscara */
.conexao-visao .conexao-visao__image-wrapper.image-mask--enabled { border-radius: 0; }
.conexao-visao .conexao-visao__image-wrapper.image-mask--enabled.image-mask--direction-left { clip-path: polygon(0% 0%, 75% 0%, 100% 100%, 25% 100%); }
.conexao-visao .conexao-visao__image-wrapper.image-mask--enabled.image-mask--direction-right { clip-path: polygon(25% 0%, 100% 0%, 75% 100%, 0% 100%); }
.conexao-visao .conexao-visao__image-wrapper.image-mask--enabled::after { clip-path: inherit; }

/* --- 7. Responsividade --- */
@media (max-width: 991px) {
    .conexao-visao { padding: 80px 0; }
    .conexao-visao__shape { display: none; }
    .conexao-visao__feature-list.feature-list--row { flex-direction: column; gap: 30px; }
    .conexao-visao__text-column, .conexao-visao__image-column { width: 100% !important; flex: 0 0 100% !important; max-width: 100% !important; }
    .conexao-visao__image-column { margin-top: 40px; }
    .conexao-visao .order-lg-1, .conexao-visao .order-lg-2 { order: initial; }
}

/* Para TABLET E MOBILE (abaixo de 992px) - Layout empilhado */
@media (max-width: 991px) {
    .conexao-visao { padding: 80px 0; }
    .conexao-visao__shape { display: none; }
    .conexao-visao__feature-list.feature-list--row { flex-direction: column; gap: 30px; }
    
    /* Garante que a imagem tenha um espaço acima quando empilhada */
    .conexao-visao__image-column {
        margin-top: 40px;
    }
    
    /* Garante que a ordem da imagem seja resetada no mobile */
    .conexao-visao .order-lg-1,
    .conexao-visao .order-lg-2 {
        order: initial;
    }
    .conexao-visao .conexao-visao__image-wrapper{
        min-height: 300px;
    }
}


.contact-one__list__action {
    font-size: 14px!important;
}

.contact-one__list__icon {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--ostech-secondary, #232429);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0; /* Impede o encolhimento do ícone */
}

.contact-one__list__icon i {
    font-size: 22px; /* Ajustável conforme fonte usada */
    line-height: 1;
    display: block;
    width: auto;
    height: auto;
}

/* ================================================================= */
/* Estilos para o Widget de Categorias WooCommerce                   */
/* ================================================================= */

.conexao-category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.conexao-category-card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 30px;
    overflow: hidden;
    color: #ffffff;
    text-decoration: none;
    transition: all 0.4s ease;
    border-radius: 8px;
}

.conexao-category-card__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    transition: transform 0.4s ease;
    transform: scale(1);
    z-index: 1;
}

/* NOVO: Regras para o ajuste da imagem de fundo */
.conexao-category-card__bg.bg-size--cover {
    background-size: cover;
    background-repeat: no-repeat;
}
.conexao-category-card__bg.bg-size--contain {
    background-size: contain;
    background-repeat: no-repeat;
}


.conexao-category-card__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0) 60%);
    z-index: 2;
    transition: background 0.4s ease;
}

.conexao-category-card__content {
    position: relative;
    z-index: 3;
    transition: all 0.4s ease;
}

.conexao-category-card__title {
    font-size: 28px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 10px;
}

.conexao-category-card__description {
    font-size: 16px;
    color: #dddddd;
    margin: 0 0 20px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;  
    overflow: hidden;
}

.conexao-category-card__button {
    font-size: 16px;
    font-weight: 600;
    color: var(--ostech-base, #FFAA17);
    text-decoration: none;
    transition: all 0.3s ease;
}

/* --- Efeitos de Visibilidade e Hover --- */
.conexao-category-card.content-visibility--hover .conexao-category-card__content {
    transform: translateY(20px);
    opacity: 0;
}
.conexao-category-card.content-visibility--hover:hover .conexao-category-card__content {
    transform: translateY(0);
    opacity: 1;
}
.conexao-category-card.content-visibility--visible .conexao-category-card__content {
    transform: translateY(0);
    opacity: 1;
}
.conexao-category-card.content-visibility--visible .conexao-category-card__overlay {
    background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.4) 50%, rgba(0,0,0,0) 100%);
}
.conexao-category-card:hover .conexao-category-card__bg {
    transform: scale(1.05);
}
.conexao-category-card:hover .conexao-category-card__button {
    text-decoration: underline;
}


/* --- Estilos para o Video Slider --- */
/* --- Estilos para o Video Slider --- */

.video-slider-one__item {
    position: relative;
    overflow: hidden;
    height: 700px; /* Ajuste a altura conforme necessário */
    display: flex; /* Ajuda no alinhamento do conteúdo */
    align-items: center;
    justify-content: center;
}

.video-slider-one__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    /* Estilos para quando for imagem */
    background-size: cover;
    background-position: center center;
}

.video-slider-one__bg-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-slider-one__bg-youtube {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.video-slider-one__bg-youtube iframe {
    height: 56.25vw;
    min-height: 100%;
    min-width: 177.77vh;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.video-slider-one__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.video-slider-one__content {
    position: relative;
    z-index: 3;
    color: #fff;
    text-align: center;
}

@media (min-width: 1300px) {
    .main-slider-one__title {
     font-size: 60px!important;
    }
}