:root{
  --green:#006b3a;
  --green-dark:#003d22;
  --red:#d8241c;
  --yellow:#f4bd00;
  --black:#17120f;
  --white:#ffffff;
  --soft:#f8f8f4;
  --line:#ece9dd;
  --muted:#636363;
  --shadow:0 22px 55px rgba(0,0,0,.14);
  --radius:28px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;background:var(--white);color:var(--black);line-height:1.65;overflow-x:hidden}
a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(1140px,92%);margin:auto}.section{padding:90px 0}.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:14px}.brand-logo{width:74px;height:58px;object-fit:contain}.brand strong{display:block;font-size:1.4rem;color:var(--green);letter-spacing:.12em}.brand span{display:block;color:var(--muted);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.links{display:flex;gap:8px;align-items:center}.links a{padding:10px 14px;border-radius:999px;font-weight:800;font-size:.93rem}.links a:hover{background:var(--green);color:#fff}.menu-btn{display:none;background:var(--black);border:0;border-radius:12px;width:46px;height:42px;padding:10px}.menu-btn span{display:block;height:3px;background:#fff;border-radius:999px;margin:5px 0}.hero{position:relative;padding:95px 0 110px;overflow:hidden;background:radial-gradient(circle at 15% 10%,rgba(244,189,0,.18),transparent 28%),radial-gradient(circle at 92% 10%,rgba(0,107,58,.14),transparent 32%),linear-gradient(180deg,#fff,#fbfbf6)}.hero:before{content:"";position:absolute;inset:auto -120px -190px auto;width:460px;height:460px;border:48px solid rgba(216,36,28,.11);border-radius:50%;z-index:0}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:48px}.tag{display:inline-flex;align-items:center;gap:10px;background:#fff8db;color:var(--black);border:1px solid rgba(244,189,0,.55);padding:8px 14px;border-radius:999px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;margin-bottom:18px}.tag:before{content:"";width:10px;height:10px;background:var(--red);border-radius:50%}.tag.light{background:rgba(255,255,255,.13);color:#fff;border-color:rgba(255,255,255,.3)}h1{font-size:clamp(2.55rem,6vw,5.1rem);line-height:.95;letter-spacing:-.05em;margin-bottom:14px}h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;margin-bottom:18px}.hero-text h2{color:var(--green);letter-spacing:.24em;font-size:clamp(2rem,5vw,4.4rem)}.lead,.subtitle{font-size:1.12rem;color:#454545;max-width:720px}.buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:14px 22px;border-radius:999px;font-weight:900;transition:.2s ease;border:2px solid transparent}.btn:hover{transform:translateY(-2px)}.primary{background:var(--green);color:#fff;box-shadow:0 14px 28px rgba(0,107,58,.22)}.secondary{background:#fff;border-color:var(--black);color:var(--black)}.white{background:#fff;color:var(--green-dark)}.full{width:100%;margin-top:20px}.hero-logo{background:#fff;border-radius:36px;padding:28px;box-shadow:var(--shadow);border:1px solid var(--line);position:relative}.hero-logo img{width:100%;max-height:430px;object-fit:contain}.badge{position:absolute;left:24px;right:24px;bottom:24px;background:var(--yellow);color:#17120f;border-radius:18px;padding:14px;text-align:center;font-weight:950;box-shadow:0 10px 24px rgba(0,0,0,.14)}.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:center}.text-card{background:var(--soft);border:1px solid var(--line);border-left:8px solid var(--red);border-radius:var(--radius);padding:34px;font-size:1.22rem;font-weight:800;box-shadow:0 14px 35px rgba(0,0,0,.06)}.center{text-align:center;max-width:820px;margin:0 auto 38px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:0 12px 34px rgba(0,0,0,.07);position:relative;overflow:hidden}.card:before{content:"";position:absolute;inset:0 0 auto 0;height:7px;background:linear-gradient(90deg,var(--green),var(--red),var(--yellow))}.card span{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--black);color:#fff;font-weight:950;margin-bottom:18px}.card h3{font-size:1.35rem;line-height:1.16;margin-bottom:12px}.card p{color:#555}.conocer{padding-top:40px}.conocer-box{background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;border-radius:34px;padding:46px;display:flex;justify-content:space-between;gap:28px;align-items:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.conocer-box:after{content:"";position:absolute;right:-60px;top:-90px;width:230px;height:230px;background:var(--red);border-radius:50%;opacity:.25}.conocer-box>*{position:relative;z-index:1}.contact{background:linear-gradient(180deg,#fff,var(--soft))}.contact-grid{display:grid;grid-template-columns:1fr 430px;gap:34px;align-items:center}.contact-card{background:#fff;border-radius:32px;border:1px solid var(--line);padding:34px;box-shadow:var(--shadow)}.contact-card p{color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.contact-card strong{display:block;font-size:2.1rem;margin-top:8px;color:var(--red)}.footer{background:var(--black);color:#fff;padding:30px 0}.footer-content{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;color:#e8e8e8}.reveal{opacity:0;transform:translateY(18px);transition:.55s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:880px){.menu-btn{display:block}.links{position:absolute;left:4%;right:4%;top:88px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:16px;display:none;flex-direction:column;align-items:stretch}.links.open{display:flex}.links a{text-align:center}.hero-grid,.two-col,.contact-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.conocer-box{display:block}.conocer-box .btn{margin-top:20px}.brand span{display:none}.section{padding:68px 0}.hero{padding:70px 0}.badge{position:static;margin-top:14px}.footer-content{display:block}.footer-content p+p{margin-top:8px}}@media(max-width:520px){.brand-logo{width:60px}.brand strong{font-size:1.12rem}h1{font-size:2.55rem}.contact-card strong{font-size:1.65rem}.hero-logo{padding:18px}.nav{height:78px}.links{top:78px}}
