
:root { --ink:#073f47; --blue:#138b49; --cyan:#39ba72; --paper:#f3f8f5; --line:#d8e6de; --deep:#043c44; --green:#168e4b; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fff; color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
.topbar { height:92px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #dce8e0; background:#fff; color:var(--deep); position:relative; z-index:20; }
.brand { display:flex; align-items:center; }
.brand img { display:block; width:245px; max-height:70px; object-fit:contain; object-position:left center; }
nav { display:flex; gap:36px; font-size:13px; color:#315f63; font-weight:700; }
nav a:hover { color:var(--green); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:24px; background:var(--green); color:white; padding:17px 24px; border-radius:4px; font-size:13px; font-weight:800; letter-spacing:.01em; transition:.2s; box-shadow:0 10px 30px rgba(22,142,75,.2); }
.button:hover { transform:translateY(-2px); background:#0f753d; }
.button-small { padding:12px 18px; box-shadow:none; }
.hero { min-height:690px; padding:75px 7vw 70px; display:grid; grid-template-columns:1.08fr .92fr; gap:7vw; align-items:center; overflow:hidden; background:radial-gradient(circle at 79% 35%,#126353 0,#07504d 25%,#043c44 62%); color:#fff; }
.eyebrow { display:flex; align-items:center; gap:10px; text-transform:uppercase; letter-spacing:.18em; font-size:11px; font-weight:800; color:#83e0a8; }
.eyebrow span { width:28px; height:2px; background:var(--cyan); }
.hero h1,.section h2,.rental h2 { margin:23px 0; font-size:clamp(45px,5.3vw,76px); line-height:.99; letter-spacing:-.055em; max-width:760px; }
em { color:var(--cyan); font-style:normal; }
.hero-text { max-width:620px; font-size:18px; line-height:1.7; color:#aebdca; }
.hero-actions { display:flex; align-items:center; gap:31px; margin-top:36px; }
.text-link { font-size:13px; font-weight:800; color:#dbe5ec; }
.text-link span { margin-left:10px; color:var(--cyan); }
.hero-proof { display:flex; gap:0; margin-top:56px; border-top:1px solid #274052; padding-top:25px; }
.hero-proof div { padding-right:34px; margin-right:34px; border-right:1px solid #274052; }
.hero-proof div:last-child { border:0; }
.hero-proof strong,.hero-proof span { display:block; }
.hero-proof strong { font-size:14px; color:#fff; }
.hero-proof span { color:#708697; font-size:11px; margin-top:5px; }
.hero-visual { height:510px; position:relative; display:grid; place-items:center; }
.hero-visual:before { content:""; width:390px; height:390px; position:absolute; border:1px solid #2d766b; border-radius:50%; box-shadow:0 0 100px rgba(57,186,114,.14); }
.hero-visual:after { content:""; width:290px; height:290px; position:absolute; border:1px dashed #3b806f; border-radius:50%; }
.signal { position:absolute; border-radius:50%; border:1px solid #1d465c; }
.signal-one { width:480px; height:480px; }
.signal-two { width:560px; height:560px; opacity:.35; }
.tech-card { position:absolute; z-index:2; background:rgba(4,60,68,.92); border:1px solid #37796f; box-shadow:0 24px 60px rgba(0,0,0,.35); backdrop-filter:blur(10px); }
.card-main { width:310px; height:330px; border-radius:18px; padding:24px; }
.card-label { font-size:10px; color:#7f9aae; text-transform:uppercase; letter-spacing:.16em; }
.monitor { margin-top:43px; }
.monitor-screen { height:125px; border:8px solid #dbe4e9; border-bottom-width:13px; border-radius:6px; background:linear-gradient(145deg,#087063,#1aa052); display:grid; place-items:center; color:white; font-weight:900; letter-spacing:.1em; position:relative; }
.monitor-screen i { width:50px; height:4px; border-radius:10px; background:rgba(255,255,255,.4); position:absolute; bottom:26px; }
.monitor-base { width:76px; height:31px; margin:auto; border-bottom:6px solid #dbe4e9; border-left:15px solid transparent; border-right:15px solid transparent; }
.status { margin-top:26px; display:flex; gap:9px; align-items:center; color:#bbcad5; font-size:11px; }
.status i { width:8px; height:8px; border-radius:50%; background:#45e3a5; box-shadow:0 0 10px #45e3a5; }
.card-labeler,.card-shield { border-radius:11px; padding:15px 17px; display:flex; align-items:center; gap:12px; min-width:170px; }
.card-labeler { left:0; bottom:85px; }
.card-shield { right:-15px; top:70px; }
.mini-icon { width:37px; height:37px; border-radius:8px; display:grid; place-items:center; background:var(--green); font-weight:900; }
.tech-card b,.tech-card small { display:block; }
.tech-card b { font-size:12px; }.tech-card small { color:#7590a2; font-size:9px; margin-top:4px; }
.brand-strip { min-height:73px; display:flex; align-items:center; justify-content:space-around; gap:18px; padding:20px 5vw; background:var(--green); color:white; font-size:11px; font-weight:900; letter-spacing:.14em; }
.brand-strip i { color:#a4e9be; font-style:normal; font-size:18px; }
.section { padding:110px 7vw; }
.maintenance { background:#fff; }
.maintenance-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin-bottom:55px; }
.maintenance-heading h2 { font-size:clamp(40px,4.4vw,64px); margin:18px 0 0; line-height:1; letter-spacing:-.05em; }.maintenance-heading h2 em { color:var(--green); }
.maintenance-heading>p { max-width:420px; color:#61746e; line-height:1.75; font-size:15px; }
.maintenance-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.maintenance-card { padding:48px; border:1px solid var(--line); background:#f6faf7; }
.maintenance-card.primary { background:var(--deep); color:#fff; border-color:var(--deep); }
.maintenance-tag { color:var(--green); font-size:10px; font-weight:900; letter-spacing:.16em; }.maintenance-card.primary .maintenance-tag { color:#75dfa0; }
.maintenance-card h3 { font-size:clamp(27px,3vw,39px); line-height:1.08; letter-spacing:-.035em; margin:20px 0; max-width:520px; }
.maintenance-card p { color:#62766f; font-size:14px; line-height:1.7; max-width:560px; }.maintenance-card.primary p { color:#b8ceca; }
.maintenance-card ul { list-style:none; padding:0; margin:27px 0 32px; display:grid; grid-template-columns:1fr 1fr; gap:12px; font-size:12px; font-weight:800; }
.maintenance-card li:before { content:"✓"; color:var(--green); margin-right:9px; }.maintenance-card.primary li:before { color:#6be29a; }
.maintenance-process { margin-top:22px; border:1px solid var(--line); padding:22px 28px; display:flex; align-items:center; justify-content:space-between; color:#648078; font-size:11px; }
.maintenance-process span { color:var(--green); font-weight:900; }.maintenance-process b { color:var(--deep); margin-left:9px; }.maintenance-process i { color:#a5bbb4; font-style:normal; }
.solutions { background:var(--paper); }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin-bottom:60px; }
.section-heading h2,.support h2 { font-size:clamp(38px,4vw,58px); margin:18px 0 0; }
.eyebrow.dark { color:#4b7086; }.eyebrow.dark span { background:var(--blue); }
.section-heading>p { max-width:390px; color:#667782; line-height:1.7; font-size:15px; }
.section h2 em,.support h2 em { color:var(--blue); }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.service-card { min-height:305px; padding:35px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff; transition:.25s; }
.service-card:hover { transform:translateY(-5px); box-shadow:0 22px 55px rgba(25,49,70,.1); position:relative; z-index:2; }
.service-number { color:var(--blue); font-size:11px; font-weight:900; }
.service-card h3 { font-size:20px; margin:32px 0 14px; max-width:250px; }
.service-card p { color:#687783; line-height:1.65; font-size:13px; min-height:70px; }
.service-card a { display:flex; justify-content:space-between; margin-top:28px; padding-top:18px; border-top:1px solid #edf0f2; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.12em; }
.service-card a span { color:var(--blue); font-size:17px; }
.rental { background:var(--deep); color:#fff; padding:110px 7vw; display:grid; grid-template-columns:.9fr 1.1fr; gap:10vw; align-items:center; }
.rental h2 { font-size:clamp(42px,4.5vw,65px); }
.rental-intro>p:not(.eyebrow) { color:#91a4b2; line-height:1.75; max-width:500px; font-size:15px; }
.button.light { margin-top:25px; background:#66d38f; color:#063e34; box-shadow:none; }
.rental-list { border-top:1px solid #294052; }
.rental-list article { display:grid; grid-template-columns:45px 1fr 25px; align-items:center; gap:20px; padding:27px 5px; border-bottom:1px solid #294052; }
.rental-list article>span { color:var(--cyan); font-size:11px; }.rental-list h3 { margin:0 0 6px; font-size:18px; }.rental-list p { margin:0; color:#8396a5; font-size:12px; line-height:1.5; }.rental-list b { color:var(--cyan); }
.support { background:#fff; }
.support-panel { min-height:535px; display:grid; grid-template-columns:1fr 1.05fr; background:#eff3f6; }
.support-graphic { position:relative; overflow:hidden; background:radial-gradient(circle,#126353 0,#07504d 45%,#043c44 72%); display:grid; place-items:center; }
.orbit { width:260px; height:260px; border:1px solid #2e5268; border-radius:50%; display:grid; place-items:center; box-shadow:0 0 0 70px rgba(41,90,116,.08),0 0 0 140px rgba(41,90,116,.05); }
.orbit span { width:110px; height:110px; display:grid; place-items:center; border-radius:22px 22px 22px 5px; background:linear-gradient(135deg,#47c87c,#168e4b); color:white; font-size:34px; font-weight:900; box-shadow:0 0 40px rgba(57,186,114,.28); }
.dot { width:10px; height:10px; border-radius:50%; position:absolute; background:var(--cyan); box-shadow:0 0 15px var(--cyan); }.d1{top:22%;left:25%}.d2{bottom:20%;right:23%}.d3{top:49%;right:14%}
.support-copy { padding:65px; }
.support-copy h2 { font-size:clamp(34px,3.3vw,48px); }
.support-copy>p:not(.eyebrow) { color:#647581; line-height:1.65; font-size:14px; }
.support-copy ul { list-style:none; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:28px 0; font-size:12px; font-weight:700; }
.support-copy li { display:flex; gap:9px; align-items:center; }.support-copy li i { width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#d9f4fa;color:#0b7f9a;font-style:normal;font-size:10px; }
footer { min-height:120px; display:flex; align-items:center; justify-content:space-between; gap:30px; padding:30px 7vw; background:#032f35; color:#91afb0; font-size:10px; }
.footer-brand { background:#fff; border-radius:5px; padding:6px 10px; }.footer-brand img { width:185px; max-height:53px; }
.floating-wa { position:fixed; right:22px; bottom:22px; width:52px; height:52px; display:grid; place-items:center; z-index:30; border-radius:50%; background:#25d366; color:white; font-size:12px; font-weight:900; box-shadow:0 10px 30px rgba(0,0,0,.22); }
@media (max-width:900px) {
  nav { display:none; }.topbar { padding:0 20px; }.button-small { font-size:0; padding:12px; }.button-small:after { content:"Cotizar"; font-size:12px; }
  .hero { grid-template-columns:1fr; padding:65px 25px; }.hero-visual { height:440px; max-width:520px; width:100%; margin:auto; }.hero-proof { flex-wrap:wrap; row-gap:22px; }
  .brand-strip span:nth-of-type(4),.brand-strip span:nth-of-type(5),.brand-strip i:nth-of-type(4) { display:none; }
  .section,.rental { padding:80px 25px; }.section-heading,.maintenance-heading { align-items:flex-start; flex-direction:column; }.service-grid { grid-template-columns:1fr 1fr; }.maintenance-grid { grid-template-columns:1fr; }.maintenance-process { gap:14px; flex-wrap:wrap; }
  .rental { grid-template-columns:1fr; }.support-panel { grid-template-columns:1fr; }.support-graphic { min-height:420px; }
}
@media (max-width:600px) {
  .brand img { width:190px; }.hero h1 { font-size:45px; }.hero-actions { align-items:flex-start; flex-direction:column; }.hero-proof div { width:45%; margin-right:10px; padding-right:10px; }.hero-visual { transform:scale(.86); margin:-25px 0; }.card-shield { right:-40px; }.card-labeler { left:-35px; }
  .brand-strip { justify-content:center; }.brand-strip span:nth-of-type(3),.brand-strip i:nth-of-type(3) { display:none; }.service-grid { grid-template-columns:1fr; }.service-card { min-height:270px; }.maintenance-card { padding:35px 25px; }.maintenance-card ul { grid-template-columns:1fr; }.maintenance-process { align-items:flex-start; flex-direction:column; }.maintenance-process i { transform:rotate(90deg); }.support-copy { padding:42px 28px; }.support-copy ul { grid-template-columns:1fr; } footer { flex-direction:column; text-align:center; }
}
