/*
Theme Name: MBordignon
Theme URI: https://example.com/mbordignon
Author: Marco Bordignon (via ChatGPT)
Author URI: https://example.com
Description: Tema WordPress profissional e responsivo para o Eng. Agrônomo Marco Bordignon — Núcleos verde, branco e tons terrosos, layout limpo e organizado.
Version: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mbordignon
*/

/* ---------- Reset básico ---------- */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, sans-serif; color: #2b2b2b; background: #ffffff; line-height: 1.6; }
img { max-width: 100%; height: auto; display: block; }
a { color: #0b6b3a; text-decoration: none; }
a:hover { text-decoration: underline; }
.container { width: min(1100px, 92%); margin-inline: auto; }

/* ---------- Paleta ---------- */
:root{
  --green-700:#0b6b3a;
  --green-600:#16834a;
  --green-500:#27a35e;
  --earth-700:#6b4f3b;
  --earth-400:#b08968;
  --earth-200:#e6d5c3;
  --earth-50:#faf4ee;
  --white:#ffffff;
  --text:#1e1e1e;
  --muted:#6b7280;
  --shadow:0 10px 30px rgba(0,0,0,.08);
  --radius:18px;
}

/* ---------- Cabeçalho / Menu fixo ---------- */
.site-header{ position: sticky; top:0; z-index: 50; background: var(--white); border-bottom: 1px solid #eee; }
.navbar{ display:flex; align-items:center; justify-content:space-between; gap: 16px; padding:12px 0; }
.brand{ display:flex; align-items:center; gap:10px; font-weight:700; color:var(--green-700); }
.brand .logo{ width:42px; height:42px; border-radius:50%; background: linear-gradient(135deg,var(--green-600),var(--earth-400)); box-shadow: var(--shadow); }
.menu{ display:flex; align-items:center; gap:20px; }
.menu a{ padding:10px 12px; border-radius: 12px; }
.menu a:hover, .menu a:focus{ background:#f3f5f4; text-decoration:none; }
.menu-toggle{ display:none; background:transparent; border:1px solid #e5e7eb; border-radius:12px; padding:8px 12px; }

@media (max-width: 880px){
  .menu{ display:none; position:absolute; top:64px; right:16px; background:var(--white); border:1px solid #eee; border-radius:16px; flex-direction:column; padding:12px; box-shadow: var(--shadow); min-width: 220px; }
  .menu.open{ display:flex; }
  .menu-toggle{ display:inline-flex; }
}

/* ---------- Hero ---------- */
.hero{ background: linear-gradient(180deg, #f3faf6, var(--white)); }
.hero-wrap{ display:grid; grid-template-columns: 1.2fr .8fr; gap:28px; padding: 36px 0 24px; align-items:center; }
.hero h1{ font-size: clamp(28px, 5vw, 44px); line-height:1.15; margin:0 0 10px; color: var(--green-700); }
.hero p.lead{ font-size: clamp(16px, 2.3vw, 20px); color:#334155; margin:0 0 18px; }
.cta-row{ display:flex; gap:12px; flex-wrap: wrap; }
.btn{ display:inline-flex; align-items:center; gap:8px; border-radius:14px; padding:12px 16px; font-weight:600; border:1px solid transparent; box-shadow: var(--shadow); }
.btn-primary{ background: var(--green-600); color: var(--white); }
.btn-outline{ background: var(--white); border-color:#e5e7eb; color: var(--green-700); }
.card{ background: var(--white); border:1px solid #eee; border-radius: var(--radius); padding:18px; box-shadow: var(--shadow); }

@media (max-width: 880px){
  .hero-wrap{ grid-template-columns: 1fr; }
}

/* ---------- Seções ---------- */
.section{ padding: 40px 0; }
.section h2{ font-size: clamp(22px, 4vw, 32px); margin:0 0 14px; color: var(--green-700); }
.section .sub{ color: var(--muted); margin-bottom: 18px; }
.grid-3{ display:grid; grid-template-columns: repeat(3,1fr); gap:18px; }
.grid-2{ display:grid; grid-template-columns: repeat(2,1fr); gap:18px; }

@media (max-width: 880px){
  .grid-3{ grid-template-columns: 1fr; }
  .grid-2{ grid-template-columns: 1fr; }
}

/* ---------- Listagens ---------- */
.card h3{ margin:0 0 8px; font-size: 18px; color:#111827; }
.meta{ font-size: 13px; color: var(--muted); margin-bottom: 10px; }
.badge{ font-size:12px; padding:4px 8px; background: var(--earth-200); color:#3f3f3f; border-radius:999px; }

/* ---------- Contato ---------- */
.form{ display:grid; gap:12px; }
.input, .textarea{ width:100%; padding:12px 14px; border:1px solid #e5e7eb; border-radius:12px; font: inherit; }
.textarea{ min-height: 140px; resize: vertical; }
.form .row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
@media (max-width: 680px){ .form .row{ grid-template-columns:1fr; } }
.form .actions{ display:flex; gap:10px; align-items:center; flex-wrap: wrap; }

.notice{ margin-top: 10px; padding:10px 12px; border-radius:12px; border:1px solid #e5e7eb; background: #f9fafb; }
.notice.success{ border-color:#d1fae5; background:#ecfdf5; }
.notice.error{ border-color:#fecaca; background:#fef2f2; }

/* ---------- Rodapé ---------- */
.site-footer{ background: var(--earth-50); border-top:1px solid #eee; margin-top: 40px; }
.site-footer .inner{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding: 16px 0; flex-wrap: wrap; }
.socials{ display:flex; gap:12px; }
.socials a{ padding:8px 10px; border-radius: 10px; border:1px solid #e5e7eb; }
.socials a:hover{ background:#f3f4f6; text-decoration:none; }
