@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

/* Reset + fonte */
*{ margin:0; padding:0; box-sizing:border-box; font-family:"Roboto",sans-serif; }

/* Paleta e variáveis */
:root{
  --green:#148245;
  --red:#ED1C24;
  --white:#FFFFFF;
  --shadow:0 10px 24px rgba(0,0,0,.08);
  --wh-avatar: 70px;            /* tamanho do avatar dentro do botão WhatsApp */
}

body{
  background-color:#ffffff;
  padding-top: 6rem;    /* igual à height do .menu */ }

/* ================================
            Header
=================================== */
header{
  background-color:#ffffff;
  padding:0rem;               /* acima do conteúdo */
}

.menu{  
  position: fixed;      /* fixa o menu */
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;           /* ancora elementos internos */
  display:flex;
  justify-content:space-between;
  align-items:center;
  height:6rem;
  background-color:var(--green);
  gap:10rem;
  padding:0 1rem;
  overflow:clip;                /* evita vazamento lateral */
}

/* logo do header */
.logo{ height:5rem; width:auto; object-fit:contain; }

/* LINKS DO MENU */
.btn{
  color:#fff;
  padding:10px 16px;
  border-radius:999px;
  font-weight:700;
  border:0;
  box-shadow:var(--shadow);
  transition:.2s transform,.2s filter;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.btn:hover{ transform:translateY(-1px); filter:brightness(1.03); }

.botao-red{ background:var(--red); color:#fff; padding:15px 21px; }
.botao-menu{ background:#004921; color:#fff; padding:15px 21px; }

/* Botão WhatsApp – com avatar dentro do botão */
.whats-btn{
  position:relative;
  display:inline-flex; align-items:center; gap:12px;
  background:var(--red); color:#fff; text-decoration:none;
  padding:15px 21px;                             /* esquerda padrao */
  padding-right:calc(var(--wh-avatar) + 16px);   /* reserva espaço pro avatar */
  border-radius:999px;
  font-weight:700; line-height:1.05;
  box-shadow:0 15px 29px rgba(0,0,0,.12);
  white-space:nowrap; overflow:visible;
  transition:transform .15s, filter .15s;
}
.whats-btn:hover{ transform:translateY(-1px); filter:brightness(1.04); }

/* Avatar dentro do botão */
.whats-avatar{
  position:absolute; top:50%; right:0;
  transform:translateY(-50%);
  width:var(--wh-avatar); height:var(--wh-avatar);
  border-radius:50%;
  background:var(--green);
  display:grid; place-items:center;
  box-shadow:0 6px 18px var(--green);
  pointer-events:none; z-index:1;
}
.whats-avatar img{
  width:calc(100% - 10px); height:calc(100% - 10px);
  border-radius:50%; object-fit:cover;
}

/* Espaço à direita dos links para não bater no avatar quando o botão estiver junto */
.menu-links{ padding-right:8rem; }

/* Responsivo do avatar (mantendo estética) */
@media (max-width:900px){
  .menu-links{ padding-right:6rem; }
  :root{ --wh-avatar: 80px; } /* se preferir reduzir, troque aqui */
}
@media (max-width:700px){
  .menu-links{ padding-right:5rem; }
  :root{ --wh-avatar: 64px; }
}

/* ================================
            Main
=================================== */
main section{ padding:2rem; margin-bottom:2rem; }
.marketing{ margin-bottom:0; }  /* encosta no próximo bloco */

/* ================================
       Imagens de marketing (slider)
=================================== */
.marketing{
  position:relative;
  min-height:clamp(47.25rem,72vh,25.3125rem);
  width:100%;
  overflow:hidden;
  background:#000;
}
.mkf-slide{
  position:absolute; inset:0;
  opacity:0; transform:scale(1.02);
  transition:opacity .5s ease, transform .5s ease;
}
.mkf-slide.is-active{ opacity:1; transform:scale(1); }
.mkf-slide img{ width:100%; height:100%; object-fit:cover; display:block; }

.mkf-indicators{
  position:absolute; bottom:20px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:row; gap:12px;
}
.mkf-ind{
  width:30px; height:4px; background:rgba(255,255,255,.4);
  border-radius:2px; transition:background .3s, width .3s;
}
.mkf-ind.is-active{ background:var(--green); width:40px; }

.mkf-prev,.mkf-next{
  position:absolute; top:50%; transform:translateY(-50%);
  font-size:2.5rem; font-weight:bold;
  color:rgba(255,255,255,.8);
  background:none; border:none; cursor:pointer;
  padding:0 12px; transition:color .2s, transform .2s;
}
.mkf-prev:hover,.mkf-next:hover{ color:#fff; transform:translateY(-50%) scale(1.1); }
.mkf-prev{ left:10px; } .mkf-next{ right:10px; }

/* ================================
       Empreendimentos
=================================== */
.empreendimentos{ background:#f7f8f8; padding:3rem 1rem; }
.container-emp{ width:min(1120px,92vw); margin:0 auto; }

.emp-title{
  margin:0 0 1.25rem; text-align:center; font-size:3.95rem;
  letter-spacing:.5px; color:#111;
}
.emp-grid{
  margin:2rem; display:grid; grid-template-columns:repeat(2,1fr);
  gap:18px; justify-items:center;
}
@media (max-width:820px){ .emp-grid{ grid-template-columns:1fr; } }

.emp-card{
  width:100%; max-width:520px; background:#fff;
  border:1px solid #6b7280; border-radius:16px;
  box-shadow:0 10px 24px rgba(0,0,0,.06); overflow:hidden;
}
.emp-media{ position:relative; aspect-ratio:16/9; background:#eee; }
.emp-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.emp-badge{
  position:absolute; top:10px; left:10px; background:#fff; color:#111;
  border:1px solid #e5e7eb; border-radius:999px; padding:6px 10px;
  font-size:.8rem; font-weight:700;
}
.emp-body{ padding:16px 16px 18px; }
.emp-name{ margin:0 0 4px; font-size:1.25rem; color:#111; }
.emp-loc{ margin:0 0 10px; color:#6b7280; font-size:.95rem; }

.emp-specs{
  list-style:none; margin:0 0 14px; padding:0; color:#111;
  display:grid; gap:6px;
}
/* base ícone nos specs */
.emp-specs li{ position:relative; padding-left:28px; line-height:1.35; }
.emp-specs li::before{
  content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:18px; height:18px; background-size:contain; background-repeat:no-repeat; opacity:.95;
}

.emp-specs li.spec-quartos::before{ background-image:url('/imagens/vetor.cama.png'); }
.emp-specs li.spec-m2::before{ background-image:url('/imagens/vetor.m2.png'); }
.emp-specs li.spec-jardim::before{ background-image:url('/imagens/vetor.jardim.png'); }
.emp-specs li.spec-garagem::before{ background-image:url('/imagens/vetor.garagem.png'); }
.emp-specs li.spec-piscina::before{ background-image:url('/imagens/vetor.piscina.png'); }
.emp-specs li.spec-quadra::before{ background-image:url('/imagens/vetor.quadra.png'); }
.emp-specs li.spec-arearecreativa::before{ background-image:url('/imagens/vetor.arearecreativa.png'); }
.emp-specs li.spec-parquinho::before{ background-image:url('/imagens/vetor.parquinho.png'); }

.emp-btn {
  display: inline-block;         /* funciona como botão */
  text-align: center;
  text-decoration: none;         /* tira o sublinhado do link */
  color: #111;                   /* cor do texto */
  font-weight: 700;
  width: 100%;
  padding: 10px 14px;
  border-radius: 999px;
  border: 2px solid #6b7280;     /* contorno cinza */
  background: transparent;
  cursor: pointer;
  transition: .2s background, .2s transform, .2s border-color;
}

.emp-btn:hover {
  background: #eef2f7;
  border-color: #94a3b8;
  transform: translateY(-1px);
}

.emp-cta{ display:grid; place-items:center; margin-top:18px; }
.emp-btn--outline{
  display:inline-block; padding:10px 18px; border-radius:999px;
  border:2px solid #6b7280; background:transparent; color:#111; font-weight:800;
  letter-spacing:.3px; text-decoration:none; transition:.2s background,.2s transform,.2s border-color;
}
.emp-btn--outline:hover{ background:#eef2f7; border-color:#94a3b8; transform:translateY(-1px); }

/* =========================
        Formulário
========================= */
.section-formulario{
  background:
    linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)),
    url('/imagens/foto1gp6.jpeg') center/cover no-repeat;
  color:#fff; padding:6rem 0rem; display:grid; place-items:center;
}

/* Cartão do formulário (versão final que você usa) */
.form-card{
  width:min(720px,92vw);
  background:rgba(255,255,255,.329);           /* mantém estética final */
  border:1px solid rgba(255,255,255,.18);
  border-radius:16px;
  box-shadow:0 12px 36px rgba(0,0,0,.35);
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  padding:24px 24px 28px;
}
.form-title{ margin:0 0 12px; text-align:center; font-size:1.6rem; letter-spacing:.5px; }
.form-grid{ display:grid; gap:14px; }
.field label{ display:block; margin:0 0 6px 10px; font-size:.95rem; font-weight:600; color:#fff; opacity:.95; text-align:left; }

.form-grid input[type="text"]{
  width:100%; padding:12px 16px; border-radius:999px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.94); color:#111; outline:none;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.06);
}
.form-grid input[type="text"]::placeholder{ color:#6b7280; }

.form-grid textarea{
  width:100%; min-height:120px; padding:12px 16px; border-radius:12px;
  border:1px solid rgba(255,255,255,.25); background:rgba(255,255,255,.94); color:#111;
  outline:none; resize:vertical; box-shadow:inset 0 1px 2px rgba(0,0,0,.06);
}
.form-grid input[type="text"]:focus,
.form-grid textarea:focus{ border-color:var(--green); outline:3px solid rgba(20,130,69,.25); }

.area-termos-uso{ display:flex; align-items:flex-start; gap:10px; margin-top:4px; }
.area-termos-uso input[type="checkbox"]{ accent-color:var(--green); }
.politica-dados{ margin:0; font-size:.95rem; line-height:1.4; }
.termos-link{ margin-left:28px; font-size:.92rem; color:#fff; text-decoration:underline; opacity:.95; }

.btn-submit{
  margin-top:6px; width:100%; padding:12px 18px; border-radius:999px; border:0;
  background:#080808; color:#fff; font-weight:700; box-shadow:0 8px 20px rgba(0,0,0,.25);
  cursor:pointer; transition:.2s transform,.2s filter;
}
.btn-submit:hover{ transform:translateY(-1px); filter:brightness(1.05); }

label{ margin-left:0; text-align:left; } /* limpeza */

/* =========================
           Rodapé
========================= */
footer{ background-color:var(--green); color:white; padding:1rem; }
.logo-rodape{ border-left:20rem solid var(--green); }

.grade-rodape{
  display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap:2rem;
  background-color:var(--green); color:#000000; line-height:2.5rem;
}
.titulo-grade-rodapé{ font-size:1.2rem; list-style:none; padding:0; margin:0; }
.link-grade{ font-size:20px; text-decoration:none; color:#000; transition:.3s; }
.link-grade:hover{ font-weight:bold; color:var(--red); }
.listra{ margin:2rem auto; width:80%; border-top:.2rem solid #000; }

.grade-rodape ul{ list-style:none; padding-left:0; margin:0; }
.grade-rodape li::before{
  content:">>";
  color:#000; font-weight:bold; margin-right:6px;
}

/* Ícones personalizados (local/telefone) */
.grade-rodape li.local::before,
.grade-rodape li.fone::before{
  content:""; display:inline-block; width:16px; height:20px;
  background-size:contain; background-repeat:no-repeat; margin-right:6px; vertical-align:middle;
}
.grade-rodape li.local::before{ background-image:url('/imagens/vetor.localizacao.png'); }
.grade-rodape li.fone::before{ background-image:url('/imagens/vetor.fone.png'); }

.rodape-inferior{
  display:flex; justify-content:center; align-items:center; gap:10rem; color:#000; margin-top:0;
}
.social-buttons{ display:flex; gap:4rem; justify-content:center; }
.social-btn:hover img{ transform:scale(1.3); }
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

/* =========================
   Reset + base responsiva
========================= */
*{
  margin:0; padding:0; box-sizing:border-box;
  font-family:"Roboto",sans-serif;
}
html, body{
  width:100%;
  overflow-x:hidden;              /* evita rolagem horizontal */
  background:#ffffff;
  color:#111;
}
img, video, iframe{ max-width:100%; height:auto; display:block; }
a{ color:inherit; }

/* Espaço para o header fixo (6rem) */
body{ padding-top:6rem; }

/* Paleta / variáveis */
:root{
  --green:#148245;
  --red:#ED1C24;
  --white:#FFFFFF;
  --shadow:0 10px 24px rgba(0,0,0,.08);
  --wh-avatar: 70px;
}

/* =========================
         Header / Menu
========================= */
header{ background:#ffffff; }
.menu{
  position:fixed; top:0; left:0; right:0; z-index:1000;
  display:flex; align-items:center; justify-content:space-between;
  height:6rem; padding:0 .75rem;
  background:var(--green);
  gap:1rem;                      /* gap menor para não estourar */
  overflow:clip;
}
.menu-logo .logo{ height:5rem; width:auto; object-fit:contain; }

/* Links */
.menu-links{
  display:flex; gap:.5rem; align-items:center; flex-wrap:wrap;
  padding-right:6rem;             /* respiro pro avatar no desktop */
  max-width:100%;
}
.btn{
  color:#fff; text-decoration:none;
  padding:10px 14px; border-radius:999px; font-weight:700; border:0;
  display:inline-flex; align-items:center; gap:8px;
  box-shadow:var(--shadow);
  transition:.2s transform,.2s filter;
  white-space:nowrap;
}
.btn:hover{ transform:translateY(-1px); filter:brightness(1.03); }
.botao-red{ background:var(--red); padding:12px 18px; }
.botao-menu{ background:#004921; padding:12px 18px; }

/* WhatsApp no header com avatar */
.whats-btn{
  position:relative; background:var(--red);
  padding-right:calc(var(--wh-avatar) + 16px);
}
.whats-avatar{
  position:absolute; top:50%; right:0; transform:translateY(-50%);
  width:var(--wh-avatar); height:var(--wh-avatar);
  border-radius:50%; background:var(--green);
  display:grid; place-items:center; box-shadow:0 6px 18px var(--green);
  pointer-events:none; z-index:1;
}
.whats-avatar img{
  width:calc(100% - 10px); height:calc(100% - 10px);
  border-radius:50%; object-fit:cover;
}

/* Header responsivo */
@media (max-width:980px){
  :root{ --wh-avatar: 68px; }
  .menu{ padding:.35rem .5rem; }
  .menu-links{ padding-right:5rem; }
}
@media (max-width:760px){
  :root{ --wh-avatar: 56px; }
  .menu{ height:auto; padding:.5rem .5rem; }
  body{ padding-top:5.25rem; }              /* ajusta deslocamento em telas menores */
  .menu-links{
    padding-right:0;
    justify-content:flex-end;
    gap:.4rem;
  }
  .btn{ padding:10px 12px; }
}

/* =========================
            Main
========================= */
main section{ padding:2rem 1rem; margin:0 auto 2rem; max-width:1200px; }
.marketing{ margin-bottom:0; }

/* =========================
      Slider (marketing)
========================= */
.marketing{
  position:relative; min-height:clamp(25rem, 60vh, 47rem);
  width:100%; overflow:hidden; background:#000;
}
.mkf-slide{ position:absolute; inset:0; opacity:0; transform:scale(1.02);
  transition:opacity .5s ease, transform .5s ease; }
.mkf-slide.is-active{ opacity:1; transform:scale(1); }
.mkf-slide img{ width:100%; height:100%; object-fit:cover; display:block; }

.mkf-indicators{
  position:absolute; bottom:20px; left:50%; transform:translateX(-50%);
  display:flex; gap:12px;
}
.mkf-ind{ width:30px; height:4px; background:rgba(255,255,255,.4);
  border-radius:2px; transition:background .3s, width .3s; }
.mkf-ind.is-active{ background:var(--green); width:40px; }

.mkf-prev,.mkf-next{
  position:absolute; top:50%; transform:translateY(-50%);
  font-size:2.2rem; font-weight:800; color:rgba(255,255,255,.85);
  background:none; border:none; cursor:pointer; padding:0 10px;
  transition:color .2s, transform .2s;
}
.mkf-prev:hover,.mkf-next:hover{ color:#fff; transform:translateY(-50%) scale(1.08); }
.mkf-prev{ left:10px; } .mkf-next{ right:10px; }

/* =========================
       Empreendimentos (cards)
========================= */
.empreendimentos{ background:#f7f8f8; padding:3rem 1rem; }
.container-emp{ width:min(1120px,92vw); margin:0 auto; }
.emp-title{
  margin:0 0 1.25rem; text-align:center;
  font-size:clamp(2rem, 5vw, 3.2rem); letter-spacing:.5px; color:#111;
}
.emp-grid{
  margin:2rem 0; display:grid; gap:18px;
  grid-template-columns:repeat(2, minmax(0,1fr));
}
@media (max-width:820px){ .emp-grid{ grid-template-columns:1fr; } }

.emp-card{
  width:100%; background:#fff; border:1px solid #6b7280; border-radius:16px;
  box-shadow:0 10px 24px rgba(0,0,0,.06); overflow:hidden;
}
.emp-media{ position:relative; aspect-ratio:16/9; background:#eee; }
.emp-media img{ width:100%; height:100%; object-fit:cover; }
.emp-badge{
  position:absolute; top:10px; left:10px; background:#fff; color:#111;
  border:1px solid #e5e7eb; border-radius:999px; padding:6px 10px; font-size:.8rem; font-weight:700;
}
.emp-body{ padding:16px 16px 18px; }
.emp-name{ margin:0 0 4px; font-size:1.25rem; color:#111; }
.emp-loc{ margin:0 0 10px; color:#6b7280; font-size:.95rem; }
.emp-specs{ list-style:none; margin:0 0 14px; padding:0; display:grid; gap:6px; color:#111; }
.emp-specs li{ position:relative; padding-left:28px; line-height:1.35; }
.emp-specs li::before{
  content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:18px; height:18px; background-size:contain; background-repeat:no-repeat; opacity:.95;
}
.emp-specs li.spec-quartos::before{ background-image:url('/imagens/vetor.cama.png'); }
.emp-specs li.spec-m2::before{ background-image:url('/imagens/vetor.m2.png'); }
.emp-specs li.spec-jardim::before{ background-image:url('/imagens/vetor.jardim.png'); }
.emp-specs li.spec-garagem::before{ background-image:url('/imagens/vetor.garagem.png'); }
.emp-specs li.spec-piscina::before{ background-image:url('/imagens/vetor.piscina.png'); }
.emp-specs li.spec-quadra::before{ background-image:url('/imagens/vetor.quadra.png'); }
.emp-specs li.spec-arearecreativa::before{ background-image:url('/imagens/vetor.arearecreativa.png'); }
.emp-specs li.spec-parquinho::before{ background-image:url('/imagens/vetor.parquinho.png'); }

.emp-btn{
  display:inline-block; width:100%; text-align:center; text-decoration:none; color:#111; font-weight:700;
  padding:10px 14px; border-radius:999px; border:2px solid #6b7280; background:transparent;
  transition:.2s background,.2s transform,.2s border-color;
}
.emp-btn:hover{ background:#eef2f7; border-color:#94a3b8; transform:translateY(-1px); }

.emp-cta{ display:grid; place-items:center; margin-top:18px; }
.emp-btn--outline{
  display:inline-block; padding:10px 18px; border-radius:999px; border:2px solid #6b7280; background:transparent;
  color:#111; font-weight:800; letter-spacing:.3px; text-decoration:none; transition:.2s background,.2s transform,.2s border-color;
}
.emp-btn--outline:hover{ background:#eef2f7; border-color:#94a3b8; transform:translateY(-1px); }

/* =========================
        Formulário (mantido)
========================= */
.section-formulario{
  background:
    linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)),
    url('/imagens/foto1gp6.jpeg') center/cover no-repeat;
  color:#fff; padding:6rem 0; display:grid; place-items:center;
}
.form-card{
  width:min(720px,92vw);
  background:rgba(255,255,255,.329);
  border:1px solid rgba(255,255,255,.18);
  border-radius:16px; box-shadow:0 12px 36px rgba(0,0,0,.35);
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  padding:24px 24px 28px;
}
.form-title{ margin:0 0 12px; text-align:center; font-size:1.6rem; letter-spacing:.5px; }
.form-grid{ display:grid; gap:14px; }
.field label{ display:block; margin:0 0 6px 10px; font-size:.95rem; font-weight:600; color:#fff; opacity:.95; text-align:left; }
.form-grid input[type="text"]{
  width:100%; padding:12px 16px; border-radius:999px; border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.94); color:#111; outline:none; box-shadow:inset 0 1px 2px rgba(0,0,0,.06);
}
.form-grid textarea{
  width:100%; min-height:120px; padding:12px 16px; border-radius:12px; border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.94); color:#111; outline:none; resize:vertical; box-shadow:inset 0 1px 2px rgba(0,0,0,.06);
}
.form-grid input[type="text"]:focus, .form-grid textarea:focus{ border-color:var(--green); outline:3px solid rgba(20,130,69,.25); }
.area-termos-uso{ display:flex; align-items:flex-start; gap:10px; margin-top:4px; }
.area-termos-uso input[type="checkbox"]{ accent-color:var(--green); }
.politica-dados{ margin:0; font-size:.95rem; line-height:1.4; }
.termos-link{ margin-left:28px; font-size:.92rem; color:#fff; text-decoration:underline; opacity:.95; }
.btn-submit{
  margin-top:6px; width:100%; padding:12px 18px; border-radius:999px; border:0; background:#080808; color:#fff; font-weight:700;
  box-shadow:0 8px 20px rgba(0,0,0,.25); cursor:pointer; transition:.2s transform,.2s filter;
}
.btn-submit:hover{ transform:translateY(-1px); filter:brightness(1.05); }

/* =========================
            Rodapé
========================= */
footer{ background:var(--green); color:#000; padding:1rem 0; }
.logo-rodape{
  display:flex; align-items:center; justify-content:center; padding:1rem 0 0;
}
.img-logo-rodape{ max-width:180px; height:auto; }

.grade-rodape{
  width:min(1120px,92vw);
  margin:1rem auto 0; padding:1rem 0;
  display:grid; gap:1.25rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.titulo-rodape{
  font-size:1.2rem; margin:0 0 .4rem; color:#000;
}
.grade-rodape ul{ list-style:none; padding:0; margin:0; }
.link-grade{
  font-size:1rem; text-decoration:none; color:#000; transition:.2s;
  word-break:break-word;            /* evita estouro horizontal */
}
.link-grade:hover{ color:#ED1C24; font-weight:700; }
.grade-rodape li{
  position:relative; padding-left:20px; line-height:1.9;
}
.grade-rodape li::before{
  content:">>"; position:absolute; left:0; top:.15rem; color:#000; font-weight:700;
}

/* ícones específicos */
.grade-rodape li.local::before,
.grade-rodape li.fone::before{
  content:""; width:16px; height:18px; top:.25rem;
  background-size:contain; background-repeat:no-repeat;
}
.grade-rodape li.local::before{ background-image:url('/imagens/vetor.localizacao.png'); }
.grade-rodape li.fone::before{ background-image:url('/imagens/vetor.fone.png'); }

.listra{
  width:min(1120px,92vw); margin:1rem auto; border-top:.2rem solid #000;
}

.rodape-inferior{
  width:min(1120px,92vw);
  margin:0 auto; padding: .5rem 0 1rem;
  display:flex; flex-direction:column; align-items:center; gap:.8rem;
}
.social-buttons{
  display:flex; flex-wrap:wrap; justify-content:center; gap:1.25rem;
}
.social-buttons img{
  width:2.6rem; height:2.6rem; transition:transform .2s;
}
.social-btn:hover img{ transform:scale(1.15); }
.direitos-autorais{
  text-align:center; color:#000; font-size:.95rem;
  padding: .25rem 1rem;
}

/* Rodapé responsivo */
@media (max-width:900px){
  .grade-rodape{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width:600px){
  .grade-rodape{ grid-template-columns: 1fr; }
  .grade-rodape li{ padding-left:16px; }
  .grade-rodape li::before{ left:0; }
}
/* =========================
        Itens gerais
========================= */
input[type="checkbox"]{ accent-color:var(--green); }
h2{ font-size:3rem; } h3{ font-size:2rem; } h4{ font-size:1.5rem; }
@media (max-width: 900px){
  footer section { padding: 1rem 0; }
}