/* Golf v5: tira de medidas, casos marcados, cómo funciona, informe, quién hace qué, vídeo y pie */
:root{--bad:#d64532;--eq:#9a9a9a;--ok:#3f9b4a;--deep:#0f140e;--deep2:#171e15}

/* ---------- Tira «Lo que medimos» ---------- */
.medimos{margin-top:96px}
.md-t{margin:0 0 20px;font:500 22.4px/1.2 var(--disp);color:var(--ink)}
.md-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.md-i{position:relative;display:flex;flex-direction:column;gap:6px;padding:20px 18px 22px;border-left:1px solid var(--line)}
.md-i:first-child{border-left:0;padding-left:0}
.md-i b{font:500 21px/1.1 var(--disp);letter-spacing:-.01em;color:var(--ink)}
.md-i span:not(.md-sw){font-size:14.5px;line-height:1.35;color:var(--ink2)}
.md-sw{display:block;height:6px;width:100%;max-width:120px;margin-bottom:10px;transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease) .25s}
.md-i.in .md-sw,.md-i:not(.rv) .md-sw{transform:none}
.sw-rgb{background:linear-gradient(90deg,#5c7f3b,#8fb258,#c9c08a)}
.sw-ndvi{background:linear-gradient(90deg,#c0392b,#f1c40f,#27ae60)}
.sw-ndre{background:linear-gradient(90deg,#8e44ad,#e67e22,#16a085)}
.sw-term{background:linear-gradient(90deg,#2b1a6b,#8e2fa0,#f08a24,#fde68a)}
.sw-cwsi{background:linear-gradient(90deg,#2f6db5,#e9e3c8,#d64532)}
.sw-orto{background:repeating-linear-gradient(90deg,#7f9f55 0 18px,#6d8c48 18px 20px)}

/* ---------- Qué detectamos: el caso elegido queda marcado ---------- */
.svc-hint{margin:0 0 12px;color:var(--mu)}
.svc-list button:hover:not([aria-selected=true]){background:rgba(0,0,0,.025)}
.svc-list button[aria-selected=true]{background:var(--ink);padding-left:46px;position:relative}
.svc-list button[aria-selected=true] span,.svc-list button[aria-selected=true] sup{color:var(--white)}
.svc-list button[aria-selected=true]::before{content:"";position:absolute;left:22px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--white)}
.svc-list button[aria-selected=true]::after{content:"VIENDO";position:absolute;right:22px;top:50%;transform:translateY(-50%);font:400 11px var(--mono);letter-spacing:.08em;color:rgba(250,250,250,.7)}
@media (max-width:809px){.svc-list button[aria-selected=true]::before{left:10px}.svc-list button[aria-selected=true]::after{right:14px}}

/* ---------- Cómo funciona ---------- */
.flow{display:grid;grid-template-columns:5fr 7fr;gap:48px;margin-top:72px;align-items:start}
.flow-vis{grid-column:2;grid-row:1;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;padding-top:60px}
.flow-steps{grid-column:1;grid-row:1;list-style:none;margin:0;padding:0}
.fs{min-height:72vh;display:flex;flex-direction:column;justify-content:center;padding:24px 0;border-top:1px solid var(--line);opacity:.28;transition:opacity .5s var(--ease)}
.fs:first-child{border-top:0;min-height:56vh;justify-content:flex-start;padding-top:32px}
.fs:last-child{min-height:60vh}
.fs.on{opacity:1}
.fs-n{color:var(--mu)}
.fs h3{margin:10px 0 14px;font:500 clamp(32px,3.4vw,44px)/1.05 var(--disp);letter-spacing:-.02em;color:var(--ink)}
.fs p{margin:0;max-width:30em;font-size:17.6px;line-height:1.5;color:var(--ink2)}
.fs .fs-m{margin-top:16px;color:var(--ink)}
.fv-frame{position:relative;aspect-ratio:1600/893;overflow:hidden;border:1px solid var(--line);background:#2a3322}
.fv-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fv-ndvi{clip-path:inset(0 100% 0 0)}
.fv-term{opacity:0}
.fv-dim{position:absolute;inset:0;background:rgba(15,20,14,.5);opacity:0}
.fv-svg{position:absolute;inset:0;width:100%;height:100%}
.fv-route{fill:none;stroke:#fff;stroke-width:4;stroke-linejoin:round;opacity:.9;filter:drop-shadow(0 0 6px rgba(0,0,0,.35))}
.fd-halo{fill:rgba(255,255,255,.25);stroke:#fff;stroke-width:2}
.fd-dot{fill:#fff}
.fz{opacity:0}
.fz rect,.fz ellipse,.fz circle{fill-opacity:.22;stroke-width:5}
.fz text{font:600 26px var(--mono);letter-spacing:.06em;fill:#fff;text-anchor:middle;paint-order:stroke;stroke:rgba(0,0,0,.55);stroke-width:6px}
.fz-bad *:not(text){fill:var(--bad);stroke:var(--bad)}
.fz-eq *:not(text),.fz-ok *:not(text){fill:#cfcfcf;stroke:#e6e6e6}
.fz-good *:not(text){fill:var(--ok);stroke:#57c264}
.fv-scan{position:absolute;top:0;bottom:0;left:0;width:3px;margin-left:-1px;background:#fff;box-shadow:0 0 18px 4px rgba(255,255,255,.55);opacity:0}
.fv-bands{position:absolute;left:14px;bottom:14px;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.fv-bands li{padding:6px 9px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.55);opacity:0}
.fv-leg{position:absolute;left:14px;bottom:14px;display:flex;gap:14px;margin:0;padding:8px 12px;list-style:none;background:rgba(0,0,0,.6);color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.06em;opacity:0}
.fv-leg li{display:flex;align-items:center;gap:6px}
.fv-leg i,.fv-note i,.ar-sum i,.nt-h i{display:inline-block;width:9px;height:9px;border-radius:50%}
.s-bad{background:var(--bad)}.s-eq{background:var(--eq)}.s-ok{background:var(--ok)}
.fv-note{position:absolute;right:14px;bottom:14px;width:min(320px,62%);padding:14px 16px;background:#fafafa;color:var(--ink);border:1px solid var(--line);opacity:0}
.fv-note p{margin:0;font-size:14.5px;line-height:1.4}
.fv-note .mono{color:var(--mu);margin-bottom:8px}
.fn-t{display:flex;align-items:center;gap:8px;font:500 18px/1.2 var(--disp)!important;margin-bottom:4px!important}
.fn-do{margin-top:8px!important;padding-top:8px;border-top:1px solid var(--line);color:var(--ink)}
.fv-hud{position:absolute;left:14px;top:14px;margin:0;display:flex;gap:10px;align-items:center;padding:7px 10px;background:rgba(0,0,0,.55);color:#fff;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.fv-n{font-weight:700}
.fv-prog{display:flex;gap:6px;margin:12px 0 0;padding:0;list-style:none}
.fv-prog li{flex:1;height:3px;background:var(--line);transition:background .5s}
.fv-prog li.on{background:var(--ink)}
/* sin animación: cada paso enseña su estado final */
.flow.static .fv-route,.flow.static .fv-drone{opacity:0}
.flow.static[data-s="0"] .fv-route{opacity:.9;stroke-dasharray:none}
.flow.static[data-s="1"] .fv-ndvi{clip-path:none}
.flow.static[data-s="1"] .fv-bands li{opacity:1}
.flow.static[data-s="2"] .fv-dim,.flow.static[data-s="3"] .fv-dim{opacity:1}
.flow.static[data-s="2"] .fz,.flow.static[data-s="3"] .fz,.flow.static[data-s="2"] .fv-leg{opacity:1}
.flow.static[data-s="3"] .fv-note{opacity:1}

/* ---------- Vídeo ---------- */
.vid{position:relative;margin:72px 0 0;border:1px solid var(--line);background:#0f140e}
.vid video{display:block;width:100%;height:auto;aspect-ratio:16/9}
.vid figcaption{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--bg);border-top:1px solid var(--line);color:var(--mu)}

/* ---------- Paquetes: quién hace cada cosa ---------- */
.plans{margin-top:72px}
.pl-tg{display:none;position:relative;grid-template-columns:1fr 1fr;padding:4px;margin-bottom:16px;border:1px solid var(--line);background:var(--bg2)}
.pl-tg button{position:relative;z-index:1;padding:12px 8px;border:0;background:none;font:500 14.5px/1.15 var(--sans);color:var(--ink2);cursor:pointer;transition:color .4s}
.pl-tg button[aria-selected=true]{color:var(--white)}
.pl-pill{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--ink);transition:transform .55s var(--ease)}
.plans[data-m=b] .pl-pill{transform:translateX(100%)}
.pl-grid{display:grid;grid-template-columns:220px 1fr 1fr;border:1px solid var(--line);background:#fff}
.pl-c{padding:16px 20px;border-bottom:1px solid var(--line);min-width:0}
.pl-c[data-col=b]{border-left:1px solid var(--line)}
.pl-corner,.pl-head{background:var(--bg);border-bottom:1px solid var(--ink)}
.pl-corner{display:flex;align-items:flex-end;color:var(--mu)}
.pl-head{padding:22px 20px}
.pl-head .mono{color:var(--mu)}
.pl-head h3{margin:8px 0 6px;font:500 clamp(24px,2.4vw,30px)/1.1 var(--disp);letter-spacing:-.015em;color:var(--ink)}
.pl-head p{margin:0;font-size:15px;line-height:1.45;color:var(--ink2)}
.pl-lab{display:flex;align-items:center;font:500 16.5px/1.25 var(--disp);color:var(--ink);border-right:1px solid var(--line)}
.pl-v{display:flex;align-items:flex-start;gap:12px}
.pl-v p{margin:2px 0 0;font-size:15px;line-height:1.4;color:var(--ink2)}
.pl-who{flex:none;min-width:112px;padding:5px 8px;font:400 11px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;text-align:center}
.w-x{background:var(--ink);color:var(--white)}
.w-c{background:#e6efe1;color:#2f5d2a}
.w-n{border:1px dashed var(--line);color:var(--mu)}
.pl-c.same{background:var(--bg)}
.pl-lab.same{color:var(--ink2)}
.pl-foot{border-bottom:0;background:var(--bg)}
.pl-foot p{margin:0 0 4px;font-size:15px;line-height:1.4;color:var(--ink2)}
.pl-foot .btn-sm{margin-top:10px}
.pl-lab.pl-foot{align-items:flex-start;padding-top:20px}
.pl-note{margin:12px 0 0;color:var(--mu)}
/* ---------- Pie ---------- */
.nav.on-foot{background:linear-gradient(rgba(15,20,14,.9),rgba(15,20,14,0))!important}
.foot{position:relative;margin-top:40px;padding:96px 0 0;background:var(--deep);color:#e9ece6;overflow:hidden;isolation:isolate}
.ft-glow{position:absolute;inset:-20% -10% auto;height:70%;z-index:-1;background:radial-gradient(50% 60% at 20% 0%,rgba(63,155,74,.22),transparent 70%),radial-gradient(40% 50% at 90% 10%,rgba(240,138,36,.10),transparent 70%)}
.foot a{color:inherit}
.ft-top{display:grid;grid-template-columns:7fr 4fr;gap:64px;align-items:end;padding-bottom:56px}
.ft-k{display:flex;align-items:center;gap:10px;margin:0 0 20px;color:#9fb197}
.ft-live{width:8px;height:8px;border-radius:50%;background:#5fd16e;box-shadow:0 0 0 0 rgba(95,209,110,.6);animation:live 2s infinite}
@keyframes live{70%{box-shadow:0 0 0 10px rgba(95,209,110,0)}100%{box-shadow:0 0 0 0 rgba(95,209,110,0)}}
.ft-h{margin:0;font:500 clamp(44px,6vw,84px)/.95 var(--disp);letter-spacing:-.04em;color:#fafafa}
.lead-form.ft-form{margin-top:36px;padding:0;grid-template-columns:1fr 1fr 1fr auto;gap:0 20px;color:#fafafa;background:none}
.ft-form label{padding-right:0}
.ft-form .lab{color:#9fb197}
.ft-form input{border-bottom-color:rgba(255,255,255,.35);font-size:16px;padding:8px 0 12px}
.ft-form input:focus{border-bottom-color:#fff}
.ft-form input::placeholder{color:rgba(255,255,255,.4)}
.ft-form .lf-btn{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 22px;background:#fafafa;color:var(--deep);font-weight:600}
.ft-form .lf-btn svg{width:18px;height:18px;transition:transform .3s var(--ease)}
.ft-form .lf-btn:hover svg{transform:translateX(4px)}
.ft-form .lf-ok{color:#b8c2b3;opacity:1}
.lead-form .lf-ok{display:block;position:relative;padding-left:26px}
.lead-form .lf-ok input{position:absolute;left:0;top:0}
.ft-form .lf-msg{color:#fafafa}
.ft-form .lf-msg a{text-decoration:underline}
.ft-info{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.ft-big{display:inline-block;font:500 clamp(26px,2.6vw,36px)/1.15 var(--disp);letter-spacing:-.02em;color:#fafafa;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--ease)}
.ft-big:hover{background-size:100% 1px}
.ft-mail{font-size:clamp(20px,2vw,27px)}
.ft-txt{margin:14px 0 0;max-width:30em;font-size:15px;line-height:1.5;color:#b8c2b3}
.ft-x{margin:14px 0 0;font:500 17px/1.1 var(--disp);color:#d7ddd3}.ft-x span{color:#7f8f78;margin:0 4px}
.ft-bot{display:grid;grid-template-columns:1fr auto;gap:10px 32px;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.12)}
.ft-links{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:15px}
.ft-links a{color:#d7ddd3;transition:color .25s}.ft-links a:hover{color:#fff}
.ft-legal{margin:0;color:#7f8f78;font-size:11px;white-space:nowrap}
.ft-legal a:hover{color:#fff}
.ft-cred{grid-column:1/-1;margin:0;max-width:110ch;color:#5f6d59;font-size:10.5px;line-height:1.6;text-transform:none;letter-spacing:0}
.ft-mark{position:relative;margin-top:28px;height:clamp(80px,15vw,210px);text-align:center;line-height:.8;overflow:hidden}
.ft-mark span{display:inline-block;font:600 clamp(120px,22vw,320px)/.82 var(--disp);letter-spacing:-.06em;color:transparent;background:url(../img/hole-thermal.webp) 50% 0/120% auto;-webkit-background-clip:text;background-clip:text;opacity:.9}
@media (max-width:1199.98px){
  .md-strip{grid-template-columns:repeat(3,1fr)}
  .md-i:nth-child(4){border-left:0;padding-left:0}
  .md-i:nth-child(n+4){border-top:1px solid var(--line)}
  .flow{grid-template-columns:1fr 1fr;gap:32px}
  .ft-top{grid-template-columns:1fr;gap:40px;align-items:start}
  .ft-info{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:6px 28px}
  .ft-txt,.ft-x{flex-basis:100%}
}
@media (max-width:809.98px){
  .pl-tg{display:grid}
  .pl-grid{grid-template-columns:110px 1fr}
  .plans[data-m=a] .pl-c[data-col=b],.plans[data-m=b] .pl-c[data-col=a]{display:none}
  .pl-c[data-col=b]{border-left:0}
  .pl-corner{display:none}
  .pl-head{grid-column:1/-1}
  .pl-c{padding:14px 12px}
  .pl-lab{font-size:14.5px}
  .pl-v{flex-direction:column;gap:6px}
  .pl-who{min-width:0}
  .medimos{margin-top:64px}
  .md-strip{grid-template-columns:1fr 1fr}
  .md-i{padding:16px 12px 18px}
  .md-i:nth-child(odd){border-left:0;padding-left:0}
  .md-i:nth-child(4){border-left:1px solid var(--line);padding-left:12px}
  .md-i:nth-child(n+3){border-top:1px solid var(--line)}
  .md-i b{font-size:19px}
  .flow{display:block;margin-top:48px}
  .flow-vis{position:sticky;top:60px;height:auto;display:block;z-index:2;background:var(--bg);padding:8px 0 10px;box-shadow:0 -70px 0 0 var(--bg)}
  .fs,.fs:first-child,.fs:last-child{min-height:62vh;justify-content:flex-start;padding:28px 0}
  .fs h3{font-size:32px}
  .fz text{font-size:30px}
  .fv-note{width:auto;left:10px;right:10px;bottom:10px;padding:10px 12px}
  .fv-note p{font-size:13px}.fn-t{font-size:15px!important}
  .fv-bands{left:8px;bottom:8px}.fv-bands li{padding:4px 6px;font-size:9.5px}
  .fv-leg{left:8px;bottom:8px}
  .foot{padding-top:72px}
  .lead-form.ft-form{grid-template-columns:1fr;gap:22px}
  .ft-form .lf-btn{justify-content:center}
  .ft-bot{grid-template-columns:1fr;gap:14px}
  .ft-legal{white-space:normal}
}
@media (prefers-reduced-motion:reduce){.md-sw{transform:none}.pl-pill{transition:none}}

/* Ajustes de móvil: orden de la portada, letra mínima legible y zonas de toque de 44 px */
@media (max-width:809.98px){
  .hero-title{order:1;font-size:clamp(52px,16vw,72px);margin:0 0 18px}
  .hero-mid{order:2;margin-top:0;padding-top:0}
  .hero-form{order:3;margin-top:28px}
  .hero-stats{gap:6px 18px;font-size:12px}
  .hero a[href^="tel"]{display:inline-block;padding:10px 0}
  .burger{width:44px;height:44px}
  .burger span:first-child{top:18px}.burger span:last-child{top:25px}
  .menu a{padding:6px 0}
  .why-art figcaption,.svc-img .ndvi span.lb{font-size:11px}
  .fv-bands li{font-size:11px}
  .pl-who{font-size:12px}
  .lf-ok{font-size:14px}
  .lf-ok a{display:inline-block;padding:8px 0;margin:-8px 0}
  .ft-links{gap:0 22px;font-size:16px}
  .ft-links a{display:inline-block;padding:11px 0}
  .ft-info a{display:inline-block;padding:6px 0}
  .ft-legal{font-size:12px;line-height:1.5}
  .ft-legal a{display:inline-block;padding:12px 4px;margin:-8px 0}
  .ft-cred{font-size:11.5px}
  .ft-mark{height:28vw;margin-top:20px}
  .ft-mark span{font-size:34vw}
  .faq-i summary{padding:20px 40px 20px 0;min-height:44px}
  .logo{display:inline-flex;align-items:center;min-height:44px}
  .link-ne{display:inline-flex;align-items:center;min-height:44px}
  .ft-mail{display:inline-block;padding:5px 0}
  .cap-tabs button,.cap button{min-height:44px}
  .crumbs a{display:inline-block;padding:12px 0;margin:-12px 0}
  .fs,.fs:first-child,.fs:last-child{min-height:50vh}
}
