    :root{
      --green:#16a34a;
      --green-dark:#065f46;
      --bg:#f8fafc;
      --text:#0f172a;
      --muted:#475569;
      --danger:#dc2626;
      --card:#ffffff;
      --line:#e5e7eb;
      --radius:18px;
      --shadow:0 18px 40px rgba(2,6,23,.08);
    }

    *{box-sizing:border-box}

    html{scroll-behavior:smooth}

    body{
      margin:0;
      font-family:'Inter',sans-serif;
      background:var(--bg);
      color:var(--text);
    }

    .container{
      max-width:920px;
      margin:auto;
      padding:60px 22px;
    }

    .center{text-align:center}

    /* HEADER */
    .header{
      background:#fff;
      border-bottom:1px solid var(--line);
      position:sticky;
      top:0;
      z-index:20;
    }

    .header .container{
      padding:18px 22px;
    }

    .logo{
      font-family:'Playfair Display',serif;
      font-size:30px;
      font-weight:700;
      color:var(--green-dark);
      letter-spacing:-0.02em;
    }

    /* TITULOS */
    h1,h2{
      margin:0 0 16px;
      letter-spacing:-0.02em;
    }

    h1{font-size:34px}
    h2{font-size:28px}

    .subtitle{
      color:var(--muted);
      max-width:640px;
      margin:0 auto 26px;
      line-height:1.65;
      font-size:16px;
    }

    /* SEÇÕES */
    section{
      background:transparent;
    }

    section.white{
      background:#fff;
      border-top:1px solid rgba(15,23,42,.06);
      border-bottom:1px solid rgba(15,23,42,.06);
    }

    /* VIDEO */
    .video{
      margin-top:18px;
    }

    .video video{
      width:100%;
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      background:#000;
    }

    /* BOTÕES */
    .btn{
      display:inline-block;
      padding:18px 30px;
      border-radius:14px;
      font-weight:900;
      text-decoration:none;
      border:none;
      cursor:pointer;
      transition:.2s;
      letter-spacing:.2px;
    }

    .primary{
      background:linear-gradient(180deg,#22c55e,#16a34a);
      color:#fff;
      box-shadow:0 14px 30px rgba(22,163,74,.18);
    }

    .primary:hover{
      transform:translateY(-2px) scale(1.02);
      box-shadow:0 18px 34px rgba(22,163,74,.22);
    }

    .big{font-size:18px}

    .note{
      margin-top:14px;
      font-size:13px;
      color:var(--muted);
    }

    /* HISTÓRIA */
    .story{
      max-width:720px;
      margin:18px auto;
      font-size:17px;
      line-height:1.9;
    }

    .story b, .story strong{
      color:var(--danger);
    }

    .images{
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 0;
    margin: 34px 0;
    border-radius: 18px;
    }

    /* esconde scrollbar */
   .images::-webkit-scrollbar{
    display: none;
    }

  /* cada imagem ocupa 100% do box */
  .images .img-box{
  flex: 0 0 100%;
  height: 420px;
  scroll-snap-align: start;
  border-radius: 18px;
  }
 
     .img-box{
      height:170px;
      background:linear-gradient(180deg,#e5e7eb,#f1f5f9);
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:13px;
      color:#64748b;
      box-shadow:0 10px 24px rgba(2,6,23,.06);
      border:1px solid rgba(15,23,42,.06);
    }

    /* CARDS / GRID */
    .grid, .impact-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
      gap:18px;
      margin-top:24px;
    }

    .grid .card, .impact-grid .card{
      background:#fff;
      border-radius:var(--radius);
      padding:22px;
      text-align:center;
      box-shadow:var(--shadow);
      border:1px solid rgba(15,23,42,.06);
    }

    .grid .card b, .impact-grid .card b{
      display:block;
      font-size:22px;
      color:var(--green-dark);
      margin-bottom:6px;
    }

    .grid .card span, .impact-grid .card span{
      color:var(--muted);
      font-weight:600;
    }

    /* META */
    .meta-box{
      background:#fff;
      border-radius:var(--radius);
      padding:30px;
      box-shadow:var(--shadow);
      border:1px solid rgba(15,23,42,.06);
      max-width:760px;
      margin:0 auto;
    }

    .meta-box p{
      margin:0;
      font-size:16px;
      color:var(--text);
      line-height:1.7;
    }

    .barra{
      height:16px;
      background:#e5e7eb;
      border-radius:999px;
      overflow:hidden;
      margin:18px 0 12px;
    }

    .progresso{
      width:88%;
      height:100%;
      background:linear-gradient(90deg,#22c55e,#16a34a);
    }

    .meta-text{
      display:inline-block;
      font-weight:900;
      color:var(--danger);
      font-size:14px;
    }

    /* DOAÇÃO */
    .valores{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:14px;
      margin-top:22px;
    }

    .valores button{
      padding:18px;
      border-radius:14px;
      border:2px solid var(--line);
      background:#fff;
      font-weight:900;
      cursor:pointer;
      transition:.18s;
    }

    .valores button:hover{
      border-color:var(--green);
      transform:translateY(-1px);
    }

    .valores button.active{
      border-color:var(--green);
      box-shadow:0 10px 18px rgba(22,163,74,.12);
      background:rgba(22,163,74,.06);
    }

    input,textarea{
      width:100%;
      margin-top:16px;
      padding:18px;
      border-radius:14px;
      border:1px solid var(--line);
      font-size:16px;
      outline:none;
      background:#fff;
    }

    textarea{
      min-height:120px;
      resize:vertical;
      font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    }

    .donation-actions{
      margin-top:12px;
    }

    /* DEPOIMENTOS */
    .cards{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
      gap:20px;
      margin-top:24px;
    }

    .cards .tcard{
      background:#f8fafc;
      padding:24px;
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      border:1px solid rgba(15,23,42,.06);
      font-size:15px;
      line-height:1.7;
      color:#0f172a;
    }

    .cards .tcard span{
      display:block;
      margin-top:12px;
      font-weight:900;
      color:var(--green-dark);
      font-size:14px;
    }

    /* CTA FINAL */
    .final{
      background:linear-gradient(180deg,#16a34a,#065f46);
      color:#fff;
    }

    .final h2{color:#fff}

    .final .subtitle{
      color:rgba(255,255,255,.9);
    }

    /* FOOTER */
    .footer{
      padding:30px;
      text-align:center;
      font-size:14px;
      color:#64748b;
      background:#fff;
      border-top:1px solid var(--line);
    }

    /* FLOATING */
    .floating{
      position:fixed;
      bottom:18px;
      right:18px;
      background:linear-gradient(180deg,#22c55e,#16a34a);
      color:#fff;
      padding:18px 26px;
      border-radius:999px;
      font-weight:900;
      text-decoration:none;
      box-shadow:var(--shadow);
      z-index:30;
      transition:.2s;
    }

    .floating:hover{
      transform:translateY(-2px) scale(1.02);
    }

    /* RESPONSIVO */
    @media (max-width:720px){
      .container{padding:44px 16px}
      h1{font-size:28px}
      h2{font-size:24px}
      .images{grid-template-columns:1fr; gap:14px}
      .valores{grid-template-columns:1fr 1fr}
    }
    
    .logo img{
  max-height:72px;
  width:auto;
  max-width:100%;
  object-fit:contain;
  display:block;
}

    @media (max-width: 720px){
   .banner{
  margin:0;
  width:100%;
  overflow:hidden;
}

.banner img{
  width:100%;
  height:auto;
  display:block;
}


  .banner img{
    width: 100%;
    height: 220px;          
    object-fit: cover;      
    display: block;
    box-shadow: 0 0px 24px rgba(0,0,23,.18);
    border-radius: 0;       
  }
  .header{
  width:100%;
  background:#fff;
  border-bottom:1px solid var(--line);
  position:sticky;
  top:0;
  z-index:20;
}

.header-inner{
  max-width:1200px;
  margin:0 auto;
  padding:16px 22px;
  display:flex;
  align-items:center;
  justify-content:center;
}


.banner{
  padding-top: 20px;
}

}
.img-box{
  height: 400px; /* controla o tamanho do card */
}

.img-box img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position: center top;/
  border-radius:14px;
  display:block;
}
.progresso{
  width: 0%;
  height: 100%;
  background: linear-gradient(90deg,#22c55e,#16a34a);
  border-radius: 999px;
  transition: width 1.3s cubic-bezier(.22,.61,.36,1);
}
/* BOX */
.tabs-box{
  max-width: 920px;
  margin: 0 auto 30px;
  background: #fff7f1;
  border-radius: 20px;
  padding: 16px;
}

/* BOTÕES */
.tabs-buttons{
  display: flex;
  flex-direction: row;       /* 🔒 trava horizontal */
  flex-wrap: nowrap;         /* 🔒 nunca quebra linha */
  gap: 12px;
  background: #fdeee4;
  padding: 10px;
  border-radius: 16px;
}

/* BOTÃO */
.tab-btn{
  flex: 1;                   /* todos mesmo tamanho */
  border: 0;
  background: transparent;
  padding: 12px 10px;
  font-weight: 700;
  border-radius: 12px;
  cursor: pointer;
  color: #8b4a2b;
  transition: .2s ease;
  white-space: nowrap;       /* 🔒 não quebra texto */
}

.tab-btn:hover{
  background: rgba(255,255,255,.5);
}

.tab-btn.active{
  background: #ffffff;
  color: #7a3d21;
  box-shadow: 0 6px 16px rgba(0,0,0,.08);
}

/* CONTEÚDO */
.tabs-content{
  margin-top: 16px;
  background: #ffffff;
  border-radius: 16px;
  padding: 20px;
}

.tab-pane{
  display: none;
  font-size: 16px;
  line-height: 1.8;
  color: #5c3a2b;
}

.tab-pane.active{
  display: block;
}
