/* ============================================
   OFICINA MUDA - STYLESHEET
   ============================================ */

/* --- VARIABLES --- */
:root {
    --color-dark:#000;
    --color-dark-green: #E8B4A0;
    --color-forest: #3a4f3a;
    --color-light-green: #4a6741;
    --color-warm-yellow: #f5c842;
    --color-warm-orange: #e8943a;
    --color-warm-pink: #e8727a;
    --color-cream: #f9f6f1;
    --color-text-dark: #1a1a1a;
    --color-text-muted: #6c757d;
    --color-white: #ffffff;
    --font-color-foot:#57595B;
    --font-heading: 'Manrope', sans-serif;
    --font-body: 'Manrope', sans-serif;
    --bg-footer:#D3D5CF;
    --default-font-size:1.2rem;
    --default-font-size-mobile:1.2rem;
    --section-title-font:2rem;
    --section-title-font-alt:1.8rem;
    --section-title-font-alt-mobile:1.6rem;
    --section-title-font-mobile:1.6rem;
    --subtexto-font-default:1rem;
    --subtexto-font-default-mobile:.9rem;
    --default-font-size-boxes:1.25rem;
    --default-font-size-store-name:1.2rem;
    --default-font-size-store-name-mobile:1rem;
    --default-font-size-footer:.9rem;
    --default-font-size-footer-mobile:.8rem;
    --store-address-mobile:.8rem;
    --contato-footer-font-size:.8rem;
    --titulo-novos-ciclos:4.9rem;
    --titulo-novos-ciclos-mobile:2rem;
    --titulo-text-boxes:1.75rem;
    --tenyears-text:2rem;
    --impact-distac-text:1.875rem;
    --impact-distac-text-mobile:1.3rem;
    --impacto-text-font-mobile:1rem;
    --impacto-title-font-size:2.3rem;
    --impacto-title-font-size-desktop1366:2.1rem;
    --impacto-title-font-size-mobile:2rem;
    --stat-number-font-size:1.7rem;
    --stat-number-font-size-mobile:1.2rem;
    --onemillion-text:4rem;
    --onemillion-text-mobile:2.8rem;
    --statuspatchwork-text:2.8rem;
    --retalhos-text:2.3rem;
    --data-retalhos-font-size:1.7rem;
    --data-retalhos-font-size-mobile:1.5rem;
}

/* --- GLOBAL --- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.manrope {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}
html{
    font-size: 100%;
    margin:0!important;
}
html a, a:hover{
    text-decoration: none!important;
}
strong{
    font-weight: 730!important;
}

body {
    font-family: var(--font-body);
    font-size:var(--default-font-size);
    color: var(--color-text-dark);
    line-height: 1.5rem;
    font-weight: 200;
    overflow-x: hidden;
    margin:0!important;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
}

img {
    max-width: 100%;
    height: auto;
}
    
.espaca-section{
    margin-top: 40px;
}
.header-container{
    height:100vh;
    overflow:hidden;
}
/* --- LOGO HEADER --- */
.logo-header {
    padding: 1.5rem 0;
    height:200px;
}
.logo-header img{
    width:auto;
    height:92px;
}

.logo-container {
    display: flex;
    justify-content: center;
    height: 160px;
    align-items: center;
}

/*.logo-subtitle {
    display: block;
    font-family: var(--font-body);
    font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 6px;
    color: var(--color-text-dark);
    margin-bottom: -5px;
}

.logo-title {
    font-family: var(--font-heading);
    font-size: 2.8rem;
    font-weight: 700;
    color: var(--color-dark-green);
    letter-spacing: 8px;
    margin: 0;
}*/

/* --- HERO SECTION --- */
.hero-section {
    width: 100%;
    overflow: hidden;
    background-image: url('img/DSC01435.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 800px; /* ajuste conforme necessário */
    /*border-radius: 8px;*/
}

/*.hero-img {
    width: 100%;
    height: 70vh;
    min-height: 400px;
    object-fit: cover;
    display: block;
}*/

/* --- INTRO SECTION --- */
.intro-section {
    background: var(--color-white);
}

.intro-text {
    color: var(--color-text-dark);
    line-height: 1.3;
}

.intro-headline {
    font-family: var(--font-body);
    font-size: var(--section-title-font);
    font-weight: 700;
    letter-spacing: 0px;
    color: var(--color-text-dark);
}

/* --- SECTION TITLES --- */
.section-title-dark {
    font-family: var(--font-heading);
    font-size: var(--section-title-font);
    font-weight: 700;
    color: var(--color-text-dark);
    line-height: 1.2;
}

.alinha-texto-direita{
    text-align:right;
    padding-right:70px;
}


.alinha-texto-direita p{
   /*width:90%;*/
   display:inline-block;
   text-align:right;
}

/* --- NOVOS CICLOS --- */
.novos-ciclos-section {
    background: var(--color-white);
}

.novos-ciclos-background {
    position: relative;
    width: 90%;
    margin:0 auto;
    min-height: 500px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url('img/DSC01538.jpg');
}

.novos-ciclos-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(45, 58, 46, 0.15);
    z-index: 1;
}

.novos-ciclos-background .row {
    position: relative;
    z-index: 2;
    height:660px;
}

.novos-ciclos-content {
    color: var(--color-white);
    min-height: 500px;
    display:flex;
    align-items:center;
    justify-content: center;
    text-align: center;
    /*margin-left:30px;*/
    height:100%;
}

.novos-ciclos-title {
    font-family: var(--font-body);
    font-size: var(--titulo-novos-ciclos);
    font-weight: 700;
    color: var(--color-white);
    line-height: 1.1;
    text-shadow: 2px 2px 8px rgba(0,0,0,0.3);
    margin: 0;
}

.novos-ciclos-text {
    color: var(--color-white);
    text-shadow: 1px 1px 4px rgba(0,0,0,0.3);
    width: 545px;
    font-weight: 200;
    max-width: 100%;
    min-height: 500px;
    display:flex;
    align-items:center;
    justify-content: center;
    margin: 0 auto;
    height:100%;
    padding-top:5%;
}

.novos-ciclos-text p {
    /*font-size: var(--default-font-size-boxes);*/
    font-size: var(--default-font-size);
    line-height: 1.5;
    margin-bottom: 1.4rem;
    text-align: right;
    align-items:center;
    /*margin-left:25%;*/
    opacity: 0.95;
}

.novos-ciclos-text strong {
    font-weight: 700;
}

/* --- CADA VISITA --- */
.text-title-lojas{
    padding-left:15%;
    font-size:var(--subtexto-font-default);
    line-height: 1.5rem;
    margin-bottom: 0.75rem;
}
.cada-visita-section {
    background: var(--color-white);
    /*height:100vh;*/
    min-height:590px;
    max-height:600px;

}
.container-lojas{
    min-height:590px;
    max-height:600px;
    margin:0 auto;

}
#carrosselMuda {
    width: 100%;
    min-width: 555px;
    height: auto;
    aspect-ratio: 555 / 595;
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    overflow: hidden;
    position: relative;
}

@media (min-width: 1400px) {
    #carrosselMuda {
        max-width: 800px;
        aspect-ratio: 800 / 600;
    }
    .ajusta-padding-texto-sub{
        padding:0 10%;
    }
}

@media (max-width: 1366px) {
    .ajusta-padding-texto-sub{
        padding:0 20%;
    }
   .impacto-title{
        font-size: var(--impacto-title-font-size-desktop1366);
        font-weight: 700;
        margin-bottom:1.5rem!important;

   }
   .cert-badge img{
    width: auto;
    height: 90px!important;
    /*border-radius: 50%;
    display: flex;
    padding:0;
    margin-right:20px;
    align-items: c1nter;
    justify-content: center;*/

}
    }

.cada-visita-section .carousel-inner,
.cada-visita-section .carousel-item {
    height: 100%;
}

.cada-visita-section .carousel-item img {
    width: 100%;
    height: 100%;
    margin: 0 !important;
    object-fit: cover;
    object-position: center;
}

.cada-visita-col-texto {
    min-height: 595px;
    max-height: 917px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.cada-visita-titulo{
    display:block;
    padding-top:0;
    margin-top:0;

}
.cada-visita-titulo h2{
    font-size: var(--section-title-font);
}
/*.bloco-enderecos-lojas{
    margin-top:10px;
}*/

.store-item {
    margin-bottom: .5rem;
   /* padding-bottom: 1rem;
    border-bottom: 1px solid #eee;*/
    text-align: right;
}

.store-item:last-child {
    border-bottom: none;
    padding-bottom: none;
}

.store-name {
    font-family: var(--font-body);
    font-weight: 700;
    font-size: var(--default-font-size-store-name);
    margin-bottom: 0.2rem;
    color: var(--color-text-dark);
}

.store-address {
    font-size: 1rem;
    color: var(--color-text-dark);
    margin-bottom: 0.3rem;
}

.store-icons {
    display: flex;
    gap: 0.5rem;
    font-size: 1rem; 
    justify-content: flex-end;
}


/* --- MARCAS PARCEIRAS --- */
.marcas-section {
    background: var(--color-white);
}

.marca-card {
    border-radius: 0;
    overflow: hidden;
    position: relative;
    height: 300px;
}

.marca-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.marca-card:hover .marca-img {
    transform: scale(1.05);
}

.marca-label {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(0,0,0,0.7));
    color: white;
    padding: 1.5rem 0.5rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.marca-label img{
    width:auto;
    height:20px;
    margin-bottom:10px;
}

.marca-card-green {
    background: #A0B086;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 300px;
}

.marca-green-content {
    text-align: center;
    color: var(--color-dark-green);
}

.marca-green-text {
    display: block;
    margin-top:15px;
    margin-bottom:15px;
    /*font-family: var(--font-heading);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;*/
}

.marca-green-text img{
    width:120px;
    height:auto;
    margin-bottom:10px;
}

.marca-green-sub {
    display: block;
    font-size: 0.8rem;
    margin-top: 0.5rem;
    font-style: italic;
    color:#000;
}

/* --- PROCESSO SECTION --- */
.processo-section {
    background: var(--color-white);
}
.afasta-texto-esquerda{
    padding-left:100px;
}
.afasta-texto-direita{
    padding-left:100px;
}

.processo-img {
    height: 488px;
    object-fit: cover;
}

.processo-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.video-badge {
    background: rgba(255,255,255,0.9);
    padding: 0.5rem 1.5rem;
    border-radius: 30px;
    font-size: 0.85rem;
    color: var(--color-text-dark);
    font-weight: 500;
}

/* --- COMO ACONTECE --- */
.como-acontece-section {
    background: var(--color-white);
}
.elimina-entrelinhas-acontece{
    margin-bottom:.1rem;
}
.margin-bottom-padrao{
    padding-bottom:20px;
}

/* --- CIRCULAR & UPCYCLING --- */
.circular-upcycling-section {
    background: var(--color-white);
}
.circular-bg{
    display:flex;
    width: 50%;
    height: 740px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: linear-gradient(
    color-mix(in srgb, var(--color-dark-green) 20%, transparent)), url('img/_MG_8767.jpg');
    color: white;
    align-items: center;
    

}
.upcycling-bg{
    display:flex;
    width: 50%;
    height: 740px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: linear-gradient(
    color-mix(in srgb, var(--color-dark-green) 20%, transparent)), url('img/33-1.jpg');
    color: white;
    align-items: center;

}
.circular-img,
.upcycling-img {
    height: 450px;
    object-fit: cover;
}

.circular-overlay,
.upcycling-overlay,.oca-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding:100px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}
.mudalab-overlay{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding:100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}

.circular-bg:hover .circular-overlay,
.upcycling-bg:hover .upcycling-overlay,
.espaco-oca:hover .oca-overlay,
.espaco-lab:hover .mudalab-overlay {
    opacity: 1;
}

.circular-overlay {
    background: linear-gradient(135deg, rgba(45, 58, 46, 0.5) 0%, rgba(45, 58, 46, 0.6) 100%);
    color: white;
}

.upcycling-overlay {
    background: linear-gradient(135deg, rgba(45, 58, 46, 0.5) 0%, rgba(45, 58, 46, 0.6) 100%);
    color: white;
}
.oca-overlay {
    background: linear-gradient(135deg, rgba(45, 58, 46, 0.5) 0%, rgba(45, 58, 46, 0.6) 100%);
    color: white;
}
.mudalab-overlay {
    background: linear-gradient(135deg, rgba(45, 58, 46, 0.5) 0%, rgba(45, 58, 46, 0.6) 100%);
    color: white;
}

.circular-title,
.upcycling-title {
    font-family: var(--font-body);
    font-size: var(--section-title-font-alt);
    font-weight: 700;
    margin-bottom: 1rem;
}

.circular-text,
.upcycling-text {
    line-height: 1.7;
    margin-bottom: 0.8rem;
    max-width:400px;
}

/* --- ECOSSISTEMA --- */
.container-ecossistema{
    padding:0 20px 0 20px;
}
.ecossistema-section {
    background: var(--color-white);
}

.ecossistema-img-wrapper {
    overflow: hidden;
    border-radius: 0;
    position: relative;
}

.ecossistema-img {
    max-height: 740px;
    object-fit: cover;
    width: 100%;
    transition: transform 0.5s ease-in-out;
}

.ecossistema-img-wrapper:hover .ecossistema-img {
    transform: scale(1.05);
}

.ecossistema-badge {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -40%);
    background: rgba(45, 58, 46, 0.9);
    color: white;
    padding: 1.2rem 1.5rem;
    border-radius: 12px;
    max-width: 400px;
    opacity: 0;
    transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
    z-index: 5;
    text-align: center;
}

.ecossistema-img-wrapper:hover .ecossistema-badge,
.ecossistema-img-wrapper.overlay-visible .ecossistema-badge {
    opacity: 1;
    transform: translate(-50%, -50%);
}

/* Esconder os botões do carrossel por padrão e exibir apenas ao passar o mouse */
#ecossistemaCarousel .carousel-control-prev,
#ecossistemaCarousel .carousel-control-next {
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

#ecossistemaCarousel:hover .carousel-control-prev,
#ecossistemaCarousel:hover .carousel-control-next {
    opacity: 0.7;
}

/* --- IMPACTO --- */
.impacto-section {
    /*position: relative;*/
    display:flex;
    width: 100%;
    min-height: 580px;
    height: auto;
    padding: 60px 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: linear-gradient(
    color-mix(in srgb, var(--color-dark-green) 20%, transparent)), url('img/arvores.jpg');
    color: white;
    align-items: center;
    /*margin-bottom:100px;*/
}
.container-impacto-direito{
    padding:80px 30px 10px 90px;
}
.container-impacto-esquerdo{
    padding:30px 30px 10px 60px;
}

.impacto-title {
    font-family: var(--font-heading);
    font-size: var(--impacto-title-font-size);
    font-weight: 700;
    margin-bottom:1.5rem!important;
}

.impacto-text {
    /*font-size: 0.9rem;
    opacity: 0.85;*/
    line-height: 1.3;
    margin-bottom:3rem;
}
.impacto-text-distac{
    font-size:var(--impact-distac-text);
    line-height: 2.5rem;
    margin-bottom:0;
}

.impacto-number {
    font-family: var(--font-body);
    font-size: var(--onemillion-text);
    line-height: 5rem;
    font-weight: 700;
    margin: 0.5rem 0 0;
}

.impacto-subtitle {
    font-size: var(--tenyears-text);
}

.impacto-link {
    font-size: var(--default-font-size);
    margin-bottom:1.8rem!important;
}

.impacto-link a {
    color: white;
    text-decoration: underline;
    
}

.impacto-text-small {
    font-size: var(--default-font-size);
    margin-bottom: 1.2rem!important;
}

.cert-badge img{
    width: auto;
    height: 137px;
    /*border-radius: 50%;
    display: flex;*/
    padding:0;
    margin-right:20px;
    align-items: center;
    justify-content: center;

}

.cert-b {
    background: transparent;
    font-size: 1.5rem;
    font-family: var(--font-heading);
}

.cert-reciclo {
    flex-direction: column;
    font-size: 0.6rem;
    gap: 2px;
}

.cert-reciclo i {
    font-size: 1.2rem;
}

.cert-bbb {
    font-size: 0.7rem;
    letter-spacing: 1px;
}

.sdg-icon img{
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    /*border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 700;
    color: white;*/
}

/*.sdg-1 { background: #e5243b; }
.sdg-5 { background: #ff3a21; }
.sdg-8 { background: #a21942; }
.sdg-9 { background: #fd6925; }
.sdg-10 { background: #dd1367; }
.sdg-12 { background: #bf8b2e; }
.sdg-13 { background: #3f7e44; }
.sdg-17 { background: #19486a; }*/

/* --- RETALHOS --- */
.retalhos-section {
    display: flex;
    width: 100%;
    margin: 0 auto;
    min-height: 580px;
    height: auto;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('img/prancheta1.jpg');
    color: white;
    align-items: center;
    margin-top: 50px;
    padding: 60px 0;
}
.data-retalhos{
    text-align: left;
    font-size: var(--data-retalhos-font-size);
    font-weight: 400;
    color: white;
    margin-bottom:1.7rem;
}
.container-retalhos-esquerdo{
    padding:0 0 0 30px;
}
.container-retalhos-direito{
    padding:100px 0 0 200px;
}

.retalhos-section-title {
    color: white;
    font-size: var(--impacto-title-font-size);
    font-weight: 300;
}

.retalhos-section-title strong {
    font-weight: 700;
}

.retalhos-section p {
    /*font-size: 1rem;*/
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.9);
}

.retalhos-section p strong {
    color: white;
}

.retalhos-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem 1.2rem;
    background: transparent;
    padding: 0;
}

.retalhos-stats .stat-item {
    text-align: left;
    margin-bottom: 0;
}

.retalhos-stats .stat-header {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    margin-bottom: 0.2rem;
}
.stat-header img {
    margin-bottom: 0;
}

.retalhos-stats .stat-number {
    font-family: var(--font-body);
    font-size: var(--stat-number-font-size);
    font-weight: 700;
    color: white;
    margin-bottom: 0;
    line-height: 1.1;
}

.retalhos-stats .stat-icon-custom {
    display: inline-flex;
    align-items: center;
    color: white;
}

.retalhos-stats .stat-label {
    font-size:var(--subtexto-font-default-mobile);
    color: rgba(255, 255, 255, 0.8);
    margin: 0;
}
.icone-text-retalhos{
    width: 40px;
}
.sdg-icons{
    margin-top:20px;
}

.sdg-icons-retalhos .sdg-icon {
    width: 32px;
    height: 32px;
}

.sdg-icons-retalhos .sdg-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* --- ESPAÇOS --- */
.espacos-section {
    background: var(--color-white);
}
.logo-oca{
    width:150px;
    margin-bottom:30px;
}

.logo-muda-lab{
    width:250px;
    margin-bottom:30px;
}
.links-oca{
    margin-bottom: 40px;
}
.links-oca a{
    text-decoration: none;
    font-weight: 700;
    color: #fff;
    margin-bottom:20px;
}
.links-oca a:hover{
    text-decoration: none;
    font-weight: 700;
    color: #fff;

}
.espaco-oca{
    display:flex;
    width: 50%;
    height: 640px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: linear-gradient(
    color-mix(in srgb, var(--color-dark) 20%, transparent)), url('img/DSC00939.jpg');
    color: white;
    align-items: center;
    
}
.espaco-lab{
    display:flex;
    width: 50%;
    height: 640px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: linear-gradient(
    color-mix(in srgb, var(--color-dark) 20%, transparent)), url('img/muda-lab.jpg');
    color: white;
    align-items: center;
  
}
.espacos-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding:100px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    opacity: 0;
    align-items:center;
    transition: opacity 0.4s ease-in-out;
}

.espaco-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    height: 400px;
}

.espaco-img {
    height: 100%;
    object-fit: cover;
}

.espaco-overlay-oca {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(45, 58, 46, 0.2) 0%, rgba(45, 58, 46, 0.85) 100%);
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: white;
}

.oca-logo {
    margin-bottom: 1rem;
}

.oca-feira {
    font-size: 0.7rem;
    letter-spacing: 3px;
    font-weight: 500;
}

.oca-name {
    font-family: var(--font-heading);
    font-size: 3rem;
    font-weight: 700;
    margin: 0;
    line-height: 1;
}

.oca-text {
    font-size: 0.85rem;
    opacity: 0.9;
    line-height: 1.6;
    margin-bottom: 1rem;
}

.oca-link {
    color: white;
    font-size: 0.85rem;
    text-decoration: none;
    display: block;
    margin-bottom: 0.3rem;
    transition: opacity 0.3s;
}

.oca-link:hover {
    opacity: 0.7;
    text-decoration: underline;
}

.espaco-overlay-lab {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(45, 58, 46, 0.3) 0%, rgba(45, 58, 46, 0.85) 100%);
    padding: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: white;
}

.lab-title {
    font-family: var(--font-body);
    font-size: 2.5rem;
    font-weight: 700;
    letter-spacing: 4px;
    margin-bottom: 0.5rem;
}

.lab-bracket {
    font-weight: 300;
    opacity: 0.7;
}

.lab-breve {
    font-size: 0.75rem;
    letter-spacing: 3px;
    font-weight: 600;
    margin-bottom: 1rem;
    opacity: 0.8;
}

.lab-text {
    font-size: 0.85rem;
    opacity: 0.85;
    line-height: 1.6;
}

/* --- REDES --- */
.redes-section {
    background: var(--color-white);
    margin-bottom:60px;
}

.rede-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    height: 450px;
    width: 100%;
    max-width: 350px;
    margin: 0 auto;
    cursor: pointer;
}

.rede-img {
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.rede-card:hover .rede-img {
    transform: scale(1.05);
}

.rede-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(45, 58, 46, 0.8);
    padding: 1.5rem;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.rede-card:hover .rede-overlay,
.rede-card.overlay-visible .rede-overlay {
    opacity: 1;
}

.rede-overlay span {
    font-size: 0.95rem;
}

/* --- FOOTER --- */
.footer-section {
    background: var(--bg-footer);
    color:var(--font-color-foot)!important;
}

.footer-title {
    font-family: var(--font-body);
    font-size: var(--default-font-size-footer);
    font-weight: 700;
    letter-spacing: -2%;
    margin-bottom: 1rem;
}

.footer-social a {
    color: var(--color-text-dark);
    transition: color 0.3s;
}

.footer-social a:hover {
    color: var(--color-light-green);
}

  /*.footer-cert-badge {
  background: var(--color-white);
    padding: 0.4rem 0;
    border-radius: 20px;
    font-size: 0.75rem;
    color: var(--color-text-dark);
    border: 1px solid #ddd;
    
}*/
.footer-image-size1{
    height: 50px;
    margin-bottom:16px;
    
}
.footer-image-size2{
    height: 80px;
    
}
.footer-social-size a img{
    height: 30px;
    
}

.footer-contact {
    font-size: var(--contato-footer-font-size);
    color: var(--font-color-foot);
    font-weight: 700;
    margin-bottom: 40px!important;
    margin-top:-.7rem;
}
.email-footer a{
    text-decoration: none!important;
    
}
.email-footer a:hover{
    text-decoration: none!important;
}

/* --- RESPONSIVE --- */

@media (max-width: 991px) {
    .stat-label {
    margin-top: -8px !important;
}
    .controla-viuva{
        padding:0 30px;
    }
    .icone-text-retalhos{
    width: 25px;
}
    .impacto-section {
    /*position: relative;
    display:flex;
    width: 100%;
    min-height: 580px;
    height: auto;
    padding: 60px 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;*/
    background-image: linear-gradient(
    color-mix(in srgb, var(--color-dark-green) 3%, transparent)), url('img/impacto_bg_mobile.jpg');
    /*color: white;
    align-items: center;
    margin-bottom:100px;*/
}
.retalhos-section {
    /*display: flex;
    width: 100%;
    margin: 0 auto;
    min-height: 580px;
    height: auto;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;*/
    background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url('img/retalhos_bg_mobile.jpg');
    /*color: white;
    align-items: center;
    margin-top: 50px;
    padding: 60px 0;*/
}

    .store-address {
    font-size: var(--store-address-mobile);
}
   .text-black{
        text-align: center !important;
        font-size: var(--subtexto-font-default-mobile);
        padding:0 30px;
    }
    .cada-visita-titulo h2{
    font-size: var(--section-title-font-mobile);
}
       .rede-card {
        margin-bottom: 20px;
    }
    #carrosselMuda {
    height: 100%;

}

    .impacto-link, .impacto-text-small {
        font-size: var(--subtexto-font-default-mobile);
/*padding:0 20px;*/
}
    .impacto-text{
        font-size: var(--subtexto-font-default-mobile);
        /*font-size: var(--impacto-text-font-mobile);*/
        margin-bottom:0;
        padding:0 30px;
    }
    .impacto-text-distac{
    font-size:var(--impact-distac-text-mobile);
    line-height: 1.5rem;
}
.impacto-subtitle {
    font-size: var(--subtexto-font-default-mobile);
    /*font-size: var(--impacto-text-font-mobile);*/
}

    .store-name {
    font-size: var(--default-font-size-store-name-mobile);

}
    .text-title-lojas{
    padding:0 20px 0 20px ;
    font-size:var(--subtexto-font-default-mobile);
    line-height: 1.5rem;
}
    .logo-header {
    height:150px;
}
.logo-header img{
    width:auto;
    height:82px;
}
    .intro-headline {
    font-size: var(--section-title-font-mobile);
    margin-top:0!important;
}
.logo-container {
    height: 100px;
}
    .intro-text {
    font-size:var(--subtexto-font-default-mobile);
}

    .imagens-footer{
        display:flex;
        justify-content:center;
        align-items:center;
    }
    .footer-image-size1{
    height: 60px;
    margin:16px 10px 0 10px;
    
}
.footer-image-size2{
    height: 90px;
    margin:0 10px;
    
}
.footer-title {
    margin-top: .5rem;
    margin-bottom:.4rem;
    align-items:center;
}

.links-oca {
    text-align:center;
}
.circular-text,
.upcycling-text {
 text-align:center;
 font-size:var(--subtexto-font-default-mobile);
}
    .mudalab-overlay, .oca-overlay {
    padding: 40px;
}
.mudalab-overlay img{
    margin:0 auto;
    margin-bottom:20px;
}
.oca-overlay img{
    margin:0 auto;
    margin-bottom:20px;
}
        .retalhos-stats {
        margin: 0 auto;
        width:100% !important;
    }
    .data-retalhos {
    text-align: center;
    margin-top:2rem;
    font-size:var(--data-retalhos-font-size-mobile);
    margin-bottom: 2rem;
    text-decoration: underline;
    text-underline-offset: 6px;
    text-decoration-thickness: 1px;
}
    .container-retalhos-direito {
    padding: 0;
}
    .container-retalhos-esquerdo {
    padding: 0;
}


    .container-retalhos-esquerdo {
    padding: 0;
    }
    .container-impacto-direito{
        padding: 0;
    }

    .cert-badge img{
    width: auto;
    height: 70px;
    display: flex;
    margin:0 auto;
    align-items: center;
    justify-content: center;

}
    .impacto-title {
    font-size: var(--impacto-title-font-size-mobile);
}
    .container-impacto-esquerdo {
    padding: 0;
}
    .container-impacto-direito {
    padding: 0;
}
    .container{
        padding-right:0;
    }
        .container-ecossistema {
    padding: 0 20px 0 20px;
}
    .row{
        margin-right:0;
        padding-right: 0;
    }
        .section-title-dark {
        font-size: var(--section-title-font-mobile);
        text-align: center;
        margin-bottom:20px;
    }

    .loja-slide {
        left:0px!important;
    }
    .afasta-texto-esquerda{
    padding-left:20px;
}
.afasta-texto-direita{
    padding-left:20px;
}
    .novos-ciclos-title {
        font-size: var(--titulo-novos-ciclos-mobile);
        margin-top:80px;
    }

    .novos-ciclos-background {
        height: auto !important;
        min-height: 500px;
    }

    .novos-ciclos-background .row {
        height: auto !important;
    }

    .novos-ciclos-content {
        min-height: auto !important;
        height: auto !important;
        padding-top: 50px !important;
        padding-bottom: 20px !important;
    }

    .novos-ciclos-text {
        min-height: auto !important;
        height: auto !important;
        margin: 40 auto 0 auto !important;
        width: 100% !important;
        padding-top: 20px !important;
        padding-bottom: 0 !important;
    }
    

    .novos-ciclos-text p {
        text-align: center !important;
        font-size: var(--subtexto-font-default-mobile);
    }

    .cada-visita-section,
    .container-lojas {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow-x: hidden;
    }

    #carrosselMuda {
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        aspect-ratio: 555 / 595 !important;
        margin: 0 auto !important;
    }

    .cada-visita-col-texto {
        min-height: 0 !important;
        max-height: none !important;
    }

    .container-lojas-background,
    .lojas-slider-viewport {
        height: 350px !important;
    }

    .alinha-texto-direita {
        text-align: center !important;
        padding-right: 15px !important;
        padding-left: 15px !important;
        margin-top: 30px !important;
        margin-right:0 important;
    }


    .alinha-texto-direita p {
        width: 100% !important;
        text-align: center !important;
    }

    .store-item {
        text-align: center !important;
    }

    .store-icons {
        justify-content: center !important;
    }

    .circular-img,
    .upcycling-img {
        height: 350px;
    }

    .impacto-section {
        height: auto !important;
        padding: 60px 20px !important;
        margin-bottom: 50px !important;
        text-align: center;
    }
    .retalhos-sdg-icons{
        justify-content: center;
    }

    .impacto-section .certifications-row,
    .impacto-section .sdg-icons {
        display: flex;
        justify-content: center;
        flex-wrap: nowrap;
    }

    .impacto-number {
        font-size: var(--onemillion-text-mobile);
        margin:0;
    }

    .espaco-card {
        height: 350px;
    }

    .retalhos-section {
        min-height: auto !important;
        margin-top: 50px !important;
        padding: 50px 20px !important;
        text-align: center;
    }
    .retalhos-section p {
    font-size: var(--subtexto-font-default-mobile);
}



    .retalhos-section-title {
        font-size: var(--impacto-title-font-size-mobile);
        margin-bottom:40px;
    }

    .retalhos-stats .stat-item {
        text-align: center;
        width:100%;
    }

    .retalhos-stats .stat-header {
        display: grid;
        grid-template-columns: auto auto;
        align-items: center;
        justify-content: center;
        gap: 6px;
    }

    .retalhos-stats .stat-header img {
        margin-bottom: 0;
    }

    .retalhos-stats .stat-number {
        font-size: var(--stat-number-font-size-mobile) !important;
        white-space: nowrap;
    }

    .sdg-icons-retalhos {
        justify-content: center !important;
    }

    .ecossistema-badge {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        bottom: auto !important;
        right: auto !important;
        transform: translate(-50%, -35%) !important;
        opacity: 0 !important;
        max-width: 85% !important;
        width: 85% !important;
        text-align: center !important;
        background: rgba(45, 58, 46, 0.9) !important;
        transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out !important;
    }

    .ecossistema-img-wrapper:hover .ecossistema-badge {
        opacity: 1 !important;
        transform: translate(-50%, -50%) !important;
    }
}

@media (max-width: 767px) {
        .cada-visita-titulo h2{
    font-size: var(--section-title-font-mobile);
}
    #carrosselMuda {
    height: 100%;

}
    .impacto-link {
        font-size: var(--impacto-text-font-mobile);
/*padding:0 20px;*/
}
    .impacto-number {
        font-size: var(--onemillion-text-mobile);
        margin:0;
    }
    .intro-text {
    font-size:var(--subtexto-font-default-mobile);
}

    .container-retalhos-esquerdo {
    padding: 0;
    }
    .container-impacto-direito{
        padding: 0;
    }

    .impacto-title {
    font-size: var(--impacto-title-font-size-mobile);
}
    .container-impacto-esquerdo {
    padding: 0;
}
    .container-impacto-direito {
    padding: 0;
}
        .container{
        padding-right:0;
    }
        .container-ecossistema {
    padding: 0 20px 0 20px;
}
    .row{
        margin-right:0;
    }
     .loja-slide {
        left:0px!important;
    }
     .afasta-texto-esquerda{
    padding-left:0;
}
.afasta-texto-direita{
    padding-left:20px;
}

    .logo-title {
        font-size: 2rem;
        letter-spacing: 5px;
    }

    .hero-img {
        height: 50vh;
        min-height: 300px;
    }


    .novos-ciclos-overlay {
        padding: 1.5rem;
    }

    .section-title-dark {
        font-size: var(--section-title-font-mobile);
        text-align: center;
        margin-bottom:20px;
    }
    .center-mobile {
        text-align: center !important;
    }

    .circular-bg,
    .upcycling-bg,
    .espaco-oca,
    .espaco-lab {
        width: 100% !important;
        height: 500px !important;
        margin-bottom: 0 !important;
    }

    .circular-img,
    .upcycling-img {
        height: 300px;
    }

    .circular-overlay,
    .upcycling-overlay,
    .espaco-overlay-oca,
    .espaco-overlay-lab,
    .novos-ciclos-overlay {
        padding: 1.5rem !important;
        text-align: center !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .circular-title,
    .upcycling-title {
        font-size: var(--section-title-font-mobile);
    }

    .impacto-title {
        font-size: var(--impacto-title-font-size-mobile);
    }

    .impacto-number {
        font-size: var(--onemillion-text-mobile);
    }

    .espaco-card {
        height: 300px;
    }

    .oca-name {
        font-size: 2rem;
    }

    .lab-title {
        font-size: 1.8rem;
    }

    .stat-number {
        font-size: var(--stat-number-font-size-mobile) !important;
    }

    .rede-card {
        margin-bottom: 20px;
    }
    .espaco-oca {
        margin-top:0;
    }
    .espaco-lab {
        margin-top:0;
    }

    .footer-section {
        text-align: center !important;
    }

    .footer-social {
        justify-content: center !important;
    }

    .footer-image-size {
        text-align: center !important;
    }
}

@media (max-width: 575px) {
    .impacto-number {
        font-size: var(--onemillion-text-mobile);
        margin-top:-5px;
        margin-bottom:-15px;
    }
    .impacto-subtitle{
        font-size: var(--impacto-text-font-mobile);
    }
    .cada-visita-titulo h2{
        font-size: var(--section-title-font-mobile);
    }
    .rede-card {
        margin-bottom: 20px;
    }
    #carrosselMuda {
    height: 100%;

}
    .impacto-link {
 padding:0;
}
        .intro-text {
    font-size:var(--subtexto-font-default-mobile);
}

        .container-retalhos-esquerdo {
    padding: 0;
    }
    .container-impacto-direito{
        padding: 0;
    }

    .cert-badge img{
    width: auto;
    height: 70px;


}

    .impacto-title {
    font-size: var(--impacto-title-font-size-mobile);
}
    .container-impacto-esquerdo {
    padding: 0;
}
    .container-impacto-direito {
    padding: 0;
}
        .container{
        padding-right:0;
    }
        .container-ecossistema {
    padding: 0 20px 0 20px;
}
        .row{
        margin-right:0;
    }
        .section-title-dark {
        font-size: var(--section-title-font-mobile);
        text-align: center;
        margin-bottom:20px;
    }
     .loja-slide {
        left:0px!important;
    }
    .afasta-texto-esquerda{
    padding-left:0;
}
.afasta-texto-direita{
    padding-left:20px;
}
    .novos-ciclos-img {
        height: 280px;
    }

    .processo-img {
        height: 250px;
    }

    .marca-card {
        height: 230px;
    }

    .marca-card-green {
        height: 230px;
    }
}