/* Escritório do Agro — estilos globais */

:root{
  --bg: #F6F3EC;
  --card: #FFFFFF;
  --border: #E3DDCC;
  --ink: #1E231D;
  --ink-soft: #3C4438;
  --muted: #5B6355;
  --accent: #566B4F;
  --dark: #1E231D;
  --dark-card: #2A3025;
  --dark-text: #F6F3EC;
  --dark-muted: #9CA396;
  --dark-soft: #C9CDC0;
  --max: 1180px;
}

*{box-sizing:border-box;}

body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:'Work Sans', system-ui, -apple-system, sans-serif;
  line-height:1.5;
}

h1,h2,h3{
  font-family:'Fraunces', Georgia, serif;
  margin:0;
}

a{ color:var(--accent); text-decoration:none; }
a:hover{ color:var(--ink); }

img{ max-width:100%; display:block; }

.wrap{ max-width:var(--max); width:100%; margin:0 auto; padding:0 64px; box-sizing:border-box; }

@media (max-width:720px){
  .wrap{ padding:0 24px; }
}

/* Header */
.site-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:28px 64px; max-width:var(--max); margin:0 auto; box-sizing:border-box;
  flex-wrap:wrap; gap:16px;
}
.brand{ display:flex; align-items:center; gap:14px; }
.brand svg{ flex-shrink:0; }
.brand img{ height:40px; width:auto; display:block; }
.brand-text{ display:flex; flex-direction:column; line-height:1.1; }
.brand-name{ font-family:'Fraunces'; font-weight:700; font-size:21px; letter-spacing:0.01em; color:var(--ink); }
.brand-sub{ font-size:11px; letter-spacing:0.10em; text-transform:uppercase; color:var(--muted); }

.main-nav{ display:flex; gap:36px; font-size:15px; font-weight:500; flex-wrap:wrap; }
.main-nav a{ color:var(--accent); }
.main-nav a.active{ color:var(--ink); }

.header-phone{
  display:flex; align-items:center; gap:8px;
  font-size:15px; font-weight:600; color:var(--ink);
  white-space:nowrap;
}
.header-phone svg{ flex-shrink:0; }
.header-phone:hover{ color:var(--accent); }

@media (max-width:860px){
  .header-phone span{ display:none; }
}

/* Buttons */
.btn{
  display:inline-block; padding:15px 30px; border-radius:4px;
  font-size:15px; font-weight:600; text-align:center;
}
.btn-dark{ background:var(--ink); color:var(--bg); }
.btn-outline{ border:1.5px solid var(--ink); color:var(--ink); padding:13.5px 30px; }
.btn-light{ background:var(--bg); color:var(--ink); }

/* Sections */
.hero{ padding:88px 0 96px; display:flex; gap:64px; align-items:center; flex-wrap:wrap; }
.hero-copy{ flex:1.2; min-width:320px; display:flex; flex-direction:column; gap:28px; }
.eyebrow{ font-size:13px; letter-spacing:0.12em; text-transform:uppercase; color:var(--accent); font-weight:600; }
.hero-copy h1{ font-size:52px; line-height:1.12; font-weight:600; }
.hero-copy p{ font-size:18px; line-height:1.6; color:var(--ink-soft); max-width:520px; }
.hero-actions{ display:flex; gap:16px; flex-wrap:wrap; margin-top:8px; }

.stat-card{
  flex:1; min-width:280px; background:var(--card); border:1px solid var(--border); border-radius:8px;
  padding:40px; display:flex; flex-direction:column; gap:26px;
}
.stat-row{ display:flex; flex-direction:column; gap:4px; }
.stat-row .big{ font-family:'Fraunces'; font-size:30px; font-weight:600; color:var(--accent); }
.stat-row .mid{ font-family:'Fraunces'; font-size:20px; font-weight:600; color:var(--ink); }
.stat-row .label{ font-size:14px; color:var(--ink-soft); }
.divider{ height:1px; background:var(--border); }

.dark-section{ background:var(--dark); padding:72px 0; }
.dark-section h2{ color:var(--dark-text); font-size:28px; font-weight:600; margin-bottom:40px; }
.grid-4{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:24px; }
.grid-3{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; }
.grid-2{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:24px; }
@media (max-width:960px){
  .grid-4{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .grid-3{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .grid-2{ grid-template-columns:1fr; }
}
@media (max-width:600px){
  .grid-4{ grid-template-columns:1fr; }
  .grid-3{ grid-template-columns:1fr; }
}

.dark-card{
  background:var(--dark-card); border-radius:6px; padding:28px 24px;
  display:flex; flex-direction:column; gap:12px;
}
.dark-card .title{ font-family:'Fraunces'; font-size:18px; font-weight:600; color:var(--dark-text); }
.dark-card .desc{ font-size:14px; line-height:1.5; color:var(--dark-soft); }

.card{
  background:var(--card); border:1px solid var(--border); border-radius:8px; padding:32px;
  display:flex; flex-direction:column; gap:12px;
}
.card .kicker{ font-size:12px; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:var(--accent); }
.card h3{ font-size:20px; font-weight:600; }
.card p{ font-size:15px; line-height:1.6; color:var(--ink-soft); margin:0; }

.link-arrow{
  display:inline-block; margin-top:20px; font-size:14px; font-weight:600;
  border-bottom:1px solid var(--accent); padding-bottom:2px;
}

.cta-band{ background:var(--dark); padding:64px 0; }
.cta-inner{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:24px; }
.cta-inner h2{ color:var(--dark-text); font-size:24px; font-weight:600; }
.cta-inner .sub{ font-size:14px; color:var(--dark-muted); }

.site-footer{ background:var(--dark); padding:56px 0 40px; margin-top:auto; }
.footer-inner{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:32px; }
.footer-col{ display:flex; flex-direction:column; gap:8px; font-size:13px; color:var(--dark-soft); }
.footer-brand{ font-family:'Fraunces'; font-weight:700; font-size:18px; color:var(--dark-text); }
.footer-note{ font-size:13px; color:var(--dark-muted); }
.footer-bottom{ background:var(--dark); padding:24px 0; }
.footer-bottom .wrap{ font-size:13px; color:var(--dark-muted); }

.page{ min-height:100vh; display:flex; flex-direction:column; }

.contact-cards{ display:flex; gap:24px; flex-wrap:wrap; padding:32px 0 88px; }
.contact-cards .card{ flex:1; min-width:240px; }
.contact-cards .card svg{ margin-bottom:2px; }

@media (max-width:720px){
  .hero-copy h1{ font-size:38px; }
  .site-header{ padding:24px; }
}

.wa-float{
  position:fixed; bottom:24px; right:24px; z-index:999;
  width:58px; height:58px; border-radius:50%;
  background:#1E231D; display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 20px rgba(30,35,29,0.35);
  transition:transform .15s ease;
}
.wa-float:hover{ transform:scale(1.06); background:var(--accent); }
.wa-float svg{ width:28px; height:28px; }
