/* CSS Document */
/* ===== ILZB Landing (escopado) ===== */
.ilzb-landing { --brand:#13a66e; --brand-2:#0a7a52; --brand-3:#e8fff6; --ink:#0f172a; --muted:#5b6778; --bg:#f7faf9; --card:#ffffff; --shadow:0 10px 30px rgba(16,24,40,.08); --radius:22px; }

.ilzb-landing, .ilzb-landing * { box-sizing: border-box; }
.ilzb-landing { margin:0; background:var(--bg); color:var(--ink); font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, "Helvetica Neue", Arial, "Noto Sans", sans-serif; }
.ilzb-landing img { max-width:100%; display:block; }
.ilzb-landing a { text-decoration:none; color:inherit; }

/* Layout base */
.ilzb-container { width:min(1120px,92vw); margin-inline:auto; }
.ilzb-green { color:var(--brand); }
.ilzb-muted { color:var(--muted); }
.ilzb-mt { margin-top:22px; }
.ilzb-mb-8 { margin-bottom:8px; }
.ilzb-mb-6 { margin-bottom:6px; }

.ilzb-grid { display:grid; }
.ilzb-cols-2 { grid-template-columns:repeat(1,1fr); }
.ilzb-cols-3 { grid-template-columns:repeat(1,1fr); }
.ilzb-gap { gap:20px; }
@media (min-width: 720px){
  .ilzb-cols-2 { grid-template-columns:repeat(2,1fr); }
  .ilzb-cols-3 { grid-template-columns:repeat(3,1fr); }
}

/* Header */
.ilzb-header { position:sticky; top:0; z-index:50; background:#fff; border-bottom:1px solid #eef2f1; }
.ilzb-nav { display:flex; align-items:center; justify-content:space-between; padding:14px 0; }
.ilzb-brand { display:flex; align-items:center; gap:12px; }
.ilzb-brand img { height:40px; width:auto; }
.ilzb-brand-title { font-weight:800; letter-spacing:.2px; }
.ilzb-menu { display:flex; gap:18px; align-items:center; }
.ilzb-cta { border:none; background:linear-gradient(135deg,var(--brand),#0fb98a); color:#fff; padding:10px 16px; border-radius:999px; font-weight:700; box-shadow:var(--shadow); }
.ilzb-burger { display:none; gap:8px; flex-direction:column; background:none; border:none; padding:6px; }
.ilzb-burger span { width:26px; height:3px; border-radius:3px; background:#0a3d2f; }
@media (max-width: 900px){
  .ilzb-menu { display:none; }
  .ilzb-menu.ilzb-open { display:flex; flex-direction:column; gap:12px; position:absolute; right:4vw; top:62px; background:#fff; border:1px solid #e6efe9; border-radius:14px; padding:12px; box-shadow:var(--shadow); }
  .ilzb-burger { display:flex; }
}

/* Hero */
.ilzb-hero { position:relative; overflow:hidden; color:#fff;
  background:url('/imagens/background.jpg') center/cover no-repeat; }
.ilzb-hero-overlay { position:absolute; inset:0; background:rgba(0,60,40,.55); }
.ilzb-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:40px; padding:72px 0; }
@media (max-width: 900px){ .ilzb-hero-grid { grid-template-columns:1fr; } }

.ilzb-kicker { display:inline-flex; align-items:center; gap:8px; background:#ecfff8; color:#12654b; border:1px solid #c9f4e2; padding:6px 12px; border-radius:999px; font-weight:700; font-size:13px; margin-bottom:18px; }
.ilzb-hero h1 { font-family:Poppins, Inter, sans-serif; font-weight:800; line-height:1.05; margin:0 0 14px; font-size:clamp(28px,4.4vw,52px); }
.ilzb-lead { font-size:clamp(16px,1.6vw,19px); color:#effff6; max-width:640px; }
.ilzb-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:22px; }
.ilzb-btn { display:inline-flex; align-items:center; gap:10px; padding:14px 18px; border-radius:999px; font-weight:800; border:2px solid transparent; }
.ilzb-primary { background:linear-gradient(135deg,var(--brand),#0fb98a); color:#fff; }
.ilzb-secondary { background:#fff; color:#106a50; border-color:#dfeee9; }
.ilzb-dot { width:8px; height:8px; border-radius:50%; background:#1fd5a2; display:inline-block; }

.ilzb-hero-art { position:relative; }
.ilzb-float { animation:ilzb-float 6s ease-in-out infinite; max-width:420px; margin-inline:auto; }
@keyframes ilzb-float { 0%{transform:translateY(0)} 50%{transform:translateY(-8px)} 100%{transform:translateY(0)} }

.ilzb-wave svg { width:100%; height:100px; display:block; }
.ilzb-wave path { fill:#f7faf9; }

/* Section base */
.ilzb-section { padding:72px 0; }
.ilzb-section-title { font-family:Poppins, Inter, sans-serif; font-size:clamp(22px,3.2vw,36px); margin:0 0 12px; font-weight:800; }
.ilzb-section-lead { color:var(--muted); max-width:800px; }

/* Cards */
.ilzb-card { background:var(--card); border-radius:var(--radius); box-shadow:var(--shadow); padding:22px; }
.ilzb-icon { width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:linear-gradient(135deg,#e9fff6,#d8fff1); color:#0a7a52; font-weight:900; margin-bottom:8px; }
.ilzb-cover { border-radius:var(--radius) var(--radius) 0 0; margin:-22px -22px 14px -22px; max-height:220px; width:calc(100% + 44px); object-fit:cover; }

/* Checklist */
.ilzb-checklist { list-style:none; padding:0; margin:14px 0 0; display:grid; gap:10px; }
.ilzb-check { display:flex; align-items:flex-start; gap:10px; }
.ilzb-tick { flex:0 0 22px; height:22px; display:inline-grid; place-items:center; border-radius:50%; background:linear-gradient(135deg,#29e0a9,#13a66e); color:#fff; font-size:14px; font-weight:900; }

/* Toolbar / Directory */
	ilzb-toolbar { display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin:18px 0; }
.ilzb-toolbar { display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin:18px 0; }
.ilzb-input { flex:1; min-width:230px; display:flex; align-items:center; gap:10px; background:#fff; border:1px solid #dfeee9; border-radius:999px; padding:10px 14px; }
.ilzb-input input { border:none; outline:none; width:100%; font-size:15px; background:transparent; }
.ilzb-pill { border-radius:999px; background:#ecfff8; border:1px solid #c9f4e2; padding:8px 12px; font-weight:700; color:#106a50; cursor:pointer; }
.ilzb-pill.ilzb-active { background:linear-gradient(135deg,#e9fff6,#d8fff1); box-shadow:var(--shadow); }
.ilzb-company { display:flex; align-items:center; gap:16px; }
.ilzb-company img { width:52px; height:52px; object-fit:cover; border-radius:14px; border:1px solid #e7efe9; }
.ilzb-company-name { font-weight:800; }
.ilzb-flex { flex:1; }
.ilzb-tag { font-size:12px; font-weight:800; color:#0a7a52; background:#eafff6; border:1px solid #d5f7ea; border-radius:999px; padding:4px 8px; }

/* CTA final */
.ilzb-cta-card { display:grid; grid-template-columns:1.2fr .8fr; gap:20px; align-items:center; }
.ilzb-cta-card img { max-width:280px; justify-self:end; }
@media (max-width:820px){ .ilzb-cta-card { grid-template-columns:1fr; } .ilzb-cta-card img { justify-self:start; max-width:180px; } }

/* Footer */
.ilzb-footer { background:linear-gradient(180deg,#f3fbf7,#e8fff6); padding:48px 0; border-top:1px solid #dff2ea; }
.ilzb-footgrid { display:grid; gap:24px; grid-template-columns:1.2fr .8fr; }
.ilzb-docs { list-style:none; padding:0; margin:0; display:grid; gap:10px; }
@media (max-width:820px){ .ilzb-footgrid { grid-template-columns:1fr; } }

/* Curvas suaves ao entrar nas seções com fundo uniforme */
.ilzb-curve { position:relative; }
.ilzb-curve:before { content:""; position:absolute; left:0; right:0; top:-1px; height:80px;
  background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1440 140" preserveAspectRatio="none"><path fill="%23f7faf9" d="M0,64L48,58.7C96,53,192,43,288,42.7C384,43,480,53,576,69.3C672,85,768,107,864,112C960,117,1056,107,1152,96C1248,85,1344,75,1392,69.3L1440,64L1440,0L1392,0C1344,0,1248,0,1152,0C1056,0,960,0,864,0C768,0,672,0,576,0C480,0,384,0,288,0C192,0,96,0,48,0L0,0Z"/></svg>') bottom/100% 100% no-repeat; }

/* Força a cor do texto no botão secundário (sem conflito com CSS global) */
.ilzb-landing .ilzb-btn.ilzb-secondary,
.ilzb-landing .ilzb-btn.ilzb-secondary:visited,
.ilzb-landing .ilzb-btn.ilzb-secondary:focus {
  color: #106a50 !important; /* verde-escuro legível */
}

.ilzb-landing .ilzb-btn.ilzb-secondary:hover {
  color: #0a7a52 !important;
}


/* ===== Card de Empresa (novo layout) ===== */
.ilzb-company-card {
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(16,24,40,.08);
  padding: 18px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
}

.ilzb-company-card .ilzb-logo-wrap {
  grid-column: 1 / -1;
  justify-self: center;
  width: 64px; height: 64px;
  border-radius: 18px;
  background: linear-gradient(180deg,#f3fbf7,#e8fff6);
  border: 1px solid #e4efe9;
  display: grid; place-items: center;
  margin-top: 6px;
}

.ilzb-company-card .ilzb-logo {
  width: 44px; height: 44px; object-fit: contain;
}

.ilzb-company-card .ilzb-name {
  font-weight: 800;
  color: #0d1b2a;
  text-transform: uppercase;
  letter-spacing: .2px;
  line-height: 1.15;
}

.ilzb-company-card .ilzb-loc {
  color: var(--muted);
  margin-top: 2px;
}

.ilzb-company-card .ilzb-pill {
  background: #eafff6;
  border: 1px solid #d5f7ea;
  color: #0a7a52;
  font-weight: 700;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  display: inline-block;
  margin-top: 8px;
}

.ilzb-company-card .ilzb-site {
  justify-self: end;
  align-self: center;
  width: 36px; height: 36px;
  border-radius: 12px;
  display: grid; place-items: center;
  background: #f5f8f7;
  border: 1px solid #e6efe9;
  transition: transform .15s ease;
}
.ilzb-company-card .ilzb-site:hover { transform: translateY(-2px); }
.ilzb-company-card .ilzb-site svg { width: 18px; height: 18px; }

/* === Logo sem caixa, altura máx. 50px === */
.ilzb-company-card .ilzb-logo-wrap{
  grid-column: 1 / -1;
  justify-self: center;
  /* remove a caixa */
  background: transparent;
  border: 0;
  width: auto;
  height: auto;
  padding: 0;
  margin: 6px 0 10px;
}

.ilzb-company-card .ilzb-logo{
  height: 50px;      /* <= pedido */
  width: auto;       /* mantém proporção */
  max-width: 100%;   /* evita ultrapassar o card */
  object-fit: contain;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}


/* Ações do card (site + certificado) */
.ilzb-company-card .ilzb-actions-icons{
  justify-self: end;
  align-self: center;
  display: inline-flex;
  gap: 8px;
}

/* Reaproveita o estilo do botão do site para o certificado */
.ilzb-company-card .ilzb-site,
.ilzb-company-card .ilzb-cert{
  width: 36px; height: 36px;
  border-radius: 12px;
  display: grid; place-items: center;
  background: #f5f8f7;
  border: 1px solid #e6efe9;
  transition: transform .15s ease;
}
.ilzb-company-card .ilzb-site:hover,
.ilzb-company-card .ilzb-cert:hover{ transform: translateY(-2px); }
.ilzb-company-card .ilzb-site svg,
.ilzb-company-card .ilzb-cert svg{ width: 18px; height: 18px; }


/* Scroll suave nas âncoras desta página */
html { scroll-behavior: smooth; }

/* Compensa o header fixo para que a âncora não fique escondida */
:root { --ilzb-header-h: 64px; } /* ajuste se seu header for maior/menor */
.ilzb-hero, .ilzb-section { scroll-margin-top: calc(var(--ilzb-header-h) + 12px); }
