/* =====================================================
   GOSTINHO DE MINAS
   STYLE.CSS PREMIUM
   PARTE 1/4
===================================================== */


/* ===============================
   VARIAVEIS
================================ */


:root {

    --marrom:#5A3625;

    --dourado:#D4A24A;

    --creme:#F8F2E6;

    --preto:#111;

    --branco:#fff;

    --cinza:#666;


    --fonte-principal:'Poppins',sans-serif;

    --fonte-titulo:'Playfair Display',serif;


    --transicao:.4s ease;

}




/* ===============================
   RESET
================================ */


* {

    margin:0;

    padding:0;

    box-sizing:border-box;

}


html {

    scroll-behavior:smooth;

}


body {

    font-family:var(--fonte-principal);

    background:var(--creme);

    color:var(--preto);

    overflow-x:hidden;

}


img {

    max-width:100%;

    display:block;

}


a {

    text-decoration:none;

    color:inherit;

}


ul {

    list-style:none;

}


section[id] {

    scroll-margin-top:92px;

}


.container {

    width:min(1160px,90%);

    margin:auto;

}




/* ===============================
   BOTOES
================================ */


.btn {

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:15px 35px;

    border-radius:50px;

    background:var(--dourado);

    color:white;

    font-weight:600;

    transition:.4s;

    position:relative;

    overflow:hidden;

}


.btn:hover {

    transform:translateY(-5px);

    box-shadow:0 15px 35px rgba(0,0,0,.2);

}


.btn-outline {

    background:transparent;

    border:2px solid white;

}




/* ===============================
   HEADER
================================ */


header {

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:1000;

    transition:.4s;

}


header.scrolled {

    background:rgba(90,54,37,.95);

    backdrop-filter:blur(10px);

    box-shadow:0 10px 30px rgba(0,0,0,.2);

}


header .container {

    height:90px;

    display:flex;

    justify-content:center;

    align-items:center;

    position:relative;

}




nav ul {


    display:flex;


    gap:35px;


}





nav a {


    color:white;


    font-size:15px;


    position:relative;


}





nav a::after {


    content:"";


    position:absolute;


    bottom:-8px;


    left:0;


    height:2px;


    width:0;


    background:var(--dourado);


    transition:.3s;


}




nav a:hover::after {


    width:100%;


}





.menu-mobile {


    display:none;


    position:absolute;


    right:0;


    color:white;


    font-size:28px;


    cursor:pointer;


}






/* ===============================
   HERO
================================ */



.hero {


    height:100vh;


    position:relative;


    display:flex;


    align-items:center;


    justify-content:center;


    text-align:center;


    overflow:hidden;


}




.hero-bg {


    position:absolute;


    inset:0;


    width:100%;


    height:100%;


    object-fit:cover;


    animation:

    zoomHero 15s infinite alternate;


}





@keyframes zoomHero {


from{


transform:scale(1);

}


to{


transform:scale(1.1);

}


}







.overlay {


    position:absolute;


    inset:0;


    background:

    linear-gradient(

    rgba(0,0,0,.45),

    rgba(0,0,0,.75)

    );


}





.hero-content {


    position:relative;


    z-index:2;


    color:white;


    max-width:900px;


    animation:

    aparecer 1.5s;


}





@keyframes aparecer {


from{


opacity:0;


transform:translateY(50px);


}



to{


opacity:1;


transform:translateY(0);


}


}






.hero h1 {


    font-family:var(--fonte-titulo);


    font-size:

    clamp(55px,8vw,95px);


    line-height:1;


}





.hero h1 span {


    display:block;


    margin-top:20px;


    color:var(--dourado);


    font-family:var(--fonte-principal);


    font-size:30px;


    letter-spacing:12px;


}





.hero p {


    margin:35px auto;


    max-width:700px;


    font-size:18px;


    line-height:1.8;


}





.hero-buttons {


    display:flex;


    justify-content:center;


    gap:20px;


}







/* ===============================
   QUALIDADE
================================ */



.qualidade {


    padding:72px 0;


    background:white;


}





section h2 {


    text-align:center;


    font-family:var(--fonte-titulo);


    color:var(--marrom);


    font-size:

    clamp(32px,4.6vw,50px);


    margin-bottom:20px;


}




.subtitle {


    text-align:center;


    color:var(--cinza);


    margin-bottom:34px;


}




.qualidade-grid {


    display:grid;


    grid-template-columns:

    repeat(4,1fr);


    gap:25px;


}




.qualidade-card {


    background:var(--creme);


    padding:24px 18px;


    border-radius:25px;


    border:2px solid transparent;


    text-align:center;


    transition:.4s;


}





.qualidade-card:hover {


    transform:translateY(-12px);


    border-color:var(--dourado);


    box-shadow:

    0 20px 40px rgba(0,0,0,.12);


}





.qualidade-card i {


    font-size:40px;


    color:var(--dourado);


    margin-bottom:20px;


}




.qualidade-card h3 {


    color:var(--marrom);


    margin-bottom:15px;


}




.qualidade-card p {


    color:#666;


    line-height:1.7;


}
/* =====================================================
   PARTE 2/4
   JORNADA + PROCESSO
===================================================== */



/* ===============================
   NOSSA JORNADA
================================ */


.jornada {


    padding:28px 0;


    background:var(--creme);


}



.jornada .container:first-child {


    display:grid;


    grid-template-columns:1fr 1fr;


    gap:18px;


    align-items:flex-start;


}





.jornada-img {


    position:relative;

    align-self:flex-start;

    padding:8px;


}





.jornada-img::before {


    content:"";


    position:absolute;


    width:100%;


    height:100%;


    border:3px solid var(--dourado);


    top:10px;


    left:10px;


    border-radius:25px;


}





.jornada-img img,
.jornada-img video {


    position:relative;


    z-index:2;


    height:clamp(150px,16vw,205px);


    width:100%;


    object-fit:cover;


    border-radius:25px;


    box-shadow:

    0 25px 60px rgba(0,0,0,.2);


}




.jornada-text span {


    color:var(--dourado);


    font-size:12px;


    text-transform:uppercase;


    letter-spacing:3px;


}


.jornada-text h2 {


    text-align:left;


    margin-top:10px;


    font-size:clamp(24px,2.4vw,38px);


}




.jornada-text p {


    color:#555;


    line-height:1.45;


    font-size:15px;


    margin-bottom:10px;


}







/* ===============================
    LINHA DO TEMPO
================================ */



.timeline {


    margin-top:30px;


    position:relative;


}





.timeline::before {


    content:"";


    position:absolute;


    top:35px;


    left:0;


    width:100%;


    height:3px;


    background:var(--dourado);


}





.timeline-items {


    display:flex;


    justify-content:space-between;


}




.timeline-item {


    width:19%;


    text-align:center;


}





.timeline-circle {


    width:70px;


    height:70px;


    background:var(--marrom);


    color:white;


    border-radius:50%;


    display:flex;


    justify-content:center;


    align-items:center;


    margin:auto;


    font-weight:bold;


    font-size:22px;


    border:5px solid var(--creme);


    transition:.4s;


}





.timeline-item:hover .timeline-circle {


    background:var(--dourado);


    transform:scale(1.15);


}




.timeline-item h3 {


    color:var(--marrom);


    margin-top:25px;


}





.timeline-item p {


    color:#666;


    font-size:14px;


    margin-top:10px;


}









/* ===============================
   PROCESSO
================================ */


.processo {


    background:

    linear-gradient(
    180deg,
    #fff 0%,
    #f7efe1 100%
    );


    padding:52px 0;


}

.processo .timeline {


    margin-top:26px;


}


.processo .timeline-item {


    background:#fff;


    border:2px solid transparent;


    border-radius:20px;


    padding:16px 10px;


    transition:.3s;


}


.processo .timeline-item:hover {


    border-color:var(--dourado);


    transform:translateY(-4px);


    box-shadow:0 16px 30px rgba(0,0,0,.10);


}






/* ===============================
   ANIMAÇÕES
================================ */


.reveal {


    opacity:0;


    transform:translateY(40px);


    transition:1s;


}





.reveal.show {


    opacity:1;


    transform:translateY(0);


}






@media(max-width:900px){



.jornada .container:first-child {


    grid-template-columns:1fr;


}



.jornada-img img,
.jornada-img video {


    height:200px;


}



.timeline::before {


    display:none;


}




.timeline-items {


    flex-direction:column;


    gap:40px;


}




.timeline-item {


    width:100%;


}




.cards-slider {


    grid-template-columns:repeat(2,minmax(170px,1fr));


    grid-template-areas:

    "step1 step2"

    "step3 step4"

    "step5 step5";


}




.process-card {


    width:100%;


}




}
/* =====================================================
   PARTE 3/4
   CATÁLOGO + AVALIAÇÕES + CONTATO
===================================================== */





/* ===============================
   CATÁLOGO
================================ */


.catalogo {


    padding:78px 0;


    background:var(--creme);


}





.catalog-grid {


    display:grid;


    grid-template-columns:

    repeat(3,1fr);


    gap:24px;


}






.produto-card {


    background:white;


    border-radius:30px;


    border:2px solid transparent;


    overflow:hidden;


    box-shadow:

    0 15px 40px rgba(0,0,0,.12);


    transition:.5s;


    display:flex;


    flex-direction:column;


    height:100%;


}





.produto-card:hover {


    transform:translateY(-8px);


    border-color:var(--dourado);


    box-shadow:

    0 24px 52px rgba(0,0,0,.16);


}






.produto-img {


    height:270px;


    overflow:hidden;


}





.produto-img img {


    width:100%;


    height:100%;


    object-fit:cover;


    transition:.6s;


}





.produto-card:hover img {


    transform:none;


}





.produto-info {


    padding:35px;


    display:flex;


    flex-direction:column;


    flex:1;


}





.produto-info h3 {


    font-family:var(--fonte-titulo);


    color:var(--marrom);


    font-size:30px;


    margin-bottom:10px;


}




.produto-info span {


    color:var(--dourado);


    font-weight:600;


}





.produto-info ul {


    margin:25px 0;


    flex:1;


}





.produto-info li {


    color:#666;


    margin-bottom:12px;


}





.produto-info li::before {


    content:"✓";


    color:var(--dourado);


    font-weight:bold;


    margin-right:10px;


}







.btn-produto {


    display:flex;


    justify-content:center;


    background:var(--marrom);


    color:white;


    padding:15px;


    border-radius:40px;


    transition:.3s;


}





.btn-produto:hover {


    background:var(--dourado);


    transform:translateY(-3px);


}









/* ===============================
   AVALIAÇÕES
================================ */



.avaliacoes {


    padding:78px 0;


    background:white;


}





.reviews {


    display:grid;


    grid-template-columns:

    repeat(3,1fr);


    gap:30px;


}






.review-card {


    background:var(--creme);


    padding:28px;


    border-radius:30px;


    border:2px solid transparent;


    text-align:center;


    transition:.4s;


}




.review-card:hover {


    transform:translateY(-10px);


    border-color:var(--dourado);


    box-shadow:

    0 20px 50px rgba(0,0,0,.12);


}





.stars {


    color:var(--dourado);


    font-size:32px;


    letter-spacing:5px;


    margin-bottom:20px;


}





.review-card h4 {


    color:var(--marrom);


    font-size:20px;


    margin-bottom:15px;


}





.review-card p {


    color:#666;


    line-height:1.8;


}





.review-card span {


    display:block;


    margin-top:20px;


    color:#777;


    font-size:14px;


}










/* ===============================
   CONTATO
================================ */



.contato {


    padding:78px 0;


    background:var(--creme);


}






.contato .container {


    display:grid;


    grid-template-columns:

    1fr 1fr;


    gap:45px;


    align-items:stretch;


}







.contato-form {


    background:white;


    padding:36px;


    border-radius:30px;


    box-shadow:

    0 20px 50px rgba(0,0,0,.1);


    display:flex;


    flex-direction:column;


}






.contato-form h2 {


    text-align:left;


}





.contato-form p {


    color:#666;


    margin-bottom:24px;


}






form {


    display:flex;


    flex-direction:column;


    gap:16px;


    flex:1;


    justify-content:space-between;


}







form input,


form textarea {


    border:none;


    outline:none;


    padding:18px;


    border-radius:15px;


    background:var(--creme);


    font-family:var(--fonte-principal);


    font-size:15px;


}






form textarea {


    resize:none;


}






form button {


    border:none;


    cursor:pointer;


    padding:18px;


    border-radius:50px;


    background:var(--marrom);


    color:white;


    font-weight:600;


    transition:.3s;


}






form button:hover {


    background:var(--dourado);


}







/* ===============================
   INFORMAÇÕES
================================ */


.contato-info {


    padding:20px;


    height:100%;


}





.contato-info h3 {


    font-family:var(--fonte-titulo);


    color:var(--marrom);


    font-size:34px;


    margin-bottom:40px;


}





.info {


    display:flex;


    gap:20px;


    align-items:center;


    margin-bottom:30px;


}





.info i {


    width:55px;


    height:55px;


    display:flex;


    justify-content:center;


    align-items:center;


    background:var(--marrom);


    color:white;


    border-radius:50%;


    font-size:22px;


}





.info strong {


    color:var(--marrom);


}





.info p {


    color:#666;


    margin-top:5px;


}








/* ===============================
   MAPA
================================ */



.mapa {


    margin-top:14px;


    border:3px solid var(--marrom);


    border-radius:16px;


    overflow:hidden;


}






.mapa iframe {


    width:100%;


    height:245px;


    border:0;


}
/* =====================================================
   PARTE 4/4
   FOOTER + BOTÕES + RESPONSIVIDADE
===================================================== */





/* ===============================
   FOOTER
================================ */


footer {


    background:var(--marrom);


    color:white;


    padding-top:80px;


}







.footer-grid {


    display:grid;


    grid-template-columns:

    repeat(4,1fr);


    gap:40px;


}







footer h3 {


    font-family:var(--fonte-titulo);


    color:var(--dourado);


    font-size:26px;


    margin-bottom:25px;


}







footer p,


footer li {


    color:rgba(255,255,255,.75);


    line-height:2;


}







footer a:hover {


    color:var(--dourado);


}







footer i {


    font-size:30px;


    margin-right:15px;


    transition:.3s;


}





footer i:hover {


    transform:translateY(-5px);


    color:var(--dourado);


}







.copyright {


    margin-top:60px;


    padding:25px;


    text-align:center;


    border-top:

    1px solid rgba(255,255,255,.2);


    color:rgba(255,255,255,.7);


}









/* ===============================
   WHATSAPP FLUTUANTE
================================ */


.whatsapp-float {


    position:fixed;


    right:30px;


    bottom:30px;


    width:65px;


    height:65px;


    border-radius:50%;


    background:#25D366;


    color:white;


    display:flex;


    justify-content:center;


    align-items:center;


    font-size:35px;


    z-index:999;


    animation:pulse 2s infinite;


}







@keyframes pulse {


0%{


box-shadow:

0 0 0 0 rgba(37,211,102,.7);


}



70%{


box-shadow:

0 0 0 25px rgba(37,211,102,0);


}



100%{


box-shadow:

0 0 0 0 rgba(37,211,102,0);


}


}









/* ===============================
   BOTÃO TOPO
================================ */


#topButton {


    position:fixed;


    right:30px;


    bottom:110px;


    width:50px;


    height:50px;


    border-radius:50%;


    border:none;


    background:var(--marrom);


    color:white;


    font-size:20px;


    cursor:pointer;


    opacity:0;


    visibility:hidden;


    transition:.4s;


    z-index:999;


}





#topButton.show {


    opacity:1;


    visibility:visible;


}





#topButton:hover {


    background:var(--dourado);


    transform:translateY(-5px);


}









/* ===============================
   MENU MOBILE
================================ */



@media(max-width:900px){



.menu-mobile {


    display:block;


}





nav {


    position:absolute;


    top:90px;


    left:0;


    width:100%;


    background:var(--marrom);


    padding:30px;


    transform:translateY(-200%);


    transition:.5s;


}





nav.active {


    transform:translateY(0);


}





nav ul {


    flex-direction:column;


    align-items:center;


    gap:25px;


}






.hero-buttons {


    flex-direction:column;


    width:80%;


    margin:auto;


}




.hero p {


    font-size:15px;


}


.hero {


    min-height:100svh;


    height:auto;


    padding-top:120px;


    padding-bottom:56px;


}




.qualidade-grid {


    grid-template-columns:

    repeat(2,1fr);


}






.catalog-grid {


    grid-template-columns:

    repeat(2,1fr);


}






.reviews {


    grid-template-columns:

    repeat(2,1fr);


}







.contato .container {


    grid-template-columns:1fr;


}







.footer-grid {


    grid-template-columns:

    repeat(2,1fr);


}



}









@media(max-width:600px){



.hero h1 span {


    font-size:20px;


    letter-spacing:7px;


}







.qualidade-grid,


.catalog-grid,


.reviews,


.footer-grid {


    grid-template-columns:1fr;


}







section {


    padding:56px 0;


}


.cards-slider {


    grid-template-columns:1fr;


    grid-template-areas:

    "step1"

    "step2"

    "step3"

    "step4"

    "step5";


}







.jornada-img img,
.jornada-img video {


    height:180px;


}






.contato-form {


    padding:24px;


}







.contato-info h3 {


    font-size:28px;


}


.hero {


    min-height:100svh;


    height:auto;


    padding-top:105px;


    padding-bottom:45px;


}


.mapa iframe {


    height:220px;


}







.whatsapp-float {


    width:55px;


    height:55px;


    font-size:28px;


    right:20px;


    bottom:20px;


}






#topButton {


    right:20px;


    bottom:90px;


}


}



@media(max-width:420px){


.cards-slider {


    grid-template-columns:1fr;


    grid-template-areas:

    "step1"

    "step2"

    "step3"

    "step4"

    "step5";


}


}


/* ===============================
   DESIGN TABLET E CELULAR
================================ */

@media(max-width:1024px){

html,
body {


    width:100%;


    overflow-x:hidden;


}


.container {


    width:min(980px,92%);


}


header .container {


    height:82px;


}


.logo {


    font-size:27px;


}


.hero {


    min-height:100svh;


    height:100svh;


    padding-top:114px;


    padding-bottom:44px;


}


.hero-content {


    max-width:100%;


}


.hero h1 {


    font-size:clamp(44px,7.8vw,66px);


}


.hero p {


    max-width:100%;


    margin:24px auto;


    font-size:16px;


    line-height:1.65;


}


.hero-buttons {


    width:100%;


    gap:14px;


}


.btn {


    padding:14px 24px;


}


.jornada .container:first-child,
.contato .container {


    grid-template-columns:1fr;


}


.qualidade-grid,
.catalog-grid,
.reviews {


    grid-template-columns:repeat(2,minmax(0,1fr));


}


.produto-info {


    padding:24px;


}


.mapa iframe {


    width:100%;


    height:240px;


}

}


@media(max-width:768px){

.container {


    width:94%;


}


header .container {


    height:74px;


}


.logo {


    font-size:24px;


}


.logo span {


    letter-spacing:4px;


    font-size:11px;


}


nav {


    top:74px;


    padding:20px 16px;


}


section {


    padding:48px 0;


}


.hero {


    min-height:100svh;


    height:100svh;


    padding-top:96px;


    padding-bottom:34px;


}


.hero h1 {


    font-size:clamp(34px,10vw,46px);


}


.hero h1 span {


    margin-top:12px;


    font-size:16px;


    letter-spacing:4px;


}


.hero p {


    font-size:14.5px;


    line-height:1.55;


    margin:18px auto 22px;


}


.hero-buttons {


    width:100%;


    flex-direction:column;


}


.btn,
.btn-outline {


    width:100%;


}


.qualidade-grid,
.catalog-grid,
.reviews,
.footer-grid {


    grid-template-columns:1fr;


}


.cards-slider {


    grid-template-columns:1fr;


    grid-template-areas:

    "step1"

    "step2"

    "step3"

    "step4"

    "step5";


    gap:14px;


    max-width:440px;


}


.qualidade-card,
.process-card,
.produto-card,
.review-card {


    border-radius:22px;


}


.produto-img {


    height:220px;


}


.produto-info {


    padding:20px;


}


.produto-info h3 {


    font-size:24px;


}


.contato-form,
.contato-info {


    padding:20px;


}


.info {


    gap:12px;


    align-items:flex-start;


}


.mapa iframe {


    height:205px;


}


footer {


    text-align:center;


}


.whatsapp-float {


    width:52px;


    height:52px;


    font-size:26px;


    right:14px;


    bottom:14px;


}


#topButton {


    right:14px;


    bottom:78px;


}

}


@media(max-width:480px){

.container {


    width:95%;


}


.hero h1 {


    font-size:clamp(30px,9.6vw,38px);


}


.hero h1 span {


    font-size:14px;


    letter-spacing:3px;


}


.btn {


    font-size:14px;


    padding:12px 16px;


}


.timeline-circle {


    width:58px;


    height:58px;


    font-size:19px;


}


.produto-info h3 {


    font-size:22px;


}


.mapa iframe {


    height:185px;


}

}


/* ===============================
   AJUSTE COMPACTO GLOBAL
================================ */

header .container {


    height:82px;


}


nav ul {


    gap:26px;


}


.hero-content {


    max-width:860px;


}


.hero h1 {


    font-size:clamp(48px,7.2vw,84px);


}


.hero h1 span {


    margin-top:14px;


    font-size:24px;


    letter-spacing:8px;


}


.hero p {


    margin:24px auto;


    max-width:640px;


    font-size:16px;


    line-height:1.6;


}


.btn {


    padding:13px 26px;


}


section h2 {


    margin-bottom:14px;


}


.subtitle {


    margin-bottom:24px;


}


.qualidade,
.jornada,
.catalogo,
.avaliacoes,
.contato {


    padding:58px 0;


}


.processo {


    padding:46px 0;


}


.qualidade-grid,
.catalog-grid,
.reviews {


    gap:20px;


}


.jornada .container:first-child,
.contato .container {


    gap:28px;


}


.jornada-img::before {


    top:16px;


    left:16px;


}


.jornada-img img,
.jornada-img video {


    height:190px;


}


.jornada-text p {


    line-height:1.65;


    margin-bottom:14px;


}


.timeline {


    margin-top:20px;


}


.timeline-circle {


    width:62px;


    height:62px;


    font-size:20px;


}


.timeline-item h3 {


    margin-top:16px;


}


.timeline-item p {


    margin-top:8px;


    font-size:13px;


}


.processo .timeline-item {


    padding:12px 8px;


}


.produto-img {


    height:238px;


}


.produto-info {


    padding:24px;


}


.produto-info h3 {


    font-size:27px;


}


.produto-info ul {


    margin:18px 0;


}


.review-card {


    padding:22px;


}


.review-card p {


    line-height:1.6;


}


.contato-form {


    padding:28px;


}


.contato-form p {


    margin-bottom:16px;


}


form {


    gap:12px;


}


form input,
form textarea,
form button {


    padding:14px;


}


.contato-info h3 {


    font-size:30px;


    margin-bottom:26px;


}


.info {


    margin-bottom:20px;


}


.info i {


    width:48px;


    height:48px;


    font-size:19px;


}


footer {


    padding-top:58px;


}


footer h3 {


    margin-bottom:16px;


}


.copyright {


    margin-top:36px;


    padding:18px;


}

@media(min-width:1025px){

.catalogo {

    padding:24px 0 40px;

}


.catalogo h2 {

    margin-bottom:10px;

}


.catalogo .subtitle {

    margin-bottom:16px;

}


.catalog-grid {

    gap:14px;

}


.produto-img {

    height:162px;

}


.produto-info {

    padding:12px;

}


.produto-info h3 {

    font-size:20px;

}


.produto-info span {

    font-size:14px;

}


.produto-info ul {

    margin:8px 0;

}


.produto-info li {

    font-size:14px;

    margin-bottom:8px;

}


.btn-produto {

    font-size:14px;

    padding:12px;

}

}


@media(max-width:1024px){

.qualidade,
.jornada,
.catalogo,
.avaliacoes,
.contato,
.processo {


    padding:48px 0;


}


.hero {


    padding-top:100px;


    padding-bottom:30px;


}


.hero p {


    margin:16px auto 20px;


}


.timeline-item {


    width:19.2%;


}

}


@media(max-width:768px){

section,
.qualidade,
.jornada,
.catalogo,
.avaliacoes,
.contato,
.processo {


    padding:40px 0;


}


.hero {


    padding-top:88px;


    padding-bottom:22px;


}


.hero h1 {


    font-size:clamp(32px,9.2vw,44px);


}


.hero p {


    font-size:14px;


    line-height:1.5;


}


.hero-buttons {


    gap:10px;


}


.btn,
.btn-outline {


    width:100%;


    max-width:300px;


    margin:0 auto;


    padding:11px 16px;


    font-size:14px;


}


.timeline-item {


    width:100%;


}


.timeline-items {


    gap:26px;


}


.qualidade-grid,
.catalog-grid,
.reviews {


    gap:16px;


}


.qualidade-card {


    padding:18px 14px;


}


.produto-img {


    height:190px;


}


.produto-info {


    padding:16px;


}


.produto-info h3 {


    font-size:21px;


}


.produto-info ul {


    margin:12px 0;


}


.review-card {


    padding:18px;


}


.review-card h4 {


    font-size:18px;


    margin-bottom:10px;


}


.review-card p {


    font-size:14px;


}


.contato-form,
.contato-info {


    padding:18px;


}


form input,
form textarea,
form button {


    padding:12px;


    font-size:14px;


}

}


@media(max-width:480px){

section,
.qualidade,
.jornada,
.catalogo,
.avaliacoes,
.contato,
.processo {


    padding:34px 0;


}


.hero {


    padding-top:84px;


}


.hero h1 span {


    margin-top:10px;


    letter-spacing:3px;


}


.hero-buttons {


    gap:8px;


}


.btn,
.btn-outline {


    max-width:260px;


    padding:10px 14px;


    font-size:13px;


}


.subtitle {


    margin-bottom:18px;


}


.produto-img {


    height:170px;


}


.qualidade-card {


    padding:16px 12px;


}


.produto-info {


    padding:14px;


}


.produto-info h3 {


    font-size:19px;


}


.produto-info span,
.produto-info li,
.review-card p,
.timeline-item p {


    font-size:13px;


}


.review-card {


    padding:16px;


}


.stars {


    font-size:26px;


    margin-bottom:12px;


}


.timeline-circle {


    width:52px;


    height:52px;


    font-size:17px;


}


.contato-form,
.contato-info {


    padding:14px;


}


.info i {


    width:42px;


    height:42px;


    font-size:16px;


}

}

/* ===============================
   AJUSTES FINAIS DE LAYOUT
================================ */

.hero-bg {

    filter:brightness(1.18) saturate(1.04);

}



.overlay {

    background:

    linear-gradient(

    rgba(0,0,0,.28),

    rgba(0,0,0,.54)

    );

}



.jornada {

    padding:88px 0;

}



.jornada .container:first-child {

    align-items:stretch;

}



.jornada-img {

    padding:14px;

    border:2px solid var(--dourado);

    border-radius:32px;

    background:linear-gradient(180deg, rgba(212,162,74,.16), rgba(255,255,255,.55));

    box-shadow:0 26px 60px rgba(0,0,0,.12);

}



.jornada-img::before {

    content:none;

}



.jornada-img video {

    display:block;

    width:100%;

    height:100%;

    min-height:0;

    object-fit:cover;

    border-radius:22px;

    box-shadow:none;

}



.avaliacoes {

    overflow:hidden;

}



.empresas-wrap {

    position:relative;

}



.empresas-nav {

    position:absolute;

    left:0;

    right:0;

    top:50%;

    transform:translateY(-50%);

    z-index:2;

    display:flex;

    justify-content:space-between;

    gap:10px;

    pointer-events:none;

}



.empresas-nav-btn {

    width:40px;

    height:40px;

    border-radius:50%;

    border:1px solid rgba(90,54,37,.22);

    background:var(--branco);

    color:var(--marrom);

    display:inline-flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

    transition:var(--transicao);

    box-shadow:0 8px 20px rgba(0,0,0,.08);

    pointer-events:auto;

}



.empresas-nav-btn:not(:disabled):hover {

    transform:translateY(-2px);

    border-color:rgba(90,54,37,.45);

    box-shadow:0 12px 25px rgba(0,0,0,.14);

}



.empresas-nav-btn:active {

    transform:translateY(0);

}



.empresas-nav-btn i {

    font-size:14px;

}



.empresas-strip {

    display:flex;

    gap:18px;

    overflow-x:auto;

    padding:4px 48px 12px;

    scroll-snap-type:x mandatory;

    -webkit-overflow-scrolling:touch;

}



.empresas-strip::-webkit-scrollbar {

    height:10px;

}



.empresas-strip::-webkit-scrollbar-thumb {

    background:rgba(90,54,37,.28);

    border-radius:999px;

}



.empresa-card {

    flex:0 0 230px;

    min-width:230px;

    height:292px;

    scroll-snap-align:start;

    background:var(--creme);

    border-radius:28px;

    overflow:hidden;

    border:1px solid rgba(90,54,37,.08);

    box-shadow:0 18px 40px rgba(0,0,0,.08);

    display:flex;

    flex-direction:column;

}



.empresa-thumb {

    position:relative;

    flex:1;

    display:flex;

    align-items:center;

    justify-content:center;

    flex-direction:column;

    gap:10px;

    color:white;

    text-transform:uppercase;

    letter-spacing:3px;

    font-size:12px;

    font-weight:700;

}



.empresa-thumb::after {

    content:"";

    position:absolute;

    inset:0;

    background:

    radial-gradient(circle at 18% 18%, rgba(255,255,255,.24), transparent 34%),

    radial-gradient(circle at 82% 24%, rgba(255,255,255,.18), transparent 30%),

    linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.16));

}



.empresa-thumb i,
.empresa-thumb span {

    position:relative;

    z-index:1;

}



.empresa-thumb img {

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    object-fit:cover;

    display:block;

    z-index:0;

}



.empresa-fallback {

    position:relative;

    z-index:1;

    display:none;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    gap:10px;

}



.empresa-thumb i {

    font-size:42px;

}



.empresa-info {

    padding:18px 18px 20px;

    display:flex;

    flex-direction:column;

    gap:7px;

    min-height:96px;

}



.empresa-info small {

    color:var(--dourado);

    font-size:12px;

    letter-spacing:2px;

    text-transform:uppercase;

    font-weight:700;

}



.empresa-info h4 {

    color:var(--marrom);

    font-size:18px;

    line-height:1.2;

    min-height:43px;

    display:-webkit-box;

    line-clamp:2;

    -webkit-line-clamp:2;

    -webkit-box-orient:vertical;

    overflow:hidden;

}



.empresa-card--resort .empresa-thumb {

    background:linear-gradient(135deg, #0f766e, #2563eb);

}



.empresa-card--padaria .empresa-thumb {

    background:linear-gradient(135deg, #b45309, #f59e0b);

}



.empresa-card--hotel .empresa-thumb {

    background:linear-gradient(135deg, #1f2937, #4b5563);

}



@media(max-width:1024px){

    .jornada {

        padding:72px 0;

    }



    .jornada-img video {

        height:170px;

        min-height:0;

    }



    .empresa-card {

        flex-basis:210px;

        min-width:210px;

        height:278px;

    }

}

/* ===============================
   OVERRIDE FINAL V5 - DESKTOP
================================ */

.jornada {

    padding:42px 0 !important;

    min-height:78vh;

}



.jornada .container:first-child {

    grid-template-columns:1.05fr 1fr !important;

    align-items:center !important;

    gap:8px !important;

}



.jornada-img {

    width:min(420px,100%) !important;

    height:min(420px,100%) !important;

    margin:0 auto 0 -22px !important;

}



.jornada-text {

    max-height:none !important;

    overflow:visible !important;

    padding-right:0 !important;

}



.jornada-text h2 {

    font-size:clamp(30px,2.8vw,46px) !important;

}



.jornada-text p {

    font-size:16px !important;

    line-height:1.5 !important;

}



@media(max-width:1024px){

    .jornada {

        padding:32px 0 !important;

        min-height:auto;

    }



    .jornada .container:first-child {

        grid-template-columns:1fr 1fr !important;

        gap:12px !important;

    }



    .jornada-img {

        width:min(340px,100%) !important;

        height:min(340px,100%) !important;

        margin:0 auto 0 -8px !important;

    }



    .jornada-text h2 {

        font-size:clamp(26px,3.2vw,36px) !important;

    }



    .jornada-text p {

        font-size:15px !important;

    }

}



@media(max-width:768px){

    .jornada .container:first-child {

        grid-template-columns:1fr !important;

        gap:16px !important;

    }



    .jornada-img {

        width:min(280px,100%) !important;

        height:min(280px,100%) !important;

        margin:0 auto !important;

    }



    .jornada-text h2 {

        font-size:30px !important;

    }



    .jornada-text p {

        font-size:14px !important;

    }

}

/* ===============================
   OVERRIDE FINAL V8 - ALTURA IGUAL
================================ */

.jornada-text {

    height:430px !important;

    max-height:430px !important;

    display:flex;

    flex-direction:column;

    justify-content:center;

}



@media(max-width:1024px){

    .jornada-text {

        height:350px !important;

        max-height:350px !important;

    }

}



@media(max-width:768px){

    .jornada-text {

        height:280px !important;

        max-height:280px !important;

    }

}



@media(max-width:480px){

    .jornada-text {

        height:230px !important;

        max-height:230px !important;

    }

}

.form-status {

    margin-top:12px;

    font-size:14px;

    color:#1f7a3e;

    min-height:20px;

}



.form-status.error {

    color:#9d2a2a;

}



.contato-form button:disabled {

    opacity:.7;

    cursor:not-allowed;

}

/* ===============================
   OVERRIDE FINAL V9 - ALTURAS
================================ */

.qualidade,
.jornada,
.processo,
.catalogo,
.avaliacoes,
.contato {

    min-height:86vh;

    padding-top:52px !important;

    padding-bottom:52px !important;

    display:flex;

    align-items:center;

}



.qualidade .container,
.jornada .container,
.processo .container,
.catalogo .container,
.avaliacoes .container,
.contato .container {

    width:min(1260px,94%);

}



@media(max-width:1200px){

    .qualidade,
    .jornada,
    .processo,
    .catalogo,
    .avaliacoes,
    .contato {

        min-height:78vh;

        padding-top:44px !important;

        padding-bottom:44px !important;

    }

}



@media(max-width:1024px){

    .qualidade,
    .jornada,
    .processo,
    .catalogo,
    .avaliacoes,
    .contato {

        min-height:72vh;

        padding-top:40px !important;

        padding-bottom:40px !important;

    }

}



@media(max-width:768px){

    .qualidade,
    .jornada,
    .processo,
    .catalogo,
    .avaliacoes,
    .contato {

        min-height:auto;

        padding-top:34px !important;

        padding-bottom:34px !important;

        display:block;

    }



    .qualidade .container,
    .jornada .container,
    .processo .container,
    .catalogo .container,
    .avaliacoes .container,
    .contato .container {

        width:94%;

    }

}



@media(max-width:480px){

    .qualidade,
    .jornada,
    .processo,
    .catalogo,
    .avaliacoes,
    .contato {

        padding-top:28px !important;

        padding-bottom:28px !important;

    }



    .qualidade .container,
    .jornada .container,
    .processo .container,
    .catalogo .container,
    .avaliacoes .container,
    .contato .container {

        width:95%;

    }

}



@media(max-width:480px){

    .jornada {

        padding:24px 0 !important;

    }



    .jornada-img {

        width:min(230px,100%) !important;

        height:min(230px,100%) !important;

    }



    .jornada-text h2 {

        font-size:24px !important;

    }

}

/* ===============================
   OVERRIDE FINAL V7 - LAYOUT CHEIO
================================ */

.jornada {

    padding:56px 0 !important;

    background:
    linear-gradient(180deg, rgba(255,255,255,.45), rgba(248,242,230,.92));

}



.jornada .container:first-child {

    width:min(1280px,94%) !important;

    grid-template-columns:500px minmax(0,1fr) !important;

    align-items:center !important;

    gap:2px !important;

}



.jornada-img {

    width:min(500px,100%) !important;

    height:min(500px,100%) !important;

    margin:0 !important;

    justify-self:start;

}



.jornada-text {

    max-height:none !important;

    overflow:visible !important;

    padding-right:0 !important;

    margin-left:-2px;

}



.jornada-text h2 {

    font-size:clamp(34px,3.1vw,52px) !important;

    line-height:1.08;

    margin-bottom:16px;

}



.jornada-text p {

    font-size:18px !important;

    line-height:1.52 !important;

    margin-bottom:12px !important;

}



@media(max-width:1200px){

    .jornada .container:first-child {

        width:min(1140px,94%) !important;

        grid-template-columns:420px minmax(0,1fr) !important;

        gap:2px !important;

    }



    .jornada-img {

        width:min(420px,100%) !important;

        height:min(420px,100%) !important;

    }



    .jornada-text h2 {

        font-size:clamp(30px,3vw,44px) !important;

    }



    .jornada-text p {

        font-size:16px !important;

    }

}



@media(max-width:1024px){

    .jornada {

        padding:42px 0 !important;

    }



    .jornada .container:first-child {

        width:min(980px,95%) !important;

        grid-template-columns:350px minmax(0,1fr) !important;

        gap:4px !important;

    }



    .jornada-img {

        width:min(350px,100%) !important;

        height:min(350px,100%) !important;

    }



    .jornada-text h2 {

        font-size:clamp(28px,3.1vw,38px) !important;

    }



    .jornada-text p {

        font-size:15px !important;

    }

}



@media(max-width:768px){

    .jornada {

        padding:34px 0 !important;

    }



    .jornada .container:first-child {

        grid-template-columns:1fr !important;

        gap:18px !important;

    }



    .jornada-img {

        width:min(320px,100%) !important;

        height:min(320px,100%) !important;

        margin:0 auto !important;

    }



    .jornada-text {

        margin-left:0;

    }



    .jornada-text h2 {

        font-size:32px !important;

    }



    .jornada-text p {

        font-size:15px !important;

    }

}



@media(max-width:480px){

    .jornada {

        padding:26px 0 !important;

    }



    .jornada-img {

        width:min(250px,100%) !important;

        height:min(250px,100%) !important;

    }



    .jornada-text h2 {

        font-size:26px !important;

    }



    .jornada-text p {

        font-size:14px !important;

    }

}

/* ===============================
   OVERRIDE FINAL V2 - PADRAO GERAL
================================ */

.jornada {

    padding:28px 0 !important;

}



.jornada .container:first-child {

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:18px !important;

    align-items:stretch !important;

}



.jornada-text {

    display:flex;

    flex-direction:column;

    justify-content:center;

}



.jornada-text h2 {

    font-size:clamp(24px,2.1vw,34px) !important;

    line-height:1.15;

    margin-top:8px !important;

    margin-bottom:10px;

}



.jornada-text p {

    font-size:14px !important;

    line-height:1.42 !important;

    margin-bottom:8px !important;

}



.jornada-img {

    display:flex;

    align-self:stretch !important;

    height:auto;

    padding:8px !important;

    border-width:1px !important;

    border-radius:20px !important;

}



.jornada-img video {

    width:100%;

    flex:1;

    height:auto !important;

    min-height:0 !important;

    max-height:none !important;

    border-radius:14px !important;

    object-fit:cover;

}



@media(max-width:1024px){

    .jornada {

        padding:24px 0 !important;

    }



    .jornada .container:first-child {

        gap:14px !important;

    }



    .jornada-img video {

        flex:1;

        height:auto !important;

    }

}



@media(max-width:768px){

    .jornada .container:first-child {

        grid-template-columns:1fr;

    }



    .jornada-img {

        align-self:auto !important;

        height:auto;

    }



    .jornada-img video {

        flex:none;

        height:auto !important;

        aspect-ratio:16 / 9;

        max-height:220px !important;

    }

}



@media(max-width:480px){

    .jornada {

        padding:20px 0 !important;

    }



    .jornada-text h2 {

        font-size:24px !important;

    }



    .jornada-text p {

        font-size:13px !important;

    }



    .jornada-img video {

        max-height:190px !important;

    }

}

/* ===============================
   OVERRIDE FINAL V3 - ALTURA IGUAL
================================ */

.jornada-text {

    max-height:220px !important;

    overflow:auto;

    padding-right:4px;

}



.jornada-img video {

    height:220px !important;

    min-height:220px !important;

    max-height:220px !important;

}



@media(max-width:1024px){

    .jornada-text {

        max-height:200px !important;

    }



    .jornada-img video {

        height:200px !important;

        min-height:200px !important;

        max-height:200px !important;

    }

}



@media(max-width:768px){

    .jornada-text {

        max-height:180px !important;

    }



    .jornada-img video {

        height:180px !important;

        min-height:180px !important;

        max-height:180px !important;

    }

}



@media(max-width:480px){

    .jornada-text {

        max-height:160px !important;

    }



    .jornada-img video {

        height:160px !important;

        min-height:160px !important;

        max-height:160px !important;

    }

}



@media(max-width:768px){

    .jornada-img {

        padding:6px;

    }



    .jornada-img video {

        height:150px;

        min-height:0;

    }



    .empresas-strip {

        gap:14px;

    }



    .empresas-nav {

        top:48%;

    }



    .empresas-nav-btn {

        width:36px;

        height:36px;

    }



    .empresas-strip {

        padding:4px 40px 12px;

    }



    .empresa-card {

        flex-basis:200px;

        min-width:200px;

        height:264px;

    }



    .empresa-thumb i {

        font-size:36px;

    }

}



@media(max-width:480px){

    .jornada-img video {

        height:130px;

        min-height:0;

    }



    .empresas-nav {

        top:47%;

    }



    .empresas-strip {

        padding:4px 34px 12px;

    }



    .empresa-card {

        flex-basis:180px;

        min-width:180px;

        height:244px;

    }



    .empresa-info h4 {

        font-size:16px;

    }

}

/* ===============================
   OVERRIDE FINAL - NOSSA HISTORIA
================================ */

.jornada {

    padding:20px 0 !important;

}



.jornada .container:first-child {

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:stretch !important;

    gap:14px !important;

}



.jornada-text {

    max-height:220px !important;

    overflow:auto;

    padding-right:4px;

}



.jornada-text h2 {

    margin-top:8px !important;

    margin-bottom:10px;

    font-size:clamp(22px,2.1vw,32px) !important;

    line-height:1.15;

}



.jornada-text p {

    font-size:14px !important;

    line-height:1.35 !important;

    margin-bottom:8px !important;

}



.jornada-img {

    padding:6px !important;

    border-width:1px !important;

    border-radius:20px !important;

}



.jornada-img img,
.jornada-img video {

    height:220px !important;

    min-height:220px !important;

    max-height:220px !important;

    border-radius:14px !important;

    object-fit:cover;

}



@media(max-width:1024px){

    .jornada {

        padding:18px 0 !important;

    }



    .jornada-text {

        max-height:200px !important;

    }



    .jornada-img img,
    .jornada-img video {

        height:200px !important;

        min-height:200px !important;

        max-height:200px !important;

    }

}



@media(max-width:768px){

    .jornada .container:first-child {

        grid-template-columns:1fr;

    }



    .jornada-text {

        max-height:180px !important;

    }



    .jornada-img img,
    .jornada-img video {

        height:180px !important;

        min-height:180px !important;

        max-height:180px !important;

    }

}



@media(max-width:480px){

    .jornada-text {

        max-height:160px !important;

    }



    .jornada-img img,
    .jornada-img video {

        height:160px !important;

        min-height:160px !important;

        max-height:160px !important;

    }

}

/* ===============================
   OVERRIDE FINAL V4 - VIDEO QUADRADO
================================ */

.jornada-img {

    width:min(320px,100%) !important;

    height:min(320px,100%) !important;

    margin:0 auto !important;

    aspect-ratio:1 / 1;

}



.jornada-img img,
.jornada-img video {

    width:100% !important;

    height:100% !important;

    min-height:0 !important;

    max-height:none !important;

    aspect-ratio:1 / 1;

    object-fit:cover;

}



.jornada-text h2 {

    font-size:clamp(26px,2.6vw,42px) !important;

    font-weight:700;

    letter-spacing:.2px;

    color:var(--marrom);

    text-shadow:0 2px 10px rgba(0,0,0,.08);

    border-left:4px solid var(--dourado);

    padding-left:12px;

}



@media(max-width:1024px){

    .jornada-img {

        width:min(280px,100%) !important;

        height:min(280px,100%) !important;

    }



    .jornada-text h2 {

        font-size:clamp(24px,3vw,34px) !important;

    }

}



@media(max-width:768px){

    .jornada-img {

        width:min(240px,100%) !important;

        height:min(240px,100%) !important;

    }



    .jornada-text h2 {

        font-size:28px !important;

    }

}



@media(max-width:480px){

    .jornada-img {

        width:min(200px,100%) !important;

        height:min(200px,100%) !important;

    }



    .jornada-text h2 {

        font-size:24px !important;

        padding-left:10px;

    }

}

/* ===============================
   OVERRIDE FINAL V6 - AJUSTE REAL
================================ */

.jornada {

    min-height:auto !important;

    padding:44px 0 !important;

}



.jornada .container:first-child {

    grid-template-columns:430px minmax(0,1fr) !important;

    align-items:flex-start !important;

    gap:0 !important;

}



.jornada-img {

    width:min(430px,100%) !important;

    height:min(430px,100%) !important;

    margin:0 0 0 -18px !important;

}



.jornada-text {

    max-height:none !important;

    overflow:visible !important;

    padding-right:0 !important;

    margin-top:0 !important;

}



.jornada-text h2 {

    font-size:clamp(30px,2.8vw,46px) !important;

    margin-top:6px !important;

    margin-bottom:14px !important;

}



.jornada-text p {

    font-size:17px !important;

    line-height:1.58 !important;

    margin-bottom:12px !important;

}



@media(max-width:1024px){

    .jornada {

        padding:36px 0 !important;

    }



    .jornada .container:first-child {

        grid-template-columns:350px minmax(0,1fr) !important;

        gap:2px !important;

    }



    .jornada-img {

        width:min(350px,100%) !important;

        height:min(350px,100%) !important;

        margin:0 0 0 -8px !important;

    }



    .jornada-text h2 {

        font-size:clamp(26px,3.2vw,36px) !important;

    }



    .jornada-text p {

        font-size:16px !important;

        line-height:1.54 !important;

    }

}



@media(max-width:768px){

    .jornada .container:first-child {

        grid-template-columns:1fr !important;

        gap:18px !important;

    }



    .jornada-img {

        width:min(280px,100%) !important;

        height:min(280px,100%) !important;

        margin:0 auto !important;

    }



    .jornada-text h2 {

        font-size:30px !important;

    }



    .jornada-text p {

        font-size:15px !important;

        line-height:1.5 !important;

    }

}



@media(max-width:480px){

    .jornada {

        padding:28px 0 !important;

    }



    .jornada-img {

        width:min(230px,100%) !important;

        height:min(230px,100%) !important;

    }



    .jornada-text h2 {

        font-size:24px !important;

    }



    .jornada-text p {

        font-size:14px !important;

        line-height:1.46 !important;

    }

}



.form-status.success {

    color:#1f7a3e;

    font-weight:600;

}

/* ===============================
   RESPONSIVIDADE CONSOLIDADA
================================ */

@media(max-width:1024px){

    html,
    body {

        width:100%;

        overflow-x:hidden;

    }

    .container {

        width:92%;

    }

    header .container {

        height:82px;

    }

    section,
    .qualidade,
    .jornada,
    .processo,
    .catalogo,
    .avaliacoes,
    .contato {

        min-height:auto !important;

        padding:56px 0 !important;

        display:block !important;

    }

    .hero {

        min-height:100svh;

        height:auto;

        padding-top:112px !important;

        padding-bottom:56px !important;

    }

    .hero-content {

        max-width:760px;

    }

    .hero h1 {

        font-size:clamp(42px,7vw,64px) !important;

    }

    .hero h1 span {

        margin-top:14px;

        font-size:22px !important;

        letter-spacing:6px !important;

    }

    .hero p {

        margin:20px auto 24px !important;

        max-width:62ch;

        font-size:16px !important;

        line-height:1.6 !important;

    }

    .hero-buttons {

        width:100%;

        flex-direction:column;

        gap:12px !important;

    }

    .btn,
    .btn-outline {

        width:100%;

        max-width:340px;

        margin:0 auto;

    }

    .qualidade-grid,
    .catalog-grid,
    .reviews {

        grid-template-columns:repeat(2,minmax(0,1fr)) !important;

        gap:18px !important;

    }

    .jornada .container:first-child,
    .contato .container {

        grid-template-columns:1fr !important;

        gap:24px !important;

    }

    .jornada-text {

        height:auto !important;

        max-height:none !important;

        overflow:visible !important;

        margin-left:0 !important;

    }

    .jornada-img {

        width:100% !important;

        height:auto !important;

        margin:0 !important;

        padding:8px !important;

    }

    .jornada-img::before {

        content:none !important;

    }

    .jornada-img img,
    .jornada-img video {

        width:100% !important;

        height:auto !important;

        min-height:0 !important;

        max-height:none !important;

        aspect-ratio:16 / 9;

        object-fit:cover;

        border-radius:18px;

    }

    .timeline::before {

        display:none;

    }

    .timeline-items {

        flex-direction:column;

        gap:24px !important;

    }

    .timeline-item,
    .processo .timeline-item {

        width:100% !important;

    }

    .produto-img {

        height:220px !important;

    }

    .produto-info {

        padding:20px !important;

    }

    .contato-form,
    .contato-info {

        padding:24px !important;

    }

    .footer-grid {

        grid-template-columns:repeat(2,minmax(0,1fr)) !important;

        gap:24px;

    }

    .mapa iframe {

        height:230px !important;

    }
}

@media(max-width:768px){

    .container {

        width:94%;

    }

    header .container {

        height:74px;

    }

    nav {

        top:74px;

        padding:18px 16px;

    }

    section,
    .qualidade,
    .jornada,
    .processo,
    .catalogo,
    .avaliacoes,
    .contato {

        padding:44px 0 !important;

    }

    .hero {

        padding-top:96px !important;

        padding-bottom:44px !important;

    }

    .hero h1 {

        font-size:clamp(34px,9vw,46px) !important;

    }

    .hero h1 span {

        font-size:16px !important;

        letter-spacing:4px !important;

    }

    .hero p {

        font-size:14.5px !important;

        line-height:1.55 !important;

    }

    .qualidade-grid,
    .catalog-grid,
    .reviews,
    .footer-grid {

        grid-template-columns:1fr !important;

    }

    .produto-img {

        height:205px !important;

    }

    .produto-info h3 {

        font-size:23px !important;

    }

    .contato-form,
    .contato-info {

        padding:18px !important;

    }

    .info {

        gap:12px;

        align-items:flex-start;

    }

    .empresa-card {

        flex-basis:200px;

        min-width:200px;

        height:264px;

    }

    .whatsapp-float {

        width:54px;

        height:54px;

        font-size:27px;

        right:16px;

        bottom:16px;

    }

    #topButton {

        right:16px;

        bottom:84px;

    }
}

@media(max-width:480px){

    .container {

        width:95%;

    }

    section,
    .qualidade,
    .jornada,
    .processo,
    .catalogo,
    .avaliacoes,
    .contato {

        padding:34px 0 !important;

    }

    .hero {

        padding-top:90px !important;

        padding-bottom:38px !important;

    }

    .hero h1 {

        font-size:clamp(30px,10vw,38px) !important;

    }

    .hero h1 span {

        font-size:14px !important;

        letter-spacing:3px !important;

    }

    .hero p {

        font-size:14px !important;

        margin:14px auto 18px !important;

    }

    .btn,
    .btn-outline {

        max-width:280px;

        font-size:14px;

        padding:12px 14px;

    }

    .timeline-circle {

        width:54px;

        height:54px;

        font-size:18px;

    }

    .produto-img {

        height:180px !important;

    }

    .produto-info {

        padding:14px !important;

    }

    .produto-info h3 {

        font-size:20px !important;

    }

    .mapa iframe {

        height:200px !important;

    }

    form input,
    form textarea,
    form button {

        font-size:14px;

        padding:12px;

    }
}



.empresas-nav-btn:disabled {

    opacity:.35;

    cursor:not-allowed;

    box-shadow:0 4px 12px rgba(0,0,0,.05);

    transform:none;

}