:root{--ink:#1a2419;--muted:#4f594e;--paper:#f8f8f1;--lime:#d6ea9e}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.6 system-ui,-apple-system,sans-serif}a{color:inherit}img{display:block;max-width:100%}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.bar{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}.top{background:#fff}.logo{width:170px;height:auto}nav{display:flex;align-items:center;gap:30px;font-weight:650;font-size:.87rem}nav a,footer a{text-decoration:none}nav a:hover,footer a:hover{text-decoration:underline}.nav-contact{border:1px solid #c9d1c4;border-radius:5px;padding:9px 15px}.skip{position:absolute;left:16px;top:8px;transform:translateY(-160%);background:#fff;padding:8px;z-index:2}.skip:focus{transform:none}:focus-visible{outline:3px solid #dc8b00;outline-offset:4px}
.hero{color:#fff;position:relative;isolation:isolate;overflow:hidden;background:#253523}
.hero::before,.hero::after{content:"";position:absolute;inset:0;pointer-events:none}
.hero::before{z-index:-2;background:url('assets/portada-cosecha.webp') center 53%/cover;transform:translateX(var(--hero-offset,0%)) scale(var(--hero-scale,1))}
.hero::after{z-index:-1;background:linear-gradient(90deg,rgba(16,25,14,.94),rgba(16,25,14,.72) 42%,rgba(16,25,14,.13))}
@media(prefers-reduced-motion:reduce){.hero::before{transform:none}}
.hero-inner{min-height:640px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:88px}.eyebrow{font-size:.73rem;letter-spacing:.14em;text-transform:uppercase;font-weight:750;margin:0 0 18px}.dot{display:inline-block;background:#a4d04d;width:8px;height:8px;border-radius:50%;margin-right:6px}.hero h1{font-size:clamp(2.7rem,6.15vw,5.6rem);line-height:1.01;letter-spacing:-.062em;margin:0}.hero h1 em{font-style:normal;color:var(--lime)}.hero-copy{max-width:470px;margin:24px 0 30px;color:#f4f6ed;font-size:1.13rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 18px;border-radius:5px;background:var(--lime);color:#1a2419;text-decoration:none;font-size:.93rem;font-weight:750}.button:hover{background:#e7f6c0}
.about,.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding-block:86px}.about .eyebrow,.units .eyebrow{color:#52634d}h2{font-size:clamp(2.2rem,4.3vw,4rem);line-height:1.04;letter-spacing:-.055em;margin:0}.about-copy p{margin:0 0 12px;color:var(--muted)}.about-copy p:last-child{margin-bottom:0}
.units{padding:78px 0 64px;background:#edf0e6}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}.grid article{background:#fff;border-radius:8px;overflow:hidden;border-bottom:5px solid var(--accent)}.grid img{width:100%;height:auto;aspect-ratio:2.15;object-fit:cover;background:#cbd3bf}.card{padding:24px 27px 28px}.card .index{display:flex;align-items:center;gap:9px;font-weight:750;font-size:.77rem;margin:0 0 8px}.index::before{content:"";display:block;width:10px;height:10px;background:var(--accent);border-radius:50%}.card h3{font-size:clamp(1.36rem,2.4vw,2rem);line-height:1.12;letter-spacing:-.033em;margin:0 0 11px}.card p{margin:0;color:var(--muted)}.image-note{font-size:.76rem;color:var(--muted);margin:17px 0 0}
.contact{color:#f9faf4;background:#20301f}.contact .eyebrow{color:#d6ea9e}.contact h2{margin-bottom:26px}.details{align-self:center;border-left:1px solid #71806b;padding-left:30px;overflow-wrap:anywhere}.details .eyebrow{margin:0 0 5px}.details .eyebrow:not(:first-child){margin-top:22px}address{font-style:normal}footer{background:#fff;font-size:.83rem}footer .logo{width:125px}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.bar{min-height:70px;gap:14px}.logo{width:116px}nav{gap:10px;font-size:.74rem}.nav-contact{padding:5px 7px}.hero::before{background-position:58% center}.hero-inner{min-height:540px;padding-block:66px}.about,.contact-inner{grid-template-columns:1fr;gap:24px;padding-block:54px}.units{padding-block:54px}.grid{grid-template-columns:1fr;gap:18px}.details{padding-left:16px}}@media(max-width:380px){.top .bar{align-items:flex-start;flex-direction:column;justify-content:center;gap:8px;padding-block:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.perspectives {
  grid-column: 1 / -1;
  justify-self: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px clamp(8px, 1.4vw, 18px);
  max-width: 100%;
  font-size: clamp(1rem, 1.8vw, 1.32rem);
  font-weight: 700;
}
.perspectives span {
  display: inline-flex;
  align-items: center;
  gap: clamp(8px, 1.4vw, 18px);
  white-space: nowrap;
}
.perspectives b { color: var(--muted); }
.perspectives-result img { width: 48px; height: auto; }

.hero-integration { text-decoration: none; }
.hero-integration:hover, .hero-integration:focus-visible {
  text-decoration: underline;
  text-decoration-thickness: .045em;
  text-underline-offset: .1em;
}

.card .unit-title-large { font-size: clamp(1.48rem, 2.6vw, 2.16rem); }

.card .unit-highlight {
  margin-top: 10px;
  color: var(--accent);
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  font-weight: 750;
}
.unit-link { display: inline-block; margin-top: 4px; font-size: .94rem; }

.card .logistics-efficiency { color: #fdbb26; }

.grid { position: relative; --hub-radius: calc(42px * var(--hub-scale, 1)); }
.grid .units-hub {
  display: grid;
  place-items: center;
  justify-self: center;
  width: 112px;
  aspect-ratio: 1;
  border-radius: 50%;
}
.grid .units-hub img {
  width: 50px;
  height: auto;
  aspect-ratio: auto;
  background: transparent;
}
.units-hub:hover img { transform: scale(1.07); }

@media (min-width: 761px) {
  .grid { grid-auto-rows: 1fr; }
  .grid article {
    mask-image: radial-gradient(circle at var(--hub-corner), transparent var(--hub-radius), #000 calc(var(--hub-radius) + 1px));
  }
  .grid .unit-maquinarias { --hub-corner: calc(100% + 12px) calc(100% + 12px); }
  .grid .unit-produccion { --hub-corner: -12px calc(100% + 12px); }
  .grid .unit-servicios { --hub-corner: calc(100% + 12px) -12px; }
  .grid .unit-logistica { --hub-corner: -12px -12px; }
  .unit-maquinarias .card, .unit-produccion .card { padding-bottom: 74px; }
  .grid .units-hub {
    position: absolute;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    width: 168px;
  }
}

.grid .units-hub img {
  rotate: var(--hub-turn, 0deg);
  scale: var(--hub-scale, 1);
}
@media (min-width: 761px) {
  .grid .units-hub img { width: 58px; }
}
@media (prefers-reduced-motion: reduce) {
  .grid { --hub-radius: 42px; }
  .grid .units-hub img { rotate: none; scale: none; }
}

@media (prefers-reduced-motion: no-preference) {
  .perspectives-result img { rotate: var(--equation-turn, 0deg); }
}

.contact-form summary { cursor: pointer; list-style: none; }
.contact-form summary::-webkit-details-marker { display: none; }
.contact-form[open] summary span { rotate: 180deg; }
.contact-form form { display: grid; gap: 8px; margin-top: 20px; max-width: 460px; }
.contact-form label { font-weight: 650; }
.contact-form input, .contact-form select, .contact-form textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #c9d1c4;
  border-radius: 5px;
  color: var(--ink);
  background: #fff;
  font: inherit;
}
.contact-form textarea { resize: vertical; }
.contact-form form p { margin: 4px 0; font-size: .85rem; }
.contact-form button { justify-self: start; border: 0; cursor: pointer; font-family: inherit; }

.language-switch { display: flex; align-items: center; gap: 8px; }
.language-switch a { display: grid; place-items: center; min-width: 32px; min-height: 32px; border: 1px solid transparent; border-radius: 4px; }
.language-switch a[aria-current="page"] { border-color: #8a9a83; background: #edf0e6; }
.language-switch img { width: 24px; height: 16px; object-fit: cover; border-radius: 2px; }

@media (max-width: 680px) {
  .top .bar { flex-wrap: wrap; justify-content: flex-start; padding-block: 12px; }
  .top nav { width: 100%; flex-wrap: wrap; }
}
