*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Manrope',sans-serif;
}

body{
    background:#f4f0e8;
    color:#141414;
    overflow-x:hidden;
}

a{
    text-decoration:none;
    color:inherit;
}

img{
    max-width:100%;
    display:block;
}

.home{
    width:100%;
    background:#f4f0e8;
}

.home-container{
    width:100%;
    max-width:1280px;
    margin:auto;
    padding:0 24px;
}

/* HERO */

.home-hero{
    position:relative;
    min-height:100vh;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 20%, rgba(49,210,111,.16), transparent 30%),
        linear-gradient(135deg,#f7f1e6,#e9dfcf);
}

.home-hero::before{
    content:'';
    position:absolute;
    width:720px;
    height:720px;
    right:-260px;
    top:-210px;
    border-radius:50%;
    background:linear-gradient(135deg,#063b20,#0f7d3a);
    opacity:.96;
    z-index:1;
    pointer-events:none;
}

.home-hero::after{
    content:'';
    position:absolute;
    width:340px;
    height:340px;
    left:-100px;
    bottom:-100px;
    border-radius:50%;
    background:#31d26f;
    opacity:.12;
    filter:blur(8px);
    z-index:1;
}

.home-topo{
    position:relative;
    z-index:50;
    padding:26px 0;
    display:grid;
    grid-template-columns:180px 1fr 180px;
    align-items:center;
    gap:20px;
}

.home-topo img{
    width:120px;
    display:block;
}

.home-menu{
    display:flex;
    align-items:center;
    gap:42px;
    font-size:15px;
    font-weight:900;
    color:#151515;

    margin-left:auto;
    margin-right:100px;
}

.home-menu a{
    color:#151515;
    opacity:1;
    transition:.2s;
}

.home-menu a:hover{
    color:#178f45;
}

.home-whatsapp{
    height:52px;
    padding:0 24px;
    border-radius:999px;
    background:#119947;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    font-size:15px;
    font-weight:900;
    box-shadow:0 14px 32px rgba(17,153,71,.24);
    transition:.25s;
}

.home-whatsapp:hover{
    transform:translateY(-2px);
    background:#0f873f;
}

.home-menu-mobile-btn{
    display:none;
    width:auto;
    height:auto;
    border:0;
    background:transparent;
    color:#111;
    font-size:30px;
    align-items:center;
    justify-content:center;
    padding:0;
    cursor:pointer;
}

.home-menu-mobile{
    display:none;
}

.home-hero-area{
    position:relative;
    z-index:10;
    display:grid;
    grid-template-columns:1.02fr .98fr;
    gap:48px;
    align-items:center;
    padding:36px 0 80px;
}

.home-tag{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 18px;
    border-radius:999px;
    background:#fff;
    color:#178f45;
    font-size:13px;
    font-weight:900;
    box-shadow:0 14px 40px rgba(0,0,0,.08);
    margin-bottom:24px;
}

.home-titulo{
    max-width:680px;
    font-size:72px;
    line-height:.98;
    letter-spacing:-3px;
    font-weight:900;
    color:#111;
}

.home-titulo span{
    display:block;
    color:#178f45;
}

.home-texto{
    max-width:620px;
    margin-top:28px;
    font-size:19px;
    line-height:1.75;
    color:#4b4b4b;
    font-weight:600;
}

.home-botoes{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:36px;
}

.home-btn{
    min-height:56px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:0 24px;
    border-radius:999px;
    font-size:15px;
    font-weight:900;
    transition:.25s;
}

.home-btn-verde{
    background:#178f45;
    color:#fff;
    box-shadow:0 18px 42px rgba(23,143,69,.28);
}

.home-btn-claro{
    background:#fff;
    color:#111;
    box-shadow:0 16px 35px rgba(0,0,0,.08);
}

.home-btn:hover{
    transform:translateY(-3px);
}

/* HERO IMAGENS */

.home-hero-visual{
    position:relative;
    min-height:560px;
}

.home-hero-card{
    position:absolute;
    overflow:hidden;
    border-radius:34px;
    box-shadow:0 28px 80px rgba(0,0,0,.24);
    background:#fff;
}

.home-hero-card img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.home-hero-card-principal{
    width:78%;
    height:420px;
    right:0;
    top:20px;
}

.home-hero-card-secundario{
    width:48%;
    height:260px;
    left:0;
    bottom:20px;
    border:10px solid #f4f0e8;
}

.home-hero-selo{
    position:absolute;
    right:8px;
    bottom:36px;
    width:250px;
    min-height:210px;
    border-radius:30px;
    background:linear-gradient(145deg,#0f3b25,#10301f);
    color:#fff;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    padding:30px;
    font-size:18px;
    line-height:1.25;
    font-weight:900;
    box-shadow:0 25px 65px rgba(0,0,0,.25);
    border:1px solid rgba(255,255,255,.18);
    z-index:6;
}

.home-hero-selo::before{
    content:'';
    position:absolute;
    inset:0;
    border-radius:30px;
    border:2px solid rgba(255,255,255,.10);
    pointer-events:none;
}

.home-hero-selo-icone{
    width:56px;
    height:56px;
    border-radius:50%;
    background:rgba(49,210,111,.14);
    color:#31d26f;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
    margin-bottom:18px;
}

.home-hero-selo-titulo{
    font-size:30px;
    font-weight:900;
    color:#fff;
    letter-spacing:-1px;
}

.home-hero-selo-subtitulo{
    font-size:26px;
    font-weight:900;
    color:#31d26f;
    letter-spacing:-1px;
    margin-top:2px;
}

.home-hero-selo-texto{
    margin-top:14px;
    font-size:15px;
    line-height:1.55;
    font-weight:600;
    color:rgba(255,255,255,.78);
}

/* FAIXA */

.home-faixa{
    background:#111;
    color:#fff;
    padding:18px 0;
    overflow:hidden;
}

.home-faixa-area{
    display:flex;
    gap:36px;
    white-space:nowrap;
    font-size:15px;
    font-weight:900;
    color:#31d26f;
}

/* INTRO */

.home-intro{
    padding:110px 0 70px;
    background:#f4f0e8;
}

.home-label{
    color:#178f45;
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:13px;
    font-weight:900;
    margin-bottom:14px;
}

.home-titulo-secao{
    max-width:850px;
    font-size:54px;
    line-height:1.05;
    letter-spacing:-2px;
    font-weight:900;
    color:#141414;
}

.home-titulo-secao span{
    color:#178f45;
}

.home-grid-intro{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:46px;
    align-items:end;
}

.home-intro-texto{
    font-size:18px;
    line-height:1.8;
    color:#555;
    font-weight:600;
}

/* PRODUTOS */

.home-produtos{
    padding:50px 0 110px;
    background:#f4f0e8;
}

.home-produtos-grid{
    display:grid;
    grid-template-columns:repeat(12,1fr);
    gap:24px;
}

.home-produto{
    position:relative;
    min-height:390px;
    border-radius:36px;
    overflow:hidden;
    padding:30px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background:#111;
    box-shadow:0 25px 70px rgba(0,0,0,.12);
}

.home-produto:nth-child(1){
    grid-column:span 7;
}

.home-produto:nth-child(2){
    grid-column:span 5;
}

.home-produto:nth-child(3),
.home-produto:nth-child(4),
.home-produto:nth-child(5){
    grid-column:span 4;
}

.home-produto img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.35s;
}

.home-produto::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.82));
    z-index:1;
}

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

.home-produto-conteudo{
    position:relative;
    z-index:2;
    color:#fff;
}

.home-produto-tag{
    display:inline-flex;
    background:rgba(49,210,111,.18);
    color:#31d26f;
    border:1px solid rgba(49,210,111,.35);
    padding:8px 14px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    margin-bottom:14px;
}

.home-produto h3{
    font-size:34px;
    line-height:1;
    margin-bottom:14px;
    font-weight:900;
}

.home-produto p{
    max-width:520px;
    color:#e8e8e8;
    line-height:1.7;
    font-weight:600;
}

.home-produto-link{
    margin-top:20px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#31d26f;
    font-weight:900;
}

/* ECOSSISTEMA */

.home-ecossistema{
    position:relative;
    padding:115px 0;
    background:#101510;
    color:#fff;
    overflow:hidden;
}

.home-ecossistema::before{
    content:'';
    position:absolute;
    width:620px;
    height:620px;
    right:-250px;
    top:-220px;
    border-radius:50%;
    background:#31d26f;
    opacity:.13;
    filter:blur(20px);
}

.home-ecossistema-area{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.95fr 1.05fr;
    gap:56px;
    align-items:center;
}

.home-ecossistema-img{
    border-radius:38px;
    overflow:hidden;
    min-height:520px;
    box-shadow:0 30px 80px rgba(0,0,0,.3);
}

.home-ecossistema-img img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.home-ecossistema .home-titulo-secao{
    color:#fff;
}

.home-ecossistema-texto{
    color:#d8d8d8;
    font-size:18px;
    line-height:1.8;
    font-weight:600;
    margin-top:24px;
}

.home-pontos{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:34px;
}

.home-ponto{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
    border-radius:22px;
    padding:18px;
    font-size:14px;
    line-height:1.5;
    font-weight:800;
}

.home-ponto i{
    color:#31d26f;
    margin-right:8px;
}

/* CTA */

.home-cta{
    padding:115px 0;
    background:#f4f0e8;
}

.home-cta-box{
    position:relative;
    overflow:hidden;
    border-radius:44px;
    background:
        linear-gradient(135deg,rgba(0,0,0,.76),rgba(0,0,0,.42)),
        url('../images/home/cta.jpg') center center/cover no-repeat;
    min-height:500px;
    display:flex;
    align-items:flex-end;
    padding:56px;
    box-shadow:0 28px 80px rgba(0,0,0,.16);
}

.home-cta-conteudo{
    max-width:720px;
    color:#fff;
}

.home-cta-conteudo h2{
    font-size:54px;
    line-height:1.05;
    letter-spacing:-2px;
    font-weight:900;
    margin-bottom:18px;
}

.home-cta-conteudo p{
    font-size:18px;
    line-height:1.75;
    color:#ededed;
    font-weight:600;
}

/* RODAPE */

.home-rodape{
    background:#101510;
    color:#fff;
    padding:70px 0 34px;
}

.home-rodape-area{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    align-items:start;
}

.home-rodape-logo{
    width:145px;
    margin-bottom:24px;
}

.home-rodape-texto{
    max-width:470px;
    color:#d0d0d0;
    line-height:1.8;
    font-weight:600;
}

.home-rodape-info{
    display:grid;
    gap:14px;
}

.home-rodape-item{
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.07);
    border-radius:20px;
    padding:18px;
    color:#e8e8e8;
    font-weight:700;
}

.home-copy{
    margin-top:45px;
    padding-top:24px;
    border-top:1px solid rgba(255,255,255,.08);
    color:#8f8f8f;
    font-size:13px;
}

.home-rodape-marcas{
    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:18px;
}

.home-rodape-logo{
    width:120px;
    display:block;
    margin-right: 30px;
}

.home-rodape-stone{
    display:flex;
    align-items:center;
    gap:10px;
    background:#00d959;
    color:#06160a;
    font-size:14px;
    font-weight:800;
    padding:12px 18px;
    border-radius:999px;
    white-space:nowrap;
}

/* RESPONSIVO */

@media(max-width:980px){

    .home-topo{
        display:flex;
        justify-content:space-between;
        align-items:center;
    }

    .home-menu,
    .home-whatsapp{
        display:none;
    }

    .home-menu-mobile-btn{
        display:flex;
        margin-left:auto;
    }

    .home-menu-mobile{
        position:relative;
        z-index:40;
        display:none;
        background:#fff;
        border-radius:24px;
        padding:18px;
        margin-top:8px;
        box-shadow:0 18px 45px rgba(0,0,0,.12);
    }

    .home-menu-mobile.ativo{
        display:grid;
        gap:8px;
    }

    .home-menu-mobile a{
        padding:14px;
        border-radius:16px;
        color:#111;
        font-size:15px;
        font-weight:900;
    }

    .home-menu-mobile a:hover{
        background:#f2f2f2;
    }

    .home-menu-mobile-whats{
        background:#119947 !important;
        color:#fff !important;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:8px;
        margin-top:6px;
    }

    .home-hero{
        min-height:auto;
        background:
            radial-gradient(circle at 12% 20%, rgba(49,210,111,.12), transparent 32%),
            linear-gradient(135deg,#f7f1e6,#e9dfcf);
    }

    .home-hero::before{
        width:260px;
        height:260px;
        right:-120px;
        top:-120px;
        opacity:.10;
    }

    .home-hero::after{
        width:220px;
        height:220px;
        left:-90px;
        bottom:-90px;
        opacity:.10;
    }

    .home-hero-area,
    .home-grid-intro,
    .home-ecossistema-area,
    .home-rodape-area{
        grid-template-columns:1fr;
    }

    .home-hero-area{
        gap:32px;
        padding:20px 0 70px;
    }

    .home-titulo{
        font-size:48px;
        line-height:1.05;
        letter-spacing:-2px;
        color:#111;
    }

    .home-texto{
        color:#444;
    }

    .home-titulo-secao,
    .home-cta-conteudo h2{
        font-size:38px;
        letter-spacing:-1px;
    }

    .home-hero-visual{
        min-height:480px;
    }

    .home-produto:nth-child(1),
    .home-produto:nth-child(2),
    .home-produto:nth-child(3),
    .home-produto:nth-child(4),
    .home-produto:nth-child(5){
        grid-column:span 12;
    }

    .home-copy{
        text-align: center;
    }

}


@media (max-width:768px){

    .home-rodape-marcas{
        flex-direction:column;
        align-items:flex-start;
        gap:14px;
        width: 120px;
    }

    .home-rodape-logo{
        width:150px;
    }

}

@media(max-width:620px){

    .home-container{
        padding:0 18px;
    }

    .home-topo{
        padding:18px 0 12px;
        justify-content:flex-start;
    }

    .home-topo img{
        width:88px;
    }

    .home-hero-area{
        padding:20px 0 60px;
    }

    .home-tag{
        font-size:12px;
        padding:9px 14px;
        margin-bottom:20px;
    }

    .home-titulo{
        font-size:39px;
        line-height:1.06;
        letter-spacing:-1px;
    }

    .home-texto{
        font-size:16px;
        line-height:1.75;
    }

    .home-botoes{
        margin-top:28px;
    }

    .home-btn{
        width:100%;
    }

    .home-hero-visual{
        min-height:410px;
    }

    .home-hero-card-principal{
        width:88%;
        height:320px;
        right:0;
        top:10px;
    }

    .home-hero-card-secundario{
        width:58%;
        height:190px;
        left:0;
        bottom:20px;
    }

    .home-hero-selo{
        width:205px;
        min-height:175px;
        right:0;
        bottom:12px;
        border-radius:26px;
        padding:22px;
    }

    .home-hero-selo-icone{
        width:46px;
        height:46px;
        font-size:22px;
        margin-bottom:12px;
    }

    .home-hero-selo-titulo{
        font-size:24px;
    }

    .home-hero-selo-subtitulo{
        font-size:21px;
    }

    .home-hero-selo-texto{
        font-size:13px;
        margin-top:10px;
    }

    .home-intro{
        padding:80px 0 50px;
    }

    .home-produtos{
        padding:35px 0 80px;
    }

    .home-produto{
        min-height:360px;
        border-radius:28px;
        padding:24px;
    }

    .home-produto h3{
        font-size:28px;
    }

    .home-ecossistema{
        padding:80px 0;
    }

    .home-ecossistema-img{
        min-height:360px;
        border-radius:28px;
    }

    .home-pontos{
        grid-template-columns:1fr;
    }

    .home-cta{
        padding:80px 0;
    }

    .home-cta-box{
        min-height:460px;
        padding:30px;
        border-radius:32px;
    }

    .home-rodape{
        padding:55px 0 30px;
    }

}




.em-breve-page{
    min-height:100vh;
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:28px;
    background:
        radial-gradient(circle at top left, rgba(215,255,63,.35), transparent 32%),
        radial-gradient(circle at bottom right, rgba(0,0,0,.18), transparent 36%),
        #f4f0e8;
}

.em-breve-card{
    width:100%;
    max-width:680px;
    background:#fff;
    border-radius:34px;
    padding:54px 34px;
    text-align:center;
    box-shadow:0 25px 70px rgba(0,0,0,.14);
    position:relative;
    overflow:hidden;
}

.em-breve-card:before{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    border-radius:50%;
    background:#d7ff3f;
    top:-110px;
    right:-80px;
    opacity:.45;
}

.em-breve-logo{
    width:118px;
    max-width:45%;
    margin-bottom:24px;
    position:relative;
    z-index:2;
}

.em-breve-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:34px;
    padding:0 16px;
    border-radius:999px;
    background:#111;
    color:#d7ff3f;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
    margin-bottom:18px;
}

.em-breve-card h1{
    font-size:52px;
    line-height:1;
    font-weight:900;
    color:#111;
    margin:0 0 18px;
}

.em-breve-card p{
    max-width:500px;
    margin:0 auto;
    font-size:17px;
    line-height:1.7;
    color:#4a4a4a;
}

.em-breve-info{
    display:flex;
    justify-content:center;
    gap:14px;
    flex-wrap:wrap;
    margin:34px 0;
}

.em-breve-info div{
    display:flex;
    align-items:center;
    gap:10px;
    background:#f7f7f7;
    border:1px solid #ebebeb;
    border-radius:18px;
    padding:12px 16px;
    color:#222;
    font-size:14px;
    font-weight:800;
}

.em-breve-info img{
    width:34px;
    height:auto;
}

.em-breve-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
    padding:0 28px;
    border-radius:18px;
    background:#d7ff3f;
    color:#111;
    text-decoration:none;
    font-size:16px;
    font-weight:900;
    box-shadow:0 12px 30px rgba(215,255,63,.35);
}

@media(max-width:768px){
    .em-breve-card{
        padding:42px 24px;
        border-radius:28px;
    }

    .em-breve-card h1{
        font-size:40px;
    }

    .em-breve-info{
        flex-direction:column;
    }

    .em-breve-info div,
    .em-breve-btn{
        width:100%;
    }
}