/*==========================================================
    NEW TINTAS
    site.css
==========================================================*/


/*==========================================================
    RESET
==========================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    background:#F7F2EA;
    color:#321B18;
    font-family:'Inter',sans-serif;
    font-size:16px;
    line-height:1.7;
    overflow-x:hidden;
}

img{
    display:block;
    max-width:100%;
}

a{
    text-decoration:none;
    transition:.30s;
}

ul{
    margin:0;
    padding:0;
    list-style:none;
}


/*==========================================================
    VARIABLES
==========================================================*/

:root{

    --wine:#4F0D0E;
    --wine-dark:#2F090A;

    --red:#8E2323;

    --gold:#C79C46;

    --cream:#F7F2EA;
    --beige:#F2E6D8;

    --text:#321B18;
    --gray:#767676;

    --white:#FFFFFF;

    --shadow:0 15px 35px rgba(0,0,0,.08);

    --radius:26px;

}


/*==========================================================
    TYPOGRAPHY
==========================================================*/

h1,
h2,
h3,
h4{
    font-family:'Playfair Display',serif;
    color:var(--text);
    font-weight:800;
    line-height:1.05;
}

h1{
    font-size:68px;
}

h2{
    font-size:52px;
}

h3{
    font-size:34px;
}

p{
    color:var(--gray);
}


/*==========================================================
    CONTAINER
==========================================================*/

.container{
    max-width:1320px;
}


/*==========================================================
    BUTTONS
==========================================================*/

.btn-primary-custom, .hero-content a{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:16px 34px;

    border-radius:50px;

    background:var(--red);

    color:#FFF;

    font-weight:600;

    transition:.35s;

}

.btn-primary-custom, .hero-content a:hover{

    background:var(--wine);
    color:#FFF;

    transform:translateY(-2px);

}

.btn-outline-custom{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:16px 34px;

    border-radius:50px;

    border:1px solid rgba(79,13,14,.15);

    background:#FFF;

    color:var(--wine);

    font-weight:600;

}

.btn-outline-custom:hover{

    background:var(--wine);

    color:#FFF;

}


/*==========================================================
    TOPBAR
==========================================================*/

.topbar{

    padding:8px 0;

    background:#FAF6F0;

    border-bottom:1px solid rgba(0,0,0,.06);

    font-size:13px;

    color:#7A6D65;

}

.topbar a{
    color:#7A6D65;
}

.topbar i{
    color:var(--red);
    margin-right:6px;
}


/*==========================================================
    HEADER
==========================================================*/

#site-header{

    position:sticky;

    top:0;

    z-index:999;

    background:rgba(247,242,234,.92);

    backdrop-filter:blur(14px);

    border-bottom:1px solid rgba(0,0,0,.04);

    transition:.35s;

}

.navbar{
    min-height:88px;
}

.navbar-brand img{
    height:52px;
}

.navbar-nav{
    gap:10px;
}

.nav-link{

    padding:12px 18px !important;

    border-radius:40px;

    color:#55423D;

    font-size:14px;
    font-weight:500;

}

.nav-link:hover{
    color:var(--red);
}

.nav-link.active{

    color:var(--red);

    font-weight:700;

}


.dropdown-submenu{
    position:relative;
}

.dropdown-submenu>.dropdown-menu{
    top:0;
    left:100%;
    margin-top:-1px;
    display:none;
}

.dropdown-submenu:hover>.dropdown-menu{
    display:block;
}


.btn-header{

    padding:14px 28px;

    border-radius:50px;

    background:var(--red);

    color:#FFF;

    font-size:14px;
    font-weight:600;

}

.btn-header:hover{

    background:var(--wine);

    color:#FFF;

}


/*==========================================================
    HERO
==========================================================*/

.hero{
    background:var(--cream);
}

.hero .row{
    min-height:760px;
}

.hero-content{

    max-width:520px;

    margin:auto;

}

.hero-subtitle{

    display:inline-block;

    margin-bottom:24px;

    color:var(--red);

    font-size:12px;

    font-weight:700;

    letter-spacing:4px;

}

.hero h1{
    margin-bottom:26px;
}

.hero h1 strong{
    color:var(--red);
}

.hero p{

    max-width:440px;

    margin-bottom:42px;

    font-size:18px;

}

.hero-image{

    height:760px;

    overflow:hidden;

}

.hero-image img{

    width:100%;
    height:100%;

    object-fit:cover;

}

/*==========================================================
HERO - SWIPER ARROWS
==========================================================*/

.hero-slider .swiper-button-prev,
.hero-slider .swiper-button-next{

    width: 56px;
    height: 56px;

    border-radius: 50%;

    background: rgba(255,255,255,.12);
    backdrop-filter: blur(12px);

    border: 1px solid rgba(255,255,255,.18);

    color: #FFF;

    transition: .35s;

}

.hero-slider .swiper-button-prev:hover,
.hero-slider .swiper-button-next:hover{

    background: var(--primary);

    border-color: var(--primary);

    transform: scale(1.08);

}

.hero-slider .swiper-button-prev::after,
.hero-slider .swiper-button-next::after{

    font-size:18px;
    font-weight:700;

}

.hero-slider .swiper-button-prev{

    left:40px;

}

.hero-slider .swiper-button-next{

    right:40px;

}

.hero-slider .swiper-button-disabled{

    opacity:.25;

}


/*==========================================================
    HERO COLORS
==========================================================*/

.hero-colors{

    display:flex;
    align-items:center;

    height:66px;

    background:#4B0606;

}

.hero-colors-content{

    display:flex;
    align-items:center;

    gap:28px;

}

.hero-label{

    color:#D6A340;

    font-size:11px;

    font-weight:700;

    letter-spacing:4px;

    white-space:nowrap;

}

.hero-divider{

    flex:1;

    height:1px;

    background:rgba(214,163,64,.45);

}

.hero-palette{

    display:flex;

    gap:10px;

}

.hero-palette span{

    width:28px;
    height:28px;

    border:2px solid rgba(255,255,255,.18);

    border-radius:50%;

    cursor:pointer;

    transition:.30s;

}

.hero-palette span:hover{

    transform:scale(1.18);

    border-color:#FFF;

}

.hero-total{

    color:#FFF;

    font-size:12px;

    font-weight:700;

    letter-spacing:4px;

    white-space:nowrap;

}


/*==========================================================
    UTILITIES
==========================================================*/

.section{
    padding:120px 0;
}

.bg-cream{
    background:var(--cream);
}

.bg-wine{
    background:var(--wine);
}

.text-gold{
    color:var(--gold);
}

.text-red{
    color:var(--red);
}


/*==========================================================
    ANIMATIONS
==========================================================*/

.fade-up{

    opacity:0;

    transform:translateY(40px);

    transition:.7s;

}

.fade-up.show{

    opacity:1;

    transform:none;

}
/*==========================================================
    MANIFESTO
==========================================================*/

.manifesto{

    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;

}

.manifesto::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;

}

.manifesto .container{

    position:relative;

    z-index:2;

}


/*==========================================================
    SECTION TITLE
==========================================================*/

.section-title{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:35px;

}

.section-title span{

    width:45px;
    height:2px;

    background:#992B28;

}

.section-title small{

    color:#992B28;

    font-size:11px;

    font-weight:700;

    letter-spacing:4px;

}


/*==========================================================
    CONTENT
==========================================================*/

.manifesto h2{

    margin-bottom:35px;

    font-size:58px;

    line-height:1.05;

}

.manifesto h2 em{

    color:#992B28;

    font-style:italic;

}

.manifesto-text{

    max-width:520px;

    margin-bottom:50px;

    font-size:18px;

    line-height:1.9;

}


/*==========================================================
    NUMBERS
==========================================================*/

.manifesto-numbers{

    display:flex;

    gap:35px;

}

.manifesto-numbers .item{

    padding-left:18px;

    border-left:3px solid #C79C46;

}

.manifesto-numbers strong{

    display:block;

    color:#321B18;

    font-family:'Playfair Display',serif;

    font-size:40px;

}

.manifesto-numbers span{

    display:block;

    margin-top:8px;

    color:#777;

    font-size:12px;

    letter-spacing:2px;

    text-transform:uppercase;

}


/*==========================================================
    VIDEO
==========================================================*/

.manifesto-video{

    display:block;

    position:relative;

    overflow:hidden;

    border-radius:36px;

    box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.manifesto-video img{

    width:100%;

    display:block;

    transition:1.2s;

}

.manifesto-video:hover img{

    transform:scale(1.08);

}


/*==========================================================
    VIDEO OVERLAY
==========================================================*/

.video-overlay{

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            to top,
            rgba(47,9,10,.92),
            rgba(47,9,10,.15),
            transparent
        );

}


/*==========================================================
    PLAY
==========================================================*/

.video-play{

    position:absolute;

    top:50%;
    left:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    width:90px;
    height:90px;

    border-radius:50%;

    background:rgba(255,255,255,.92);

    transform:translate(-50%,-50%);

    transition:.45s;

}

.video-play i{

    margin-left:6px;

    color:#992B28;

    font-size:42px;

}

.manifesto-video:hover .video-play{

    transform:translate(-50%,-50%) scale(1.15);

}


/*==========================================================
    VIDEO INFO
==========================================================*/

.video-info{

    position:absolute;

    left:35px;
    bottom:35px;

    color:#FFF;

}

.video-info span{

    display:inline-block;

    margin-bottom:18px;

    padding:8px 14px;

    border-radius:30px;

    background:rgba(199,156,70,.18);

    color:#D9B25E;

    font-size:11px;

    letter-spacing:2px;

}

.video-info h3{

    margin-bottom:12px;

    color:#FFF;

    font-size:34px;

}

.video-info p{

    max-width:330px;

    color:rgba(255,255,255,.80);

}


/*==========================================================
    VIDEO DECORATION
==========================================================*/

.manifesto-video::before{

    content:"";

    position:absolute;

    top:-25px;
    left:-25px;

    width:90px;
    height:90px;

    border:2px solid rgba(199,156,70,.45);

    border-radius:50%;

}

.manifesto-video::after{

    content:"";

    position:absolute;

    right:-35px;
    bottom:-35px;

    width:130px;
    height:130px;

    border:3px solid rgba(153,43,40,.15);

    border-radius:50%;

}
/*==========================================================
    VIDEO MODAL
==========================================================*/

.video-modal{

    position:fixed;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(0,0,0,.86);

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:99999;

}

.video-modal.active{

    opacity:1;

    visibility:visible;

}

.video-modal-content{

    position:relative;

    width:min(1100px,92vw);

}

.video-modal iframe{

    width:100%;

    aspect-ratio:16/9;

    border:0;

    border-radius:20px;

    background:#000;

}

.video-close{

    position:absolute;

    top:-18px;
    right:-18px;

    width:46px;
    height:46px;

    border:none;

    border-radius:50%;

    background:#992B28;

    color:#FFF;

    font-size:28px;

    cursor:pointer;

    z-index:5;

}

.video-close:hover{

    background:#4F0D0E;

}


/*==========================================================
    PORTFÓLIO
==========================================================*/

.portfolio{

    padding:130px 0 0;

    background:#F8F4EE;

}

/*====================================================
CORES DAS LINHAS
====================================================*/

.portfolio-card.linha-imobiliaria{
    --portfolio-color:#862C2A;
}

.portfolio-card.linha-metais-madeira{
    --portfolio-color:#464D52;
}

.portfolio-card.linha-industrial{
    --portfolio-color:#373435;
}

.portfolio-card.linha-construcao{
    --portfolio-color:#8C8B8D;
}

.portfolio-card.linha-diluentes{
    --portfolio-color:#C2422A;
}

.portfolio-card.super-kill{
    --portfolio-color:#36221D;
}

.portfolio-card.tinta-spray{
    --portfolio-color:#B8A267;
}

.portfolio-card.bhelza{
    --portfolio-color:#B72528;
}


/*==========================================================
    PORTFOLIO HEADER
==========================================================*/

.portfolio-header{

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

    margin-bottom:60px;

}

.portfolio-title h2{

    margin-top:25px;

    color:#2E1715;

    font-size:62px;

    line-height:1.05;

}

.portfolio-title h2 em{

    color:#992B28;

    font-style:italic;

}

.portfolio-title p{

    max-width:640px;

    margin-top:22px;

    color:#6A5953;

    font-size:17px;

    line-height:1.8;

}

.portfolio .btn-outline{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:15px 30px;

    border:1px solid #D7C8B6;

    border-radius:50px;

    color:#2E1715;

    font-weight:600;

    text-decoration:none;

    transition:.35s;

}

.portfolio .btn-outline:hover{

    background:#992B28;

    border-color:#992B28;

    color:#FFF;

}


/*==========================================================
    SLIDER
==========================================================*/

.portfolio-slider{

    position:relative;

    overflow:hidden;

}

.portfolio-track{

    display:flex;

    overflow-x:auto;

    overflow-y:hidden;

    padding-right:14%;

    scroll-behavior:smooth;

    scroll-snap-type:x mandatory;

    scrollbar-width:none;

    -ms-overflow-style:none;

    cursor:grab;

}

.portfolio-track::-webkit-scrollbar{

    display:none;

}

.portfolio-track.dragging{

    cursor:grabbing;

    user-select:none;

}

.portfolio-track.dragging .portfolio-card{

    pointer-events:none;

}


/*==========================================================
    ARROWS
==========================================================*/

.portfolio-arrow{

    position:absolute;

    top:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    width:60px;
    height:60px;

    border:none;

    border-radius:50%;

    background:#FFF;

    color:#992B28;

    box-shadow:0 10px 30px rgba(0,0,0,.18);

    cursor:pointer;

    transform:translateY(-50%);

    transition:.35s;

    z-index:30;

}

.portfolio-arrow:hover{

    background:#992B28;

    color:#FFF;

}

.portfolio-arrow.prev{

    left:20px;

}

.portfolio-arrow.next{

    right:20px;

}


/*==========================================================
    FADE
==========================================================*/

.portfolio-fade{

    position:absolute;

    top:0;
    right:0;

    width:180px;
    height:100%;

    background:

        linear-gradient(

            90deg,

            rgba(248,244,238,0),

            rgba(248,244,238,.96)

        );

    pointer-events:none;

    z-index:10;

}


/*==========================================================
    CARD
==========================================================*/

.portfolio-card{

    position:relative;

    overflow:hidden;

    display:flex;

    flex-direction:column;

    justify-content:space-between;

    flex:0 0 33.333%;

    min-height:550px;

    padding:28px;

    background:var(--portfolio-color);

    color:#FFF;

    text-decoration:none;

    scroll-snap-align:start;

}

.decorativa,
.bhelza{

    background:#9C1F1F;

}

.industrial{

    background:#232F46;

}

.solventes{

    background:#0D5E93;

}

.anniill{

    background:#E7B238;

    color:#2B1A18;

}

.anniill p,
.anniill span,
.anniill small,
.anniill li{

    color:#2B1A18;

}

.decorativa .portfolio-content p,
.solventes .portfolio-content p,
.industrial .portfolio-content p,
.bhelza .portfolio-content p{

    color:#E7B238;

}
/*==========================================================
    PORTFOLIO TOP
==========================================================*/

.portfolio-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.portfolio-top span{

    font-size:12px;

    font-weight:700;

    letter-spacing:3px;

}

.portfolio-top small{

    font-size:11px;

    letter-spacing:4px;

}


/*==========================================================
    PORTFOLIO IMAGE
==========================================================*/

.portfolio-image{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:center;

    height:300px;

    flex:0 0 300px;

    overflow:visible;

    padding:20px;

}

.portfolio-image img{

    max-width:100%;

    max-height:260px;

    width:auto;

    height:auto;

    object-fit:contain;

    filter:drop-shadow(0 18px 25px rgba(0,0,0,.25));

    transition:all .7s cubic-bezier(.2,.8,.2,1);

}

.portfolio-image::before{

    content:"";

    position:absolute;

    width:220px;
    height:220px;

    border-radius:50%;

    background:rgba(255,255,255,.06);

    filter:blur(35px);

    opacity:0;

    transition:.6s;

}


/*==========================================================
    PORTFOLIO CONTENT
==========================================================*/

.portfolio-content{

    text-align:left;

    transition:.45s;

}

.portfolio-content h3{

    margin-bottom:10px;

    color:inherit;

    font-size:38px;

    line-height:1;

}

.portfolio-content p{

    margin-bottom:24px;

    font-size:15px;

    letter-spacing:1px;

    text-transform:none;

    opacity:.9;

}


/*==========================================================
    PORTFOLIO LIST
==========================================================*/

.portfolio-list{

    margin:0;

    padding:0;

    list-style:none;

    display:flex;

    flex-wrap:wrap;

    gap:8px;

    max-height:0;

    overflow:hidden;

    opacity:0;

    transition:.45s;

}

.portfolio-list li{

    padding:6px 12px;

    border:1px solid rgba(255,255,255,.15);

    border-radius:30px;

    font-size:13px;

    line-height:1;

    white-space:nowrap;

    background:rgba(255,255,255,.06);

}

.anniill .portfolio-list li{

    border-color:rgba(0,0,0,.12);

    background:rgba(0,0,0,.05);

}


/*==========================================================
    PORTFOLIO LINK
==========================================================*/

.portfolio-link{

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:22px;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

}


/*==========================================================
    PORTFOLIO HOVER
==========================================================*/

.portfolio-card:hover{

    z-index:5;

}

.portfolio-card:hover .portfolio-image img{

    transform:
        translateY(-12px)
        scale(1.05);

    filter:drop-shadow(0 30px 40px rgba(0,0,0,.35));

}

.portfolio-card:hover .portfolio-image::before{

    opacity:1;

}

.portfolio-card:hover .portfolio-content{

    transform:translateY(-8px);

}

.portfolio-card:hover .portfolio-list{

    max-height:260px;

    opacity:1;

}


/*==========================================================
    REFLECTION
==========================================================*/

.portfolio-card::after{

    content:"";

    position:absolute;

    top:-40%;

    left:-70%;

    width:50%;

    height:180%;

    background:

        linear-gradient(

            90deg,

            transparent,

            rgba(255,255,255,.10),

            transparent

        );

    transform:rotate(25deg);

    transition:.8s;

}

.portfolio-card:hover::after{

    left:140%;

}
/*==========================================================
    PALETA
==========================================================*/

.palette{

    padding:110px 0;

    background:#F8F4EE;

}

.palette .row{

    --bs-gutter-x:5rem;

}


/*==========================================================
    PHOTO
==========================================================*/

.palette-photo{

    position:relative;

    overflow:hidden;

    width:94%;

    border-radius:30px;

    box-shadow:0 22px 45px rgba(0,0,0,.10);

}

.palette-photo img{

    display:block;

    width:100%;

    transition:1s ease;

}

.palette-photo:hover img{

    transform:scale(1.04);

}


/*==========================================================
    TAG
==========================================================*/

.palette-tag{

    position:absolute;

    left:28px;
    bottom:28px;

    padding:15px 22px;

    border-radius:18px;

    background:#4B0E10;

    color:#FFF;

    box-shadow:0 15px 30px rgba(0,0,0,.15);

}

.palette-tag small{

    display:block;

    margin-bottom:6px;

    color:#D7B15E;

    font-size:10px;

    letter-spacing:3px;

    text-transform:uppercase;

}

.palette-tag strong{

    font-family:'Playfair Display',serif;

    font-size:22px;

    font-weight:700;

    line-height:1.2;

}


/*==========================================================
    CONTENT
==========================================================*/

.palette h2{

    margin:22px 0 28px;

    color:#2D1715;

    font-size:54px;

    line-height:1.05;

}

.palette h2 em{

    color:#992B28;

    font-style:italic;

}

.palette p{

    margin-bottom:35px;

    color:#6B615D;

    font-size:18px;

    line-height:1.8;

}


/*==========================================================
    GRID
==========================================================*/

.palette-grid{

    display:grid;

    grid-template-columns:repeat(8,1fr);

    gap:14px;

}


/*==========================================================
    COLOR CARD
==========================================================*/

.palette-grid .color{

    cursor:pointer;

    transition:.35s;

}

.palette-grid .swatch{

    width:100%;

    aspect-ratio:1;

    margin-bottom:10px;

    border-radius:16px;

    box-shadow:0 8px 18px rgba(0,0,0,.06);

    transition:.35s;

    border: 1px solid #e0e0e0;

}

.palette-grid small{

    display:none;

    margin-bottom:3px;

    color:#9A938B;

    font-size:11px;

    letter-spacing:1.5px;

}

.palette-grid strong{

    display:none;

    color:#2D1715;

    font-size:11px;

    font-weight:700;

    line-height:1.25;

}


/*==========================================================
    HOVER
==========================================================*/

.palette-grid .color:hover{

    transform:translateY(-6px);

}

.palette-grid .color:hover .swatch{

    transform:scale(1.04);

    box-shadow:0 18px 30px rgba(0,0,0,.14);

}

.palette-grid .color:hover strong{

    color:#992B28;

}
/*==========================================================
    INSTITUCIONAL
==========================================================*/

.institutional{

    position:relative;

    overflow:hidden;

    display:flex;

    align-items:center;

    min-height:760px;

    color:#FFF;

}


/*==========================================================
    BACKGROUND
==========================================================*/

.institutional-bg{

    position:absolute;

    inset:0;

    z-index:1;

}

.institutional-bg img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:8s ease;

}

.institutional:hover .institutional-bg img{

    transform:scale(1.05);

}


/*==========================================================
    OVERLAY
==========================================================*/

.institutional-overlay{

    position:absolute;

    inset:0;

    z-index:2;

    background:

        linear-gradient(

            90deg,

            rgba(58,8,10,.88) 0%,

            rgba(58,8,10,.70) 32%,

            rgba(58,8,10,.20) 65%,

            rgba(58,8,10,.05) 100%

        );

}


/*==========================================================
    CONTAINER
==========================================================*/

.institutional .container{

    position:relative;

    z-index:3;

}


/*==========================================================
    CONTENT
==========================================================*/

.institutional-content{

    max-width:470px;

}

.institutional-content .section-title{

    margin-bottom:28px;

}

.institutional-content .section-title span{

    background:#D7B15E;

}

.institutional-content .section-title small{

    color:#D7B15E;

}


/*==========================================================
    TITLES
==========================================================*/

.institutional h2{

    margin-bottom:35px;

    color:#FFF;

    font-size:74px;

    line-height:.95;

}

.institutional h2 em{

    color:#E0B249;

    font-style:italic;

}

.institutional p{

    margin-bottom:40px;

    color:rgba(255,255,255,.88);

    font-size:20px;

    line-height:1.8;

}


/*==========================================================
    LINK
==========================================================*/

.institutional-link{

    display:inline-flex;

    align-items:center;

    gap:12px;

    color:#D7B15E;

    font-weight:700;

    text-decoration:none;

    transition:.35s;

}

.institutional-link i{

    transition:.35s;

}

.institutional-link:hover{

    color:#FFF;

}

.institutional-link:hover i{

    transform:translateX(6px);

}



/*==========================================================
    DIFERENCIAIS
==========================================================*/

.differentials{

    position:relative;

    overflow:hidden;

    padding:120px 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;

}

.differentials .row{

    --bs-gutter-x:5rem;

}


/*==========================================================
    TITLES
==========================================================*/

.differentials h2{

    margin:22px 0 45px;

    color:#2D1715;

    font-size:58px;

    line-height:1.08;

}

.differentials h2 em{

    color:#992B28;

    font-style:italic;

}


/*==========================================================
    GALLERY
==========================================================*/

.differentials-gallery{

    display:flex;

    gap:18px;

}

.gallery-item{

    position:relative;

    overflow:hidden;

    flex:1;

    border-radius:22px;

    box-shadow:0 18px 40px rgba(0,0,0,.10);

}

.gallery-item img{

    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:1s ease;

}

.gallery-item:hover img{

    transform:scale(1.05);

}

.gallery-item span{

    position:absolute;

    left:18px;
    bottom:18px;

    padding:8px 14px;

    border-radius:8px;

    background:rgba(65,16,16,.92);

    color:#FFF;

    font-size:10px;

    font-weight:700;

    letter-spacing:2px;

}


/*==========================================================
    GRID
==========================================================*/

.differentials-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

}


/*==========================================================
    CARD
==========================================================*/

.differential-card{

    padding:28px;

    border:1px solid #E6DED3;

    border-radius:22px;

    background:#FFF;

    box-shadow:0 8px 25px rgba(0,0,0,.03);

    transition:.35s;

}

.card-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:28px;

}

.card-top .icon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:48px;
    height:48px;

    border-radius:50%;

    background:#A52222;

    color:#FFF;

    font-size:18px;

}

.card-top span{

    color:#D2B36C;

    font-size:12px;

    font-weight:700;

    letter-spacing:2px;

}

.differential-card h3{

    margin-bottom:16px;

    color:#2D1715;

    font-size:34px;

}

.differential-card p{

    margin:0;

    color:#6D6560;

    line-height:1.8;

}


/*==========================================================
    HOVER
==========================================================*/

.differential-card:hover{

    transform:translateY(-6px);

    border-color:#D8C29B;

    box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.differential-card:hover .icon{

    background:#7F1818;

}
/*==========================================================
    FAVORITOS
==========================================================*/

.favorites{

    padding:120px 0;

    background:#F8F4EE;

}


/*==========================================================
    HEADER
==========================================================*/

.favorites-header{

    margin-bottom:70px;

    text-align:center;

}

.favorites-header .section-title{

    justify-content:center;

    margin-bottom:20px;

}

.favorites h2{

    margin:0;

    color:#2D1715;

    font-size:62px;

    line-height:1.05;

}

.favorites h2 em{

    color:#992B28;

    font-style:italic;

}


/*==========================================================
    LIST
==========================================================*/

.favorites-list{

    max-width:760px;

    margin:0 auto;

}


/*==========================================================
    ITEM
==========================================================*/

.favorite-item{

    display:flex;

    align-items:center;

    gap:35px;

    padding:24px 0;

    border-bottom:1px solid #E7DDD0;

    color:#2D1715;

    text-decoration:none;

    transition:.35s;

}

.favorite-item:first-child{

    border-top:1px solid #E7DDD0;

}

.favorite-number{

    width:35px;

    color:#CFA954;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

}

.favorite-title{

    flex:1;

    font-family:'Playfair Display',serif;

    font-size:30px;

    font-weight:700;

    transition:.35s;

}

.favorite-arrow{

    display:flex;

    align-items:center;

    justify-content:center;

    width:46px;
    height:46px;

    border-radius:50%;

    color:#992B28;

    opacity:0;

    transform:translateX(-10px);

    transition:.35s;

}


/*==========================================================
    HOVER
==========================================================*/

.favorite-item:hover{

    padding-left:18px;

}

.favorite-item:hover .favorite-title{

    color:#992B28;

}

.favorite-item:hover .favorite-arrow{

    opacity:1;

    transform:translateX(0);

}


/*==========================================================
    BUTTON
==========================================================*/

.favorites-footer{

    margin-top:60px;

    text-align:center;

}

.favorites-footer .btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:18px 34px;

    border:none;

    border-radius:50px;

    background:#D8A93C;

    color:#2D1715;

    font-size:16px;

    font-weight:700;

    text-decoration:none;

    box-shadow:0 12px 28px rgba(216,169,60,.18);

    transition:.35s;

}

.favorites-footer .btn i{

    transition:.35s;

}

.favorites-footer .btn:hover{

    background:#C99728;

    color:#2D1715;

    transform:translateY(-3px);

    box-shadow:0 18px 36px rgba(216,169,60,.28);

}

.favorites-footer .btn:hover i{

    transform:translateX(5px);

}



/*==========================================================
    MARQUEE
==========================================================*/

.home-marquee{

    position:relative;

    overflow:hidden;

    padding:130px 0;

    background:url("../img/bg.jpg") center center;

    background-size:cover;

}


/*==========================================================
    OVERLAY
==========================================================*/

.marquee-overlay{

    position:absolute;

    inset:0;

    background:rgba(55,8,8,.48);

}


/*==========================================================
    TRACK
==========================================================*/

.marquee-track{

    position:relative;

    z-index:2;

    white-space:nowrap;

    animation:marquee 40s linear infinite;

}

.marquee-track span{

    display:inline-block;

    color:rgba(255,248,239,.95);

    font-family:'Playfair Display',serif;

    font-size:118px;

    font-style:italic;

    font-weight:900;

    letter-spacing:-2px;

}


/*==========================================================
    SIDE FADE
==========================================================*/

.home-marquee::before,
.home-marquee::after{

    content:"";

    position:absolute;

    top:0;
    bottom:0;

    width:160px;

    pointer-events:none;

    z-index:3;

}

.home-marquee::before{

    left:0;

    background:

        linear-gradient(

            90deg,

            rgba(55,8,8,.82),

            transparent

        );

}

.home-marquee::after{

    right:0;

    background:

        linear-gradient(

            270deg,

            rgba(55,8,8,.82),

            transparent

        );

}


/*==========================================================
    ANIMATION
==========================================================*/

@keyframes marquee{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}
/*==========================================================
    BLOG
==========================================================*/

/*==========================================================
    BLOG
==========================================================*/

.blog{

    position:relative;

    overflow:hidden;

    padding:120px 0;

    background-color:#5A0909;

    background-image:
        radial-gradient(
            rgba(255,255,255,.045) 1px,
            transparent 1px
        ),
        radial-gradient(
            rgba(255,255,255,.025) 1px,
            transparent 1px
        );

    background-size:
        6px 6px,
        13px 13px;

    background-position:
        0 0,
        3px 3px;

}

.blog::before{

    content:"";

    position:absolute;

    top:-80px;
    right:-120px;

    width:320px;
    height:320px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(215,177,94,.18),
            transparent 70%
        );

    pointer-events:none;

}

.blog .container{

    position:relative;

    z-index:2;

}


/*==========================================================
    HEADER
==========================================================*/

.blog-header{

    margin-bottom:70px;

    text-align:center;

}

.blog-header .section-title{

    justify-content:center;

    margin-bottom:22px;

}

.blog-header .section-title span{

    background:#D7B15E;

}

.blog-header .section-title small{

    color:#D7B15E;

}

.blog h2{

    margin:0;

    color:#FFF7F0;

    font-size:60px;

}

.blog h2 em{

    color:#E2B142;

    font-style:italic;

}


/*==========================================================
    CARD
==========================================================*/

.blog-card{

    height:100%;

    overflow:hidden;

    border:1px solid rgba(214,178,88,.35);

    border-radius:24px;

    background:rgba(72,6,6,.55);

    transition:.35s;

}


/*==========================================================
    IMAGE
==========================================================*/

.blog-image{

    position:relative;

    overflow:hidden;

}

.blog-image img{

    display:block;

    width:100%;

    height:240px;

    object-fit:cover;

    transition:1s;

}

.blog-card:hover .blog-image img{

    transform:scale(1.06);

}

.blog-category{

    position:absolute;

    top:16px;
    left:16px;

    padding:7px 14px;

    border-radius:20px;

    background:#E0B249;

    color:#2D1715;

    font-size:10px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

}


/*==========================================================
    CONTENT
==========================================================*/

.blog-content{

    padding:22px;

}

.blog-content small{

    display:block;

    margin-bottom:14px;

    color:#D9B35D;

    font-size:11px;

    letter-spacing:2px;

}

.blog-content h3{

    margin-bottom:16px;

    color:#FFF8F2;

    font-size:34px;

    line-height:1.15;

}

.blog-content p{

    margin:0;

    color:rgba(255,255,255,.80);

    line-height:1.7;

}


/*==========================================================
    HOVER
==========================================================*/

.blog-card:hover{

    transform:translateY(-8px);

    border-color:#D8B04A;

    box-shadow:0 20px 40px rgba(0,0,0,.22);

}

.blog-card:hover h3{

    color:#E0B249;

}


/*==========================================================
    BUTTON
==========================================================*/

.blog-footer{

    margin-top:55px;

    text-align:center;

}

.blog-footer .btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:17px 34px;

    border:none;

    border-radius:50px;

    background:#D8A93C;

    color:#2D1715;

    font-weight:700;

    transition:.35s;

}

.blog-footer .btn i{

    transition:.35s;

}

.blog-footer .btn:hover{

    background:#C99728;

    color:#2D1715;

    transform:translateY(-3px);

}

.blog-footer .btn:hover i{

    transform:translateX(5px);

}



/*==========================================================
    COMUNIDADE
==========================================================*/

.community{

    position:relative;

    overflow:hidden;

    padding:120px 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;

}

.community-box{

    padding:60px 70px;

    border:1px solid #E9D7B8;

    border-radius:34px;

    background:#F6EEDF;

    box-shadow:0 18px 45px rgba(0,0,0,.08);

}

.community h2{

    margin:20px 0 0;

    color:#2D1715;

    font-size:60px;

    line-height:1.05;

}

.community h2 em{

    color:#992B28;

    font-style:italic;

}

.community-social{

    display:flex;

    justify-content:flex-end;

    gap:16px;

    margin-bottom:18px;

}

.community-social a{

    display:flex;

    align-items:center;

    justify-content:center;

    width:58px;
    height:58px;

    border-radius:50%;

    background:#A52222;

    color:#FFF;

    font-size:22px;

    transition:.35s;

}

.community-social a:hover{

    background:#7E1717;

    transform:translateY(-4px);

}

.community-user{

    color:#8E7F74;

    font-size:14px;

    font-weight:600;

    letter-spacing:4px;

    text-align:right;

}



/*==========================================================
    FOOTER
==========================================================*/

.footer{

    padding:90px 0 35px;

    background:#4F0D0E;

    color:#FFF;

}

.footer-logo{

    height:52px;

    margin-bottom:30px;

}

.footer-text{

    max-width:320px;

    margin-bottom:35px;

    color:rgba(255,255,255,.72);

    line-height:1.8;

}

.footer h5{

    margin-bottom:25px;

    color:#FFF;

    font-family:'Playfair Display',serif;

    font-size:18px;

}

.footer ul{

    margin:0;

    padding:0;

    list-style:none;

}

.footer li{

    margin-bottom:14px;

}

.footer a{

    color:rgba(255,255,255,.70);

}

.footer a:hover{

    color:#C79C46;

}

.footer-contact li{

    display:flex;

    align-items:flex-start;

    gap:14px;

}

.footer-contact i{

    min-width:18px;

    margin-top:2px;

    color:#C79C46;

    font-size:18px;

}

.footer-social{

    display:flex;

    gap:12px;

}

.footer-social a{

    display:flex;

    align-items:center;

    justify-content:center;

    width:42px;
    height:42px;

    border-radius:50%;

    background:rgba(255,255,255,.06);

    color:#FFF;

    transition:.30s;

}

.footer-social a:hover{

    background:#C79C46;

    color:#4F0D0E;

    transform:translateY(-4px);

}

.footer-bottom{

    margin-top:70px;

    padding-top:30px;

    border-top:1px solid rgba(255,255,255,.08);

    color:rgba(255,255,255,.45);

    font-size:14px;

}


/*==========================================================
    RESPONSIVO
==========================================================*/

/*==========================================================
    DESKTOP
==========================================================*/

@media (max-width:1400px){

    .portfolio-card{

        flex:0 0 33.333%;

    }

}

@media (max-width:1200px){

    h1{

        font-size:56px;

    }

    h2{

        font-size:46px;

    }

    .container{

        max-width:1140px;

    }

    .hero .row{

        min-height:680px;

    }

    .hero-image{

        height:680px;

    }

    .portfolio-card{

        flex:0 0 40%;

    }

    .portfolio-title h2{

        font-size:54px;

    }

    .palette h2{

        font-size:48px;

    }

    .institutional h2{

        font-size:60px;

    }

    .differentials h2{

        font-size:48px;

    }

    .favorites h2{

        font-size:52px;

    }

    .blog h2{

        font-size:52px;

    }

    .community h2{

        font-size:52px;

    }

}


/*==========================================================
    TABLET
==========================================================*/

@media (max-width:991px){

    /* HEADER */

    .topbar{

        display:none;

    }

    .navbar{

        min-height:76px;

    }

    .navbar-brand img{

        height:42px;

    }

    .btn-header{

        display:none;

    }

    .navbar-collapse{

        margin-top:20px;

        padding:25px;

        background:#FFF;

        border-radius:18px;

        box-shadow:0 20px 45px rgba(0,0,0,.08);

    }

    .navbar-nav{

        gap:0;

    }

    .nav-link{

        padding:14px 0 !important;

    }

    /* HERO */

    .hero .row{

        min-height:auto;

    }

    .hero-content{

        max-width:100%;

        padding:80px 0 50px;

        text-align:center;

    }

    .hero p{

        margin:0 auto 35px;

    }

    .hero-image{

        height:500px;

    }

    .hero-colors{

        display:none;

    }

    /* MANIFESTO */

    .manifesto{

        padding:90px 0;

    }

    .manifesto h2{

        font-size:46px;

    }

    .manifesto-text{

        max-width:100%;

    }

    .manifesto-video{

        margin-top:50px;

    }

    /* PORTFÓLIO */

    .portfolio-header{

        flex-direction:column;

        align-items:flex-start;

        gap:30px;

    }

    .portfolio-title h2{

        font-size:46px;

    }

    .portfolio-card{

        flex:0 0 70%;

    }

    .portfolio-arrow{

        display:none;

    }

    .portfolio-fade{

        display:none;

    }

    /* PALETA */

    .palette{

        padding:80px 0;

    }

    .palette .row{

        --bs-gutter-x:2rem;

    }

    .palette-photo{

        width:100%;

        margin-bottom:40px;

    }

    .palette-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .palette h2{

        font-size:44px;

    }

    /* INSTITUCIONAL */

    .institutional{

        min-height:620px;

    }

    .institutional-content{

        max-width:100%;

    }

    .institutional h2{

        font-size:54px;

    }

    /* DIFERENCIAIS */

    .differentials{

        padding:90px 0;

    }

    .differentials .row{

        --bs-gutter-x:2rem;

    }

    .differentials-gallery{

        margin-bottom:40px;

    }

    .differentials h2{

        font-size:44px;

    }

    /* FAVORITOS */

    .favorites{

        padding:90px 0;

    }

    .favorites h2{

        font-size:48px;

    }

    .favorite-title{

        font-size:24px;

    }

    /* MARQUEE */

    .home-marquee{

        padding:90px 0;

    }

    .marquee-track span{

        font-size:74px;

    }

    /* BLOG */

    .blog{

        padding:90px 0;

    }

    .blog h2{

        font-size:46px;

    }

    /* COMUNIDADE */

    .community{

        padding:90px 0;

    }

    .community-box{

        padding:45px;

        text-align:center;

    }

    .community-social{

        justify-content:center;

    }

    .community-user{

        text-align:center;

    }

    .community h2{

        font-size:44px;

    }

}
/*==========================================================
    MOBILE
==========================================================*/

@media (max-width:767px){

    /* HERO */

    h1{

        font-size:42px;

        line-height:1.05;

    }

    h2{

        font-size:38px;

    }

    .hero-content{

        padding:60px 0 40px;

    }

    .hero-subtitle{

        letter-spacing:3px;

    }

    .hero p{

        font-size:17px;

    }

    .hero-image{

        height:420px;

    }

    /* MANIFESTO */

    .manifesto{

        padding:80px 0;

    }

    .manifesto h2{

        font-size:38px;

    }

    .manifesto-text{

        font-size:17px;

    }

    .manifesto-numbers{

        flex-direction:column;

        gap:20px;

    }

    .video-info{

        left:20px;

        bottom:20px;

    }

    .video-info h3{

        font-size:26px;

    }

    /* PORTFÓLIO */

    .portfolio{

        padding:90px 0 0;

    }

    .portfolio-title h2{

        font-size:36px;

    }

    .portfolio-title p{

        font-size:16px;

    }

    .portfolio-card{

        flex:0 0 88%;

        min-height:620px;

    }

    .portfolio-content h3{

        font-size:30px;

    }

    /* PALETA */

    .palette h2{

        font-size:38px;

    }

    .palette-grid{

        gap:18px;

    }

    /* INSTITUCIONAL */

    .institutional{

        min-height:560px;

    }

    .institutional h2{

        font-size:42px;

    }

    .institutional p{

        font-size:17px;

    }

    /* DIFERENCIAIS */

    .differentials-gallery{

        flex-direction:column;

    }

    .differentials-grid{

        grid-template-columns:1fr;

    }

    .differentials h2{

        font-size:38px;

    }

    /* FAVORITOS */

    .favorites h2{

        font-size:40px;

    }

    .favorite-title{

        font-size:22px;

    }

    /* MARQUEE */

    .marquee-track span{

        font-size:58px;

    }

    /* BLOG */

    .blog h2{

        font-size:38px;

    }

    .blog-content h3{

        font-size:28px;

    }

    /* COMUNIDADE */

    .community h2{

        font-size:38px;

    }

    .community-box{

        padding:40px 30px;

    }

}


/*==========================================================
    SMALL MOBILE
==========================================================*/

@media (max-width:576px){

    .container{

        padding-left:20px;

        padding-right:20px;

    }

    h1{

        font-size:34px;

    }

    h2{

        font-size:32px;

    }

    /* HERO */

    .hero-content{

        padding:40px 0 30px;

    }

    .hero p{

        font-size:16px;

    }

    .hero-image{

        height:320px;

    }

    /* MANIFESTO */

    .manifesto{

        padding:70px 0;

    }

    .manifesto h2{

        font-size:32px;

    }

    .video-play{

        width:70px;

        height:70px;

    }

    .video-play i{

        font-size:30px;

    }

    .video-info{

        left:15px;

        bottom:15px;

    }

    .video-info h3{

        font-size:22px;

    }

    /* PORTFÓLIO */

    .portfolio-card{

        flex:0 0 calc(100% - 20px);

        min-height:auto;

        padding:22px;

    }

    .portfolio-image img{

        width:75%;

    }

    .portfolio-content h3{

        font-size:24px;

    }

    .portfolio-list{

        max-height:none;

        opacity:1;

    }

    /* PALETA */

    .palette-grid{

        grid-template-columns:1fr;

        gap:12px;

    }

    .palette-tag{

        left:18px;

        right:18px;

        bottom:18px;

        padding:14px 16px;

    }

    .palette-tag strong{

        font-size:20px;

    }

    /* INSTITUCIONAL */

    .institutional{

        min-height:500px;

    }

    .institutional h2{

        font-size:34px;

    }

    /* FAVORITOS */

    .favorites{

        padding:70px 0;

    }

    .favorite-item{

        gap:18px;

        padding:18px 0;

    }

    .favorite-number{

        width:26px;

        font-size:11px;

    }

    .favorite-title{

        font-size:20px;

        line-height:1.3;

    }

    .favorite-arrow{

        opacity:1;

        transform:none;

    }

    /* MARQUEE */

    .marquee-track span{

        font-size:46px;

    }

    /* BLOG */

    .blog{

        padding:70px 0;

    }

    .blog-content h3{

        font-size:24px;

    }

    .blog-image img{

        height:210px;

    }

    /* COMUNIDADE */

    .community-box{

        padding:35px 25px;

        border-radius:24px;

    }

    .community h2{

        font-size:32px;

    }

    /* FOOTER */

    .footer{

        padding:70px 0 30px;

        text-align:center;

    }

    .footer-social{

        justify-content:center;

    }

}


/*==========================================================
    DROPDOWN MULTINÍVEL
==========================================================*/

.dropdown-submenu{
    position:relative;
    min-width:240px;
}

.dropdown-submenu>.dropdown-menu{
    top:0;
    left:100%;
    margin-top:-1px;
    display:none;
}

.dropdown-submenu:hover>.dropdown-menu{
    display:block;
}

.dropdown-submenu>.dropdown-item.dropdown-toggle::after{
    float:right;
    margin-top:.45rem;
}