/*==========================================================
    INTERNAL PAGES
==========================================================*/

:root{

    --internal-space:120px;
    --internal-radius:28px;
    --card-radius:24px;

    --primary:#9D2F2C;
    --primary-dark:#7E2522;

    --text:#342521;
    --text-light:#6B6158;

    --bg:#F8F4EE;

}

/*==========================================================
    BREADCRUMB
==========================================================*/

.breadcrumb-section{

    padding:25px 0 45px;

}

.breadcrumb{

    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;

    margin:0;
    padding:0;

    background:none;

    font-size:14px;

}

.breadcrumb li{

    list-style:none;

    color:#8D8177;

}

.breadcrumb li:not(:last-child)::after{

    content:"/";

    margin-left:10px;

    color:#C7BDB2;

}

.breadcrumb a{

    color:#8D8177;

    text-decoration:none;

    transition:.30s;

}

.breadcrumb a:hover{

    color:var(--primary);

}

/*==========================================================
    LISTAGEM DE PRODUTOS
==========================================================*/

.products-list{

    padding-bottom:120px;

}

/*==========================================================
    HEADER
==========================================================*/

.products-list-header{

    margin-bottom:60px;

}

.products-header-top{

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

    gap:40px;

    margin-bottom:28px;

    padding-bottom:25px;

    border-bottom:1px solid #ECE8E1;

}

.products-header-title{

    flex:1;

}

.products-header-title h2{

    margin:8px 0 0;

}

.products-header-actions{

    display:flex;

    align-items:center;

    gap:22px;

    flex-shrink:0;

}

.catalog-action{

    display:inline-flex;

    align-items:center;

    gap:8px;

    color:#777;

    font-size:.95rem;

    font-weight:500;

    text-decoration:none;

    transition:.30s;

}

.catalog-action:hover{

    color:var(--primary);

}

/*==========================================================
    NAVEGAÇÃO
==========================================================*/

.catalog-navigation{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

}

.catalog-navigation a{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 20px;

    border-radius:40px;

    background:#FFF;

    color:#6A6058;

    font-size:14px;

    font-weight:600;

    text-decoration:none;

    transition:.30s;

}

.catalog-navigation a:hover,

.catalog-navigation a.active{

    background:var(--primary);

    color:#FFF;

}

/*==========================================================
    CARD DO PRODUTO
==========================================================*/

.product-card{

    position:relative;

    height:100%;

    overflow:hidden;

    border-radius:26px;

    background:#FFF;

    box-shadow:0 18px 45px rgba(0,0,0,.06);

    transition:.35s;

}

.product-card>a{

    display:flex;

    flex-direction:column;

    height:100%;

    color:inherit;

    text-decoration:none;

}

.product-card:hover{

    transform:translateY(-10px);

    box-shadow:0 35px 70px rgba(0,0,0,.14);

}

.product-thumb{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:center;

    min-height:250px;

    padding:40px 35px 15px;

    overflow:hidden;

}

.product-thumb::before{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    border-radius:50%;

    background:radial-gradient(circle, rgba(157,47,44,.06), transparent 70%);

}

.product-thumb img{

    position:relative;

    width:78%;

    filter:drop-shadow(0 25px 30px rgba(0,0,0,.16));

    transition:.45s;

}

.product-card:hover .product-thumb img{

    transform:scale(1.08);

}

.product-content{

    display:flex;

    flex-direction:column;

    flex:1;

    padding:12px 28px 30px;

}

.product-content small{

    display:block;

    margin-bottom:12px;

    color:var(--primary);

    font-size:12px;

    font-weight:700;

    letter-spacing:.14em;

    text-transform:uppercase;

}

.product-content h3{

    margin-bottom:16px;

    color:var(--text);

    font-size:24px;

    line-height:1.15;

}

.product-content p{

    flex:1;

    margin-bottom:24px;

    color:#72665C;

    font-size:15px;

    line-height:1.8;

}

.product-link{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:var(--primary);

    font-size:14px;

    font-weight:700;

    transition:.30s;

}

.product-link i{

    transition:.30s;

}

.product-card:hover .product-link{

    color:var(--primary-dark);

}

.product-card:hover .product-link i{

    transform:translateX(8px);

}

.product-card::after{

    content:"";

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    height:4px;

    background:var(--primary);

    transform:scaleX(0);

    transform-origin:left;

    transition:.35s;

}

.product-card:hover::after{

    transform:scaleX(1);

}
/*==========================================================
    PAGINAÇÃO
==========================================================*/

.products-pagination{

    display:flex;

    justify-content:center;

    margin-top:70px;

}

.products-pagination .pagination{

    gap:14px;

    margin:0;

}

.products-pagination .page-link{

    display:flex;

    align-items:center;

    justify-content:center;

    width:48px;

    height:48px;

    border:none;

    border-radius:50%;

    background:#FFF;

    color:#4B3D38;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

    transition:.30s;

}

.products-pagination .page-link:hover,

.products-pagination .active .page-link{

    background:var(--primary);

    color:#FFF;

}

/*==========================================================
    CTA
==========================================================*/

.products-cta{

    padding:120px 0;

}

.products-cta h2{

    margin:18px 0;

    font-size:42px;

}

.products-cta h2 em{

    color:var(--primary);

    font-style:italic;

}

.products-cta p{

    max-width:620px;

    margin-top:22px;

    color:var(--text-light);

    font-size:18px;

    line-height:1.8;

}

/*==========================================================
    PRODUCT SHOW
==========================================================*/

.product-show{

    position:relative;

    overflow:hidden;

    padding:100px 0 80px;

    background:var(--bg);

}

.product-show::before{

    content:"";

    position:absolute;

    top:-220px;

    right:-180px;

    width:620px;

    height:620px;

    border-radius:50%;

    background:radial-gradient(rgba(157,47,44,.06),transparent 70%);

}

.product-show .container{

    position:relative;

    z-index:2;

}

/*==========================================================
    GRID
==========================================================*/

.product-show-grid{

    display:flex;

    align-items:center;

}

.product-show-grid>.col-lg-6{

    display:flex;

    justify-content:center;

}

.product-show-info{

    width:100%;

    max-width:560px;

}

/*==========================================================
    GALERIA
==========================================================*/

.product-show-gallery{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:center;

    width:100%;

    min-height:520px;

}

.product-show-gallery::before{

    content:"";

    position:absolute;

    width:460px;

    height:460px;

    border-radius:50%;

    background:radial-gradient(rgba(157,47,44,.05),transparent 72%);

}

.product-show-image{

    position:relative;

    z-index:2;

    display:flex;

    align-items:center;

    justify-content:center;

    width:100%;

    transition:transform .35s ease;

}

.product-show-image::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:10px;

    transform:translateX(-50%);

    width:240px;

    height:26px;

    border-radius:50%;

    background:rgba(0,0,0,.14);

    filter:blur(18px);

    z-index:-1;

}

.product-show-image img{

    width:auto;

    max-width:100%;

    opacity:1;

    transition:
        opacity .35s ease,
        transform .35s ease,
        filter .35s ease;

    filter:drop-shadow(0 30px 35px rgba(0,0,0,.18));

}

.product-show-image:hover img{

    transform:scale(1.03);

}

.product-show-image.changing{

    transform:scale(.97);

}

#product-image.changing{

    opacity:0;

}

/*==========================================================
    INFORMAÇÕES
==========================================================*/

.product-show-info .section-title{

    margin-bottom:18px;

}

.product-show-info h1{

    margin:0;

    font-size:42px;

    font-family:var(--font-title);

    line-height:1;

    color:var(--text);

}

.product-show-info h2{

    margin:18px 0 22px;

    font-size:18px;

    font-weight:500;

    line-height:1.6;

    color:#8A6A4D;

}

.product-show-summary{

    max-width:540px;

    margin:0;

    color:#6C625A;

    font-size:17px;

    line-height:1.9;

}

.product-show-divider{

    width:80px;

    height:3px;

    margin:32px 0;

    border-radius:30px;

    background:var(--primary);

}
/*==========================================================
    EMBALAGENS
==========================================================*/

.product-show-packages{

    margin-top:35px;

}

.product-show-packages h5{

    margin-bottom:18px;

    color:var(--text);

    font-size:22px;

    font-weight:700;

}

.package-options{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

}

.package-option{

    padding:12px 24px;

    border:none;

    border-radius:40px;

    background:#FFF;

    color:#6A6058;

    font-weight:600;

    cursor:pointer;

    box-shadow:0 10px 25px rgba(0,0,0,.05);

    transition:.30s;

}

.package-option:hover,

.package-option.active{

    background:var(--primary);

    color:#FFF;

}


/*====================================================
  TIPOS DE USO
====================================================*/

.product-show-uses{
    margin-top:40px;
}

.product-show-uses h5{
    margin:0 0 20px;
    font-size:22px;
    font-weight:700;
    color:#2d2d2d;
}

.product-use{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.use-badge{

    display:flex;
    align-items:center;
    gap:10px;

    padding:12px 18px;

    background:#fff;

    border:1px solid #e8e3db;
    border-radius:14px;

    box-shadow:0 10px 25px rgba(0,0,0,.06);

    transition:.25s ease;

    color:#4a4a4a;
    text-decoration:none;
}

.use-badge:hover{

    transform:translateY(-3px);

    box-shadow:0 15px 35px rgba(0,0,0,.12);

}

.use-badge span:last-child{

    font-weight:600;
    white-space:nowrap;

}

/*=====================================
  ÍCONES
=====================================*/

.use-badge i{

    font-size:24px;
    color:#A32924;

}

/*=====================================
  ÍCONE EXTERNO
=====================================*/

.icon-stack{

    position:relative;

    width:28px;
    height:28px;

    display:flex;
    align-items:center;
    justify-content:center;

}

.icon-stack .bi-house-fill{

    font-size:24px;
    color:#A32924;

}

.icon-stack .sun{

    position:absolute;

    top:-5px;
    right:-7px;

    font-size:12px;

    color:#FDB813;

}

/*=====================================
  NEW COLOR
=====================================*/

.use-badge.newcolor{

    border-color:#ffd89a;

    background:linear-gradient(
        135deg,
        #fffaf0,
        #ffffff
    );

}

.use-badge.newcolor .bi-palette-fill{

    background:linear-gradient(
        45deg,
        #e53935,
        #fb8c00,
        #fdd835,
        #43a047,
        #1e88e5,
        #8e24aa
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;

    background-clip:text;

    font-size:25px;

}

/*=====================================
  MOBILE
=====================================*/

@media(max-width:991px){

    .product-use{

        gap:10px;

    }

}

@media(max-width:767px){

    .product-show-uses h5{

        font-size:22px;

    }

    .product-use{

        flex-direction:column;

    }

    .use-badge{

        width:100%;

    }

}

/*====================================================
DOWNLOADS
====================================================*/

.product-show-downloads{
    margin-top:50px;
}

/*==========================================
HEADER
==========================================*/

.downloads-header{

    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:18px 22px;

    background:#fff;

    border:1px solid #e6e6e6;
    border-radius:12px;

    cursor:pointer;

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        background .25s ease;

}

.downloads-header:hover{

    border-color:var(--primary);

    background:#fcfcfc;

    box-shadow:0 6px 16px rgba(0,0,0,.05);

}

.downloads-title{

    display:flex;
    align-items:center;
    gap:12px;

    color:var(--primary);

    font-size:1.25rem;
    font-weight:700;

}

.downloads-title i{

    font-size:22px;

    transition:.30s;

}

.downloads-arrow{

    font-size:18px;

    color:#999;

    transition:
        transform .35s ease,
        color .25s ease;

}

.product-show-downloads.active .downloads-arrow{

    transform:rotate(180deg);

    color:var(--primary);

}

/*==========================================
BODY
==========================================*/

.downloads-body{

    max-height:0;

    overflow:hidden;

    opacity:0;

    padding-top:0;

    transition:
        max-height .45s ease,
        opacity .30s ease,
        padding .30s ease;

}

.product-show-downloads.active .downloads-body{

    max-height:2500px;

    opacity:1;

    padding-top:28px;

}

/*==========================================
GROUP
==========================================*/

.download-group{

    margin-bottom:35px;

}

.download-group:last-child{

    margin-bottom:0;

}

.download-group-title{

    display:flex;
    align-items:center;
    gap:10px;

    font-size:1rem;
    font-weight:700;

    color:#444;

    margin-bottom:18px;

    padding-bottom:10px;

    border-bottom:1px solid #ececec;

}

.download-group-title i{

    font-size:22px;

    color:var(--primary);

}

/*==========================================
GRID
==========================================*/

.downloads-grid{

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:15px;

}

/*==========================================
ITEM
==========================================*/

.download-item{

    display:flex;
    align-items:center;
    gap:16px;

    padding:16px 18px;

    border:1px solid #e5e5e5;
    border-radius:12px;

    background:#fff;

    text-decoration:none;

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;

}

.download-item:hover{

    border-color:var(--primary);

    transform:translateY(-2px);

    box-shadow:0 8px 18px rgba(0,0,0,.08);

}

.download-item > i:first-child{

    font-size:28px;

    color:var(--primary);

    flex-shrink:0;

}

.download-item div{

    flex:1;

    min-width:0;

}

.download-item strong{

    display:block;

    color:#222;

    font-size:.95rem;

    margin-bottom:3px;

}

.download-item small{

    display:block;

    color:#777;

    line-height:1.4;

}

.download-item .bi-download{

    color:#999;

    font-size:20px;

    transition:
        color .20s ease,
        transform .20s ease;

}

.download-item:hover .bi-download{

    color:var(--primary);

    transform:translateY(2px);

}

/*==========================================
RESPONSIVO
==========================================*/

@media (max-width:991px){

    .downloads-grid{

        grid-template-columns:1fr;

    }

    .downloads-header{

        padding:16px 18px;

    }

    .downloads-title{

        font-size:1.1rem;

    }

    .downloads-title i{

        font-size:20px;

    }

}

/*==========================================================
    BOTÕES
==========================================================*/

.product-show-actions{

    display:flex;

    flex-wrap:wrap;

    align-items:center;

    gap:18px;

    margin-top:40px;

}

.product-show-actions .btn-primary-custom,

.product-show-actions .btn-outline{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:220px;

    height:56px;

    border-radius:50px;

    font-weight:700;

    text-decoration:none;

    transition:.30s;

}

.product-show-actions a:hover{

    transform:translateY(-2px);

}


.btn-outline{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:14px 30px;

    border:2px solid var(--primary);

    border-radius:50px;

    background:transparent;

    color:var(--primary);

    font-weight:700;

    text-decoration:none;

    transition:.30s;

}

.btn-outline:hover{

    background:var(--primary);

    color:#FFF;

    border-color:var(--primary);

}

.btn-outline i{

    font-size:18px;

    transition:.30s;

}

.btn-outline:hover i{

    transform:translateX(4px);

}


/*==========================================================
    TABS
==========================================================*/

.product-show-content{

    padding:90px 0;

    background:#F8F4EE;

}

.product-show-content .container{
    padding:60px 70px;

    border:1px solid #E9D7B8;

    border-radius:34px;

    background:#F6EEDF;

    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

.product-show-tabs{

    display:flex;

    gap:12px;

    margin-bottom:45px;

    border:none;

}

.product-show-tabs .nav-link{

    padding:14px 28px;

    border:none;

    border-radius:40px;

    background:#FFF;

    color:#6A6058;

    font-weight:700;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

    transition:.30s;

}

.product-show-tabs .nav-link:hover,

.product-show-tabs .nav-link.active{

    background:var(--primary);

    color:#FFF;

}

.product-show-tab-content{

    padding:50px;

    border-radius:24px;

    background:#FFF;

    box-shadow:0 18px 45px rgba(0,0,0,.05);

}

/*==========================================================
    EDITOR
==========================================================*/

.product-show-editor{

    color:#615851;

    font-size:17px;

    line-height:1.9;

}

.product-show-editor>*:first-child{

    margin-top:0;

}

.product-show-editor>*:last-child{

    margin-bottom:0;

}

.product-show-editor h2,

.product-show-editor h3,

.product-show-editor h4{

    margin:40px 0 18px;

    color:var(--text);

    font-family:var(--font-title);

}

.product-show-editor p{

    margin-bottom:18px;

}

.product-show-editor ul{

    margin:25px 0;

    padding-left:20px;

}

.product-show-editor li{

    margin-bottom:12px;

}

.product-show-editor img{

    max-width:100%;

    border-radius:20px;

}

.product-show-editor table{

    width:100%;

    margin:35px 0;

    border-collapse:collapse;

}

.product-show-editor td,

.product-show-editor th{

    padding:14px;

    border:1px solid #ECE5DB;

}

.product-show-editor th{

    background:#F8F4EE;

    color:var(--text);

}



/*==========================================================
    CORES DISPONÍVEIS
==========================================================*/

.product-colors-photo{

    position:relative;

    height:100%;

    width: 94%;

    overflow:hidden;

    border-radius:30px;

    transition:
        background-color .45s ease,
        transform .35s ease;

}

.product-colors-photo.changing{

    transform:scale(.985);

}

.product-colors-photo img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:transform .35s ease;

}

.product-colors-photo:hover img{

    transform:scale(1.03);

}

#selectedColor{

    display:block;

    opacity:1;

    transition:
        opacity .25s ease,
        transform .25s ease;

}

#selectedColor.changing{

    opacity:0;

    transform:translateY(6px);

}


/*==========================================================
    HIGHLIGHTS
==========================================================*/

.product-show-highlights{

    padding:90px 0;

    background:#F8F4EE;

}

.highlight-card{

    height:100%;

    padding:38px;

    border-radius:24px;

    background:#FFF;

    box-shadow:0 15px 35px rgba(0,0,0,.05);

    transition:.30s;

}

.highlight-card:hover{

    transform:translateY(-8px);

    box-shadow:0 25px 50px rgba(0,0,0,.10);

}

.highlight-card .icon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:64px;

    height:64px;

    margin-bottom:22px;

    border-radius:18px;

    background:#F8F4EE;

    color:var(--primary);

    font-size:28px;

}

.highlight-card h4{

    margin-bottom:14px;

    color:var(--text);

    font-family:var(--font-title);

}

.highlight-card p{

    margin:0;

    color:var(--text-light);

    line-height:1.8;

}


/*==========================================================
    PRODUTOS RELACIONADOS
==========================================================*/

.related-products{

    position:relative;

    overflow:hidden;

    padding:140px 0;

    background-color:#F8F4EE;

    background-image:
        radial-gradient(
            rgba(48,24,20,.06) 1px,
            transparent 1px
        ),
        radial-gradient(
            rgba(48,24,20,.04) 1px,
            transparent 1px
        );

    background-size:
        6px 6px,
        13px 13px;

    background-position:
        0 0,
        3px 3px;

}

.related-products::before{

    content:"";

    position:absolute;

    top:-80px;
    right:-120px;

    width:320px;
    height:320px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(199,156,70,.22),
            transparent 70%
        );

    pointer-events:none;

}

.related-products .section-title{

    margin-bottom:60px;

}

/*
    Utiliza os mesmos .product-card da listagem.
*/

/*==========================================================
    ANIMAÇÕES
==========================================================*/

.product-show-gallery,
.product-show-info,
.products-list,
.related-products{

    animation:fadeUp .7s ease both;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(35px);

    }

    to{

        opacity:1;

        transform:none;

    }

}

.product-card,
.package-option,
.download-item,
.highlight-card{

    will-change:transform;

}

/*==========================================================
    TRANSIÇÕES
==========================================================*/

.product-card,
.package-option,
.download-item{

    transition:all .30s ease;

}

/*==========================================================
    SCROLL
==========================================================*/

html{

    scroll-behavior:smooth;

}



/*====================================================
REPRESENTANTES
====================================================*/

.representatives-page{

    padding:80px 0 100px;

}

/*====================================================
BUSCA
====================================================*/

.representatives-search{

    max-width:700px;

    margin:0 auto 50px;

}

.search-box{

    position:relative;

}

.search-box i{

    position:absolute;

    left:22px;

    top:50%;

    transform:translateY(-50%);

    color:var(--primary);

    font-size:20px;

}

.search-box input{

    height:64px;

    width: 100%;

    border-radius:50px;

    border:1px solid #e5e5e5;

    padding:0 25px 0 60px;

    font-size:16px;

    transition:.3s;

    box-shadow:none;

}

.search-box input:focus{

    border-color:var(--primary);

    box-shadow:0 0 0 4px rgba(216,30,38,.08);

}

/*====================================================
MAPA
====================================================*/

.representatives-map{

    margin-bottom:70px;

}

#representativesMap{

    height:650px;

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 25px 70px rgba(0,0,0,.08);

}

/*====================================================
LISTA
====================================================*/

.representatives-list{

    margin-top:30px;

}

/*====================================================
CARD
====================================================*/

.rep-card{

    background:#fff;

    border-radius:22px;

    padding:30px;

    border:1px solid #ececec;

    height:100%;

    cursor:pointer;

    transition:.35s;

    display:flex;

    flex-direction:column;

    justify-content:space-between;

}

.rep-card:hover{

    transform:translateY(-8px);

    box-shadow:0 25px 60px rgba(0,0,0,.08);

}

.rep-card.active{

    border:2px solid var(--primary);

    box-shadow:0 20px 50px rgba(216,30,38,.18);

}

/*====================================================
HEADER
====================================================*/

.rep-card-header{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:25px;

}

.rep-icon{

    width:64px;

    height:64px;

    border-radius:50%;

    background:rgba(216,30,38,.08);

    display:flex;

    align-items:center;

    justify-content:center;

}

.rep-icon i{

    font-size:28px;

    color:var(--primary);

}

.rep-card-header small{

    display:block;

    color:var(--primary);

    text-transform:uppercase;

    font-weight:700;

    letter-spacing:.08em;

    margin-bottom:6px;

}

.rep-card-header h3{

    margin:0;

    font-size:24px;

    font-weight:700;

}

/*====================================================
CIDADES
====================================================*/

.rep-cities{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-bottom:30px;

}

.rep-cities span{

    background:#f4f4f4;

    border-radius:30px;

    padding:8px 16px;

    font-size:14px;

    transition:.3s;

}

.rep-card:hover .rep-cities span{

    background:rgba(216,30,38,.08);

}

/*====================================================
FOOTER
====================================================*/

.rep-card-footer{

    display:flex;

    align-items:center;

    justify-content:space-between;

    border-top:1px solid #eee;

    padding-top:22px;

}

.rep-phone{

    display:flex;

    align-items:center;

    gap:10px;

    font-weight:600;

}

.rep-phone i{

    color:var(--primary);

}

.rep-whatsapp{

    width:50px;

    height:50px;

    border-radius:50%;

    background:#25D366;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    font-size:24px;

    transition:.3s;

}

.rep-whatsapp:hover{

    transform:scale(1.1);

    color:#fff;

}

/*====================================================
POPUP MAPA
====================================================*/

.rep-popup{

    min-width:220px;

}

.rep-popup h4{

    margin-bottom:5px;

    font-size:18px;

}

.rep-popup span{

    color:var(--primary);

    font-weight:600;

}

.popup-cities{

    margin:15px 0;

    display:flex;

    flex-wrap:wrap;

    gap:6px;

}

.popup-cities small{

    background:#f4f4f4;

    border-radius:20px;

    padding:5px 10px;

    font-size:12px;

}

.popup-whatsapp{

    display:inline-block;

    background:#25D366;

    color:#fff;

    padding:10px 18px;

    border-radius:30px;

    text-decoration:none;

    font-size:14px;

}

.popup-whatsapp:hover{

    color:#fff;

}

/*====================================================
RESPONSIVO
====================================================*/

@media(max-width:991px){

    #representativesMap{

        height:520px;

    }

}

@media(max-width:767px){

    .representatives-page{

        padding:50px 0 70px;

    }

    #representativesMap{

        height:420px;

        border-radius:18px;

    }

    .rep-card{

        padding:25px;

    }

    .rep-card-header{

        flex-direction:column;

        text-align:center;

    }

    .rep-cities{

        justify-content:center;

    }

    .rep-card-footer{

        flex-direction:column;

        gap:20px;

    }

}





/*====================================================
ABOUT
====================================================*/

.about-intro{
    position:relative;
}

/*====================================================
TIMELINE
====================================================*/

.about-timeline{
    position:relative;
    background:#f8f9fb;
    overflow:hidden;
}

.about-timeline .container{
    position:relative;
    z-index:2;
}

.about-timeline .timeline{

    position:relative;

    max-width:900px;

    margin:70px auto 0;

}

.about-timeline .timeline::before{

    content:"";

    position:absolute;

    left:80px;

    top:0;

    bottom:0;

    width:3px;

    background:linear-gradient(
        to bottom,
        var(--primary),
        rgba(216,30,38,.15)
    );

}

.timeline-item{

    position:relative;

    display:flex;

    gap:40px;

    margin-bottom:60px;

}

.timeline-item:last-child{

    margin-bottom:0;

}

.timeline-year{

    position:relative;

    min-width:80px;

    width:80px;

    height:80px;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:700;

    font-size:22px;

    z-index:2;

    box-shadow:0 15px 35px rgba(0,0,0,.15);

}

.timeline-content{

    flex:1;

    background:#fff;

    padding:35px;

    border-radius:22px;

    box-shadow:0 15px 45px rgba(0,0,0,.05);

    transition:.35s;

}

.timeline-content:hover{

    transform:translateY(-8px);

    box-shadow:0 30px 60px rgba(0,0,0,.10);

}

.timeline-content h3{

    margin-bottom:15px;

    font-size:26px;

    font-weight:700;

}

.timeline-content p{

    margin:0;

    color:#6b7280;

    line-height:1.8;

    font-size:16px;

}

/*====================================================
FEATURES
====================================================*/

.about-features{

    background:#fff;

}

.feature-card{

    height:100%;

    padding:45px 35px;

    background:#fff;

    border-radius:24px;

    text-align:center;

    border:1px solid #ececec;

    transition:.35s;

    position:relative;

    overflow:hidden;

}

.feature-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:4px;

    background:var(--primary);

    transform:scaleX(0);

    transition:.35s;

}

.feature-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(0,0,0,.08);

}

.feature-card:hover::before{

    transform:scaleX(1);

}

.feature-icon{

    width:90px;

    height:90px;

    margin:0 auto 30px;

    border-radius:50%;

    background:rgba(216,30,38,.08);

    display:flex;

    align-items:center;

    justify-content:center;

    transition:.35s;

}

.feature-card:hover .feature-icon{

    background:var(--primary);

    transform:rotate(-8deg);

}

.feature-icon i{

    font-size:42px;

    color:var(--primary);

    transition:.35s;

}

.feature-card:hover .feature-icon i{

    color:#fff;

}

.feature-card h3{

    font-size:24px;

    margin-bottom:18px;

    font-weight:700;

}

.feature-card p{

    color:#6b7280;

    line-height:1.8;

    margin:0;

}

/*====================================================
SECTION TITLES
====================================================*/

.about-intro h2,
.about-timeline h2,
.about-features h2{

    max-width:720px;

    margin-left:auto;

    margin-right:auto;

}

.about-timeline h2 em,
.about-intro h2 em,
.about-features h2 em{

    font-style:normal;

    color:var(--primary);

}

/*====================================================
ANIMATION
====================================================*/

.timeline-item,
.feature-card{

    animation:fadeUp .6s ease both;

}

.timeline-item:nth-child(2){

    animation-delay:.15s;

}

.timeline-item:nth-child(3){

    animation-delay:.30s;

}

.feature-card:nth-child(2){

    animation-delay:.1s;

}

.feature-card:nth-child(3){

    animation-delay:.2s;

}

.feature-card:nth-child(4){

    animation-delay:.3s;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(40px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/*====================================================
RESPONSIVO
====================================================*/

@media(max-width:991px){

    .about-timeline .timeline::before{

        left:40px;

    }

    .timeline-item{

        gap:25px;

    }

    .timeline-year{

        width:70px;

        height:70px;

        min-width:70px;

        font-size:18px;

    }

    .timeline-content{

        padding:30px;

    }

    .feature-card{

        padding:35px 25px;

    }

}

@media(max-width:767px){

    .about-timeline .timeline{

        margin-top:40px;

    }

    .about-timeline .timeline::before{

        display:none;

    }

    .timeline-item{

        flex-direction:column;

        gap:20px;

        margin-bottom:40px;

    }

    .timeline-year{

        margin:auto;

    }

    .timeline-content{

        text-align:center;

    }

    .timeline-content h3{

        font-size:22px;

    }

    .feature-card{

        padding:35px 28px;

    }

    .feature-icon{

        width:75px;

        height:75px;

    }

    .feature-icon i{

        font-size:34px;

    }

}


/*====================================================
QUALITY
====================================================*/

.about-quality{

    background:#111;

    color:#fff;

    position:relative;

    overflow:hidden;

}

.about-quality::before{

    content:"";

    position:absolute;

    right:-180px;

    top:-180px;

    width:520px;

    height:520px;

    border-radius:50%;

    background:rgba(255,255,255,.03);

}

.about-quality::after{

    content:"";

    position:absolute;

    left:-220px;

    bottom:-220px;

    width:450px;

    height:450px;

    border-radius:50%;

    background:rgba(216,30,38,.08);

}

.about-quality .container{

    position:relative;

    z-index:2;

}

.about-quality h2{

    color:#fff;

}

.about-quality h2 em{

    color:var(--primary);

    font-style:normal;

}

.about-quality p{

    color:rgba(255,255,255,.75);

    line-height:1.9;

    margin:30px 0;

}

.quality-list{

    list-style:none;

    margin:0;

    padding:0;

}

.quality-list li{

    display:flex;

    align-items:center;

    gap:14px;

    margin-bottom:18px;

    font-size:17px;

}

.quality-list i{

    color:var(--primary);

    font-size:22px;

}

.quality-seal{

    background:#fff;

    border-radius:30px;

    padding:60px;

    text-align:center;

    box-shadow:0 30px 70px rgba(0,0,0,.25);

}

.quality-seal img{

    max-width:100%;

    width:280px;

    transition:.35s;

}

.quality-seal:hover img{

    transform:scale(1.05);

}

/*====================================================
CTA
====================================================*/

.about-cta{

    padding:110px 0;

    background:#fff;

}

.cta-box{

    background:linear-gradient(
        135deg,
        var(--primary),
        #8b1117
    );

    color:#fff;

    text-align:center;

    padding:90px 70px;

    border-radius:32px;

    overflow:hidden;

    position:relative;

}

.cta-box::before{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    border-radius:50%;

    right:-160px;

    top:-160px;

    background:rgba(255,255,255,.08);

}

.cta-box::after{

    content:"";

    position:absolute;

    width:280px;

    height:280px;

    border-radius:50%;

    left:-120px;

    bottom:-120px;

    background:rgba(255,255,255,.05);

}

.cta-box>*{

    position:relative;

    z-index:2;

}

.cta-box span{

    display:inline-block;

    letter-spacing:3px;

    font-size:13px;

    margin-bottom:18px;

    opacity:.9;

}

.cta-box h2{

    color:#fff;

    font-size:52px;

    margin-bottom:25px;

}

.cta-box p{

    max-width:700px;

    margin:0 auto;

    color:rgba(255,255,255,.90);

    line-height:1.9;

}

.cta-box .btn{

    margin-top:40px;

    padding:18px 42px;

    font-weight:600;

    border-radius:50px;

    background:#fff;

    color:var(--primary);

    border:none;

    transition:.30s;

}

.cta-box .btn:hover{

    transform:translateY(-4px);

    background:#f4f4f4;

}

/*====================================================
RESPONSIVO
====================================================*/

@media(max-width:991px){

    .quality-seal{

        padding:40px;

    }

    .cta-box{

        padding:70px 40px;

    }

    .cta-box h2{

        font-size:40px;

    }

}

@media(max-width:767px){

    .about-quality{

        text-align:center;

    }

    .quality-list li{

        justify-content:center;

    }

    .quality-seal{

        padding:30px;

    }

    .quality-seal img{

        width:220px;

    }

    .cta-box{

        padding:60px 30px;

    }

    .cta-box h2{

        font-size:30px;

        line-height:1.3;

    }

    .cta-box p{

        font-size:15px;

    }

}




/*====================================================
CONTATO
====================================================*/

.contact-page{
    position:relative;
    padding:90px 0 100px;
    overflow:hidden;

}

.contact-page::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:radial-gradient(rgba(216,30,38,.05) 1px,transparent 1px);
    background-size:18px 18px;
    opacity:.35;
    pointer-events:none;
}

.contact-page .container{
    position:relative;
    z-index:2;
}

/*====================================================
HEADER
====================================================*/

.contact-header{
    max-width:850px;
    margin:0 auto 70px;
    text-align:center;
}

.contact-header-subtitle{
    display:inline-block;
    margin-bottom:18px;
    color:var(--primary);
    font-size:13px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.contact-header-title{
    margin:0 0 25px;
    font-size:54px;
    font-weight:800;
    line-height:1.15;
    color:#1d1d1d;
}

.contact-header-text{
    max-width:680px;
    margin:0 auto;
    font-size:18px;
    line-height:1.8;
    color:#707070;
}

/*====================================================
LAYOUT
====================================================*/

.contact-page .row{
    align-items:stretch;
}

.contact-page .col-lg-7,
.contact-page .col-lg-5{
    display:flex;
}

.contact-form-box,
.contact-info-list{
    width:100%;
}

/*====================================================
FORMULÁRIO
====================================================*/

.contact-form-box{
    background:#fff;
    border-radius:28px;
    padding:50px;
    border:1px solid #ececec;
    box-shadow:0 25px 70px rgba(0,0,0,.06);
}

.contact-label{
    display:block;
    margin-bottom:12px;
    color:#444;
    font-size:14px;
    font-weight:600;
}

.contact-input,
.contact-textarea{
    width:100%;
    border:1px solid #e6e6e6;
    border-radius:18px;
    background:#fff;
    box-shadow:none;
    transition:.30s;
    font-size:15px;
}

.contact-input{
    height:64px;
    padding:0 22px;
}

.contact-textarea{
    min-height:180px;
    resize:none;
    padding:18px 22px;
}

.contact-input:hover,
.contact-textarea:hover{
    border-color:#d6d6d6;
}

.contact-input:focus,
.contact-textarea:focus{
    outline:none;
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(216,30,38,.08);
}

/*====================================================
BOTÃO
====================================================*/

.contact-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:240px;
    height:58px;
    padding:0 42px;
    border:none;
    border-radius:50px;
    background:var(--primary);
    color:#fff;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
    transition:.35s;
    text-decoration:none;
}

.contact-btn:hover{
    background:#b81920;
    color:#fff;
    transform:translateY(-4px);
    box-shadow:0 18px 40px rgba(216,30,38,.28);
}

.contact-btn:focus{
    outline:none;
    box-shadow:0 0 0 4px rgba(216,30,38,.15);
}

/*====================================================
INFORMAÇÕES
====================================================*/

.contact-info-list{
    display:flex;
    flex-direction:column;
    gap:22px;
    height:100%;
}

.contact-info-card{
    display:flex;
    align-items:center;
    gap:22px;
    padding:24px 28px;
    min-height:110px;
    background:#fff;
    border:1px solid #ececec;
    border-radius:24px;
    box-shadow:0 12px 35px rgba(0,0,0,.04);
    transition:.35s;
}

.contact-info-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 60px rgba(0,0,0,.08);
}

.contact-info-icon{
    width:64px;
    height:64px;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(216,30,38,.08);
    transition:.35s;
}

.contact-info-icon i{
    font-size:24px;
    color:var(--primary);
    transition:.35s;
}

.contact-info-card:hover .contact-info-icon{
    background:var(--primary);
}

.contact-info-card:hover .contact-info-icon i{
    color:#fff;
}

.contact-info-card small{
    display:block;
    margin-bottom:6px;
    color:var(--primary);
    font-size:12px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.contact-info-card h4{
    margin:0;
    color:#1d1d1d;
    font-size:20px;
    font-weight:700;
    line-height:1.45;
}

/*====================================================
MAPA
====================================================*/

.contact-map-section{
    padding:20px 0 110px;
    position:relative;
    background:#fff;
}

.contact-map-header{
    text-align:center;
    max-width:820px;
    margin:0 auto 50px;
}

.contact-map-box{
    overflow:hidden;
    background:#fff;
    border-radius:30px;
    border:1px solid #ececec;
    box-shadow:0 30px 80px rgba(0,0,0,.08);
}

.contact-map-box iframe{
    display:block;
    width:100%;
    height:560px;
    border:0;
}

/*====================================================
ANIMAÇÕES
====================================================*/

.contact-form-box,
.contact-info-card,
.contact-map-box{
    animation:contactFade .6s ease both;
}

.contact-info-card:nth-child(2){
    animation-delay:.10s;
}

.contact-info-card:nth-child(3){
    animation-delay:.20s;
}

.contact-info-card:nth-child(4){
    animation-delay:.30s;
}

@keyframes contactFade{

    from{
        opacity:0;
        transform:translateY(35px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/*====================================================
CTA
====================================================*/

.contact-cta{
    padding:0 0 120px;
    background:#fff;
}

.contact-cta-box{
    position:relative;
    overflow:hidden;
    border-radius:34px;
    padding:90px 70px;
    text-align:center;
    background:linear-gradient(135deg,var(--primary),#8d171d);
    color:#fff;
    box-shadow:0 30px 80px rgba(0,0,0,.12);
}

.contact-cta-box::before{
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    left:-170px;
    bottom:-170px;
    border-radius:50%;
    background:rgba(255,255,255,.05);
}

.contact-cta-box::after{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    top:-140px;
    right:-140px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
}

.contact-cta-box > *{
    position:relative;
    z-index:2;
}

.contact-cta-title{
    margin:0 0 25px;
    color:#fff;
    font-size:52px;
    font-weight:800;
    line-height:1.2;
}

.contact-cta-text{
    max-width:700px;
    margin:0 auto 40px;
    color:rgba(255,255,255,.92);
    font-size:18px;
    line-height:1.8;
}

.contact-cta-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-width:250px;
    height:58px;
    padding:0 36px;
    border-radius:50px;
    background:#fff;
    color:var(--primary);
    text-decoration:none;
    font-size:15px;
    font-weight:700;
    transition:.35s;
}

.contact-cta-btn:hover{
    background:#f7f7f7;
    color:var(--primary);
    transform:translateY(-4px);
    box-shadow:0 20px 45px rgba(0,0,0,.18);
}

/*====================================================
RESPONSIVO
====================================================*/

@media (max-width:1199px){

    .contact-page{
        padding:80px 0;
    }

    .contact-header-title{
        font-size:46px;
    }

    .contact-form-box{
        padding:40px;
    }

    .contact-cta-box{
        padding:70px 50px;
    }

}

@media (max-width:991px){

    .contact-header{
        margin-bottom:50px;
    }

    .contact-header-title{
        font-size:40px;
    }

    .contact-info-list{
        margin-top:35px;
    }

    .contact-map-section{
        padding:10px 0 90px;
    }

    .contact-map-box iframe{
        height:450px;
    }

    .contact-cta{
        padding-bottom:90px;
    }

    .contact-cta-title{
        font-size:38px;
    }

}

@media (max-width:767px){

    .contact-page{
        padding:60px 0;
    }

    .contact-header{
        margin-bottom:40px;
    }

    .contact-header-title{
        font-size:32px;
        line-height:1.25;
    }

    .contact-header-text{
        font-size:16px;
    }

    .contact-form-box{
        padding:28px;
        border-radius:22px;
    }

    .contact-btn{
        width:100%;
    }

    .contact-info-card{
        padding:20px;
        min-height:auto;
        gap:18px;
    }

    .contact-info-icon{
        width:56px;
        height:56px;
    }

    .contact-info-card h4{
        font-size:17px;
    }

    .contact-map-box{
        border-radius:22px;
    }

    .contact-map-box iframe{
        height:360px;
    }

    .contact-cta{
        padding-bottom:70px;
    }

    .contact-cta-box{
        padding:55px 30px;
        border-radius:24px;
    }

    .contact-cta-title{
        font-size:30px;
        line-height:1.3;
    }

    .contact-cta-text{
        font-size:15px;
    }

    .contact-cta-btn{
        width:100%;
    }

}

@media (max-width:575px){

    .contact-header-title{
        font-size:28px;
    }

    .contact-form-box{
        padding:22px;
    }

    .contact-input{
        height:58px;
    }

    .contact-textarea{
        min-height:160px;
    }

}



/*====================================================
NOTÍCIAS - LIST
====================================================*/

.internal-news{
    padding:90px 0;
}

.internal-news .blog-card{
    height:100%;
    background:#fff;
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.35s;
}

.internal-news .blog-card:hover{
    transform:translateY(-8px);
}

.internal-news .blog-card a{
    display:block;
    color:inherit;
    text-decoration:none;
}

.internal-news .blog-image{
    position:relative;
    overflow:hidden;
}

.internal-news .blog-image img{
    width:100%;
    height:260px;
    object-fit:cover;
    transition:.35s;
}

.internal-news .blog-card:hover img{
    transform:scale(1.05);
}

.internal-news .blog-category{
    position:absolute;
    left:20px;
    bottom:20px;
    background:var(--primary);
    color:#fff;
    padding:8px 18px;
    border-radius:50px;
    font-size:.75rem;
    font-weight:600;
}

.internal-news .blog-content{
    padding:28px;
}

.internal-news .blog-content small{
    display:block;
    color:#999;
    margin-bottom:12px;
}

.internal-news .blog-content h3{
    font-size:1.35rem;
    margin-bottom:15px;
    line-height:1.35;
}

.internal-news .blog-content p{
    margin-bottom:18px;
    color:#666;
}

.internal-news .blog-link{
    color:var(--primary);
    font-weight:600;
}


/*====================================================
NOTÍCIA - SHOW
====================================================*/

.news-single{
    padding:90px 0;
}

.news-header{
    margin-bottom:50px;
    text-align:center;
}

.news-meta{
    display:flex;
    justify-content:center;
    gap:20px;
    margin:20px 0;
    color:#888;
}

.news-header h1{
    font-size:3rem;
    line-height:1.2;
    margin-bottom:20px;
}

.news-subtitle{
    max-width:850px;
    margin:auto;
    color:#666;
    font-size:1.2rem;
    line-height:1.8;
}

.news-cover{
    margin:0 0 60px;
    overflow:hidden;
    border-radius:22px;
}

.news-cover img{
    width:100%;
    display:block;
}

.news-content{
    font-size:1.05rem;
    line-height:2;
}

.news-content h2{
    margin:45px 0 20px;
}

.news-content h3{
    margin:35px 0 20px;
}

.news-content p{
    margin-bottom:22px;
}

.news-content img{
    max-width:100%;
    border-radius:18px;
    margin:35px auto;
    display:block;
}

.news-content iframe{
    width:100%;
    min-height:500px;
    border:0;
    border-radius:18px;
}

.news-author{
    margin-top:50px;
    padding-top:25px;
    border-top:1px solid #ececec;
    color:#777;
}


/*====================================================
ÚLTIMAS NOTÍCIAS
====================================================*/

.news-latest{
    padding:90px 0;
    background:#f8f5ef;
}

.news-latest .blog-header{
    margin-bottom:50px;
    text-align:center;
}


/*====================================================
RESPONSIVO
====================================================*/

@media(max-width:991px){

    .news-header h1{
        font-size:2.3rem;
    }

    .news-content iframe{
        min-height:320px;
    }

}

@media(max-width:767px){

    .news-header h1{
        font-size:1.8rem;
    }

    .news-meta{
        flex-direction:column;
        gap:8px;
    }

    .internal-news .blog-image img{
        height:220px;
    }

    .news-content iframe{
        min-height:240px;
    }

}





/*====================================================
NOTÍCIAS
====================================================*/

.news-list{

    padding:90px 0;

    background:#f8f5ef;

}

.news-card{

    height:100%;

    background:#FFF;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

    transition:.35s;

}

.news-card:hover{

    transform:translateY(-8px);

    box-shadow:0 25px 45px rgba(0,0,0,.12);

}

.news-card a{

    display:block;

    color:inherit;

    text-decoration:none;

}

.news-card-image{

    position:relative;

    overflow:hidden;

}

.news-card-image img{

    width:100%;

    height:250px;

    object-fit:cover;

    transition:.45s;

}

.news-card:hover .news-card-image img{

    transform:scale(1.05);

}

.news-card-tag{

    position:absolute;

    left:20px;

    bottom:20px;

    background:var(--primary);

    color:#FFF;

    border-radius:50px;

    padding:8px 18px;

    font-size:.72rem;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.news-card-body{

    padding:30px;

}

.news-date{

    color:#999;

    font-size:.85rem;

    margin-bottom:15px;

}

.news-card-body h2,

.news-card-body h3{

    font-size:1.45rem;

    line-height:1.35;

    margin-bottom:18px;

    transition:.3s;

}

.news-card:hover h2,

.news-card:hover h3{

    color:var(--primary);

}

.news-card-body p{

    color:#666;

    line-height:1.8;

    margin-bottom:22px;

}

.news-read{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:var(--primary);

    font-weight:600;

    transition:.3s;

}

.news-card:hover .news-read{

    gap:18px;

}


/*====================================================
SHOW
====================================================*/

.news-single{

    padding:90px 0;

    background:#FFF;

}

.news-info{

    display:flex;

    justify-content:center;

    gap:35px;

    margin-bottom:35px;

    color:#888;

    font-size:.95rem;

}

.news-info span{

    display:flex;

    align-items:center;

    gap:8px;

}

.news-image{

    margin-bottom:60px;

    overflow:hidden;

    border-radius:22px;

    box-shadow:0 20px 40px rgba(0,0,0,.10);

}

.news-image img{

    width:100%;

    display:block;

}

.news-body{

    font-size:1.08rem;

    line-height:2;

    color:#555;

}

.news-body h2{

    margin:50px 0 25px;

    font-size:2rem;

}

.news-body h3{

    margin:40px 0 20px;

    font-size:1.55rem;

}

.news-body p{

    margin-bottom:22px;

}

.news-body ul,

.news-body ol{

    margin:30px 0;

    padding-left:25px;

}

.news-body li{

    margin-bottom:10px;

}

.news-body img{

    max-width:100%;

    height:auto;

    border-radius:18px;

    display:block;

    margin:40px auto;

}

.news-body iframe{

    width:100%;

    min-height:500px;

    border:0;

    border-radius:18px;

}

.news-body table{

    width:100%;

    margin:30px 0;

}

.news-body blockquote{

    margin:40px 0;

    padding:30px;

    background:#f8f5ef;

    border-left:5px solid var(--primary);

    font-style:italic;

}

.news-latest{

    padding:90px 0;

    background:#f8f5ef;

}

.news-pagination{

    margin-top:70px;

    display:flex;

    justify-content:center;

}


/*====================================================
RESPONSIVO
====================================================*/

@media(max-width:991px){

    .news-info{

        flex-direction:column;

        gap:10px;

        align-items:center;

    }

    .news-body iframe{

        min-height:320px;

    }

}

@media(max-width:767px){

    .news-card-image img{

        height:220px;

    }

    .news-card-body{

        padding:22px;

    }

    .news-card-body h2,

    .news-card-body h3{

        font-size:1.25rem;

    }

    .news-body{

        font-size:1rem;

    }

    .news-body iframe{

        min-height:240px;

    }

}











/*==========================================================
    RESPONSIVO
==========================================================*/

@media (max-width:1199px){

    .product-show{

        padding:90px 0;

    }

    .product-show-info h1{

        font-size:50px;

    }

    .product-show-image img{

        max-width:420px;

    }

}

@media (max-width:991px){

    .products-header-top{

        flex-direction:column;

        align-items:flex-start;

        gap:25px;

    }

    .products-header-actions{

        flex-wrap:wrap;

    }

    .catalog-navigation{

        gap:10px;

    }

    .product-show{

        padding:70px 0;

    }

    .product-show-grid{

        text-align:center;

    }

    .product-show-gallery{

        min-height:auto;

        margin-bottom:50px;

    }

    .product-show-image img{

        max-width:340px;

    }

    .product-show-info{

        max-width:100%;

    }

    .product-show-summary{

        max-width:100%;

    }

    .package-options{

        justify-content:center;

    }

    .product-show-actions{

        justify-content:center;

    }

    .product-show-tabs{

        justify-content:center;

        flex-wrap:wrap;

    }

    .product-show-tab-content{

        padding:35px;

    }

}

@media (max-width:767px){

    .products-list{

        padding-bottom:70px;

    }

    .products-header-title h2{

        font-size:34px;

    }

    .catalog-navigation{

        gap:8px;

    }

    .catalog-navigation a{

        padding:9px 16px;

        font-size:13px;

    }

    .product-content{

        padding:20px;

    }

    .product-content h3{

        font-size:22px;

    }

    .product-thumb{

        min-height:220px;

    }

    .product-show{

        padding:60px 0;

    }

    .product-show-info h1{

        font-size:42px;

    }

    .product-show-info h2{

        font-size:20px;

    }

    .product-show-summary{

        font-size:16px;

    }

    .product-show-image img{

        max-width:260px;

    }

    .product-show-actions{

        flex-direction:column;

    }

    .product-show-actions a{

        width:100%;

    }

    .package-option{

        width:100%;

    }

    .download-item{

        padding:16px;

    }

    .product-show-tab-content{

        padding:25px;

    }

    .related-products{

        padding:80px 0;

    }

}

@media (max-width:576px){

    .breadcrumb{

        font-size:13px;

    }

    .products-header-title h2{

        font-size:30px;

    }

    .products-header-actions{

        width:100%;

        flex-direction:column;

        align-items:flex-start;

        gap:12px;

    }

    .catalog-navigation{

        flex-direction:column;

        align-items:stretch;

    }

    .catalog-navigation a{

        justify-content:center;

    }

    .product-thumb{

        min-height:200px;

        padding:30px 20px 10px;

    }

    .product-thumb img{

        width:75%;

    }

    .product-show{

        padding:50px 0;

    }

    .product-show-info h1{

        font-size:34px;

    }

    .product-show-tabs .nav-link{

        width:100%;

    }

    .product-show-tab-content{

        padding:22px;

    }

}