:root{--navy:#061425;--navy2:#0a1e35;--ink:#101820;--yellow:#f5c338;--yellow2:#ffcf41;--paper:#f1f0eb;--white:#fff;--muted:#69737d;--line:#d6d8d6;--darkline:rgba(255,255,255,.12);--max:1340px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);overflow-x:hidden}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(var(--max),calc(100% - 54px));margin:auto}.noise{position:fixed;inset:0;pointer-events:none;z-index:999;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.site-header{position:fixed;top:0;left:0;right:0;z-index:80;border-bottom:1px solid var(--darkline);background:rgba(6,20,37,.82);backdrop-filter:blur(18px)}.nav{height:82px;display:flex;align-items:center;gap:34px;color:#fff}.brand img{display:block;width:210px;filter:brightness(1.16)}.nav-center{margin-left:auto;display:flex;gap:14px;align-items:center;font-size:.72rem;letter-spacing:.12em;color:#aab4bf;text-transform:uppercase}.nav-index{color:var(--yellow);font-weight:900}.nav-links{display:flex;align-items:center;gap:24px;font-size:.83rem;font-weight:700}.nav-links>a:not(.btn){color:#d9e0e6;transition:.2s}.nav-links>a:not(.btn):hover{color:#fff}.menu-toggle{display:none;border:0;background:none;color:#fff;font-size:1.45rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;padding:14px 18px;font-weight:900;letter-spacing:.02em;transition:.3s var(--ease)}.btn.primary{background:var(--yellow);color:var(--navy)}.btn.primary:hover{background:#ffd657;transform:translateY(-2px)}.btn.dark{background:var(--navy);color:#fff}.btn.dark:hover{background:var(--navy2);transform:translateY(-2px)}.btn.sm{padding:10px 13px;font-size:.78rem}.text-link{display:inline-flex;align-items:center;gap:12px;color:#fff;font-weight:800;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:5px}.dark-link{color:var(--navy);border-color:rgba(6,20,37,.3)}
.hero{min-height:830px;position:relative;display:flex;align-items:center;background:var(--navy);color:#fff;overflow:hidden;padding-top:82px}.hero:before{content:"";position:absolute;width:760px;height:760px;border:1px solid rgba(245,195,56,.18);border-radius:50%;right:-180px;top:-140px;box-shadow:0 0 0 120px rgba(245,195,56,.025),0 0 0 240px rgba(245,195,56,.015)}.hero-gridline{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:78px 78px;mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.7) 55%,transparent 100%)}.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:1.03fr .97fr;gap:72px;align-items:center;padding:86px 0}.kicker{font-size:.72rem;letter-spacing:.14em;font-weight:800;color:#bbc4cd;display:flex;align-items:center;gap:10px}.dot{width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 6px rgba(245,195,56,.12)}.hero h1{font-size:clamp(4.7rem,8vw,8.1rem);line-height:.84;letter-spacing:-.075em;margin:38px 0 34px;font-weight:820}.hero h1 span{color:#fff}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--yellow);letter-spacing:-.06em}.hero-copy>p{max-width:670px;font-size:1.12rem;line-height:1.75;color:#b9c4ce}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.hero-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--darkline);margin-top:56px;padding-top:24px;gap:18px}.hero-stat strong{display:block;font-size:2.2rem;color:#fff;letter-spacing:-.05em}.hero-stat span{font-size:.68rem;letter-spacing:.1em;color:#8f9dab;text-transform:uppercase}.hero-control{align-self:stretch;display:flex;align-items:center}.featured-card{width:100%;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 90px rgba(0,0,0,.3);backdrop-filter:blur(10px);position:relative}.featured-media{height:330px;position:relative;overflow:hidden;background:#0e2540}.featured-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.04)}.featured-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,20,37,.88))}.featured-label{position:absolute;top:18px;left:18px;background:var(--yellow);color:var(--navy);padding:8px 10px;font-weight:900;font-size:.68rem;letter-spacing:.12em}.featured-body{padding:26px}.featured-top{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.featured-top small{display:block;color:#8fa0af;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.featured-top h3{margin:0;font-size:1.45rem}.featured-progress{font-size:2rem;font-weight:900;color:var(--yellow)}.progress-track{height:7px;background:rgba(255,255,255,.12);margin:22px 0 20px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--yellow)}.featured-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.featured-facts div{border-left:1px solid var(--darkline);padding-left:12px}.featured-facts small{color:#8fa0af;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase}.featured-facts b{display:block;margin-top:5px;font-size:.86rem}.hero-word{position:absolute;right:-18px;bottom:-88px;color:rgba(255,255,255,.025);font-weight:900;font-size:18vw;letter-spacing:-.08em;line-height:1;pointer-events:none}.ticker{background:var(--yellow);color:var(--navy);overflow:hidden;white-space:nowrap;border-block:1px solid rgba(6,20,37,.22)}.ticker div{display:inline-block;font-size:.72rem;font-weight:900;letter-spacing:.14em;padding:14px 0;animation:ticker 25s linear infinite}.ticker b{margin:0 28px}@keyframes ticker{to{transform:translateX(-35%)}}
.section{padding:120px 0}.editorial-head{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end;margin-bottom:62px}.section-no{font-size:.68rem;font-weight:900;letter-spacing:.16em;color:#7a8288}.editorial-head h2,.method-sticky h2,.system-copy h2{font-size:clamp(3rem,5.5vw,5.8rem);line-height:.94;letter-spacing:-.065em;margin:18px 0 0}.editorial-head h2 em,.method-sticky h2 em{font-family:Georgia,serif;font-weight:400;color:#68727a}.editorial-head p,.method-sticky p,.system-copy p{color:var(--muted);line-height:1.8;font-size:1rem}.project-lab{background:#f7f6f1}.project-console{display:grid;grid-template-columns:minmax(250px,1fr) auto 220px;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);padding:12px;margin-bottom:28px;position:sticky;top:96px;z-index:30;box-shadow:0 14px 40px rgba(10,20,30,.06)}.console-search{display:flex;gap:10px;align-items:center;padding:0 10px}.console-search span{font-size:1.3rem}.console-search input,.project-console select{width:100%;border:0;background:transparent;outline:0;padding:12px;color:var(--ink)}.project-console select{border-left:1px solid var(--line);padding-left:18px}.chip-row{display:flex;gap:8px;flex-wrap:wrap}.status-chip{border:1px solid var(--line);background:#fff;color:#5a646c;padding:9px 11px;font-size:.74rem;font-weight:850}.status-chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}.project-card{grid-column:span 4;background:#fff;border:1px solid var(--line);overflow:hidden;min-height:520px;display:flex;flex-direction:column;transition:.35s var(--ease);position:relative}.project-card:nth-child(1),.project-card:nth-child(5){grid-column:span 8}.project-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(5,19,35,.12)}.project-media{height:290px;background:var(--navy);overflow:hidden;position:relative}.project-card:nth-child(1) .project-media,.project-card:nth-child(5) .project-media{height:370px}.project-media img{width:100%;height:100%;object-fit:cover;transition:.6s var(--ease)}.project-card:hover .project-media img{transform:scale(1.035)}.project-code{position:absolute;top:18px;left:18px;background:#fff;color:var(--navy);padding:8px 10px;font-size:.66rem;letter-spacing:.11em;font-weight:900}.project-body{padding:24px;display:flex;flex-direction:column;flex:1}.project-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#737b81}.project-status{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:850}.project-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#9ca4aa}.project-status.progress:before{background:var(--yellow)}.project-status.done:before{background:#3b976c}.project-card h3{font-size:1.7rem;letter-spacing:-.035em;margin:18px 0 8px}.project-card p{margin:0;color:var(--muted)}.project-progress{display:flex;align-items:center;gap:14px;margin-top:auto;padding-top:26px}.project-progress .line{height:4px;flex:1;background:#e7e7e3}.project-progress .line span{display:block;height:100%;background:var(--navy)}.project-progress b{font-size:.76rem}.project-open{margin-top:22px;border:0;border-top:1px solid var(--line);background:transparent;padding:16px 0 0;text-align:left;font-weight:900;color:var(--navy);display:flex;justify-content:space-between}.empty-state{grid-column:1/-1;padding:60px;text-align:center;background:#fff;border:1px solid var(--line);color:var(--muted)}
.live-strip{background:var(--navy);color:#fff;padding:48px 0}.live-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:center}.live-title{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}.live-title p{grid-column:2;margin:4px 0 0;color:#95a4b2}.live-pulse{width:10px;height:10px;background:var(--yellow);border-radius:50%;box-shadow:0 0 0 8px rgba(245,195,56,.1);animation:pulse 1.8s ease infinite}@keyframes pulse{50%{box-shadow:0 0 0 14px rgba(245,195,56,0)}}.live-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12)}.live-item{background:var(--navy);padding:18px 20px}.live-item small{font-size:.63rem;letter-spacing:.1em;color:#8f9eab;text-transform:uppercase}.live-item strong{display:block;margin:7px 0 10px;font-size:.9rem}.live-item span{color:var(--yellow);font-weight:900;font-size:.82rem}
.capabilities{background:#fff}.capability-stack{border-top:1px solid var(--line)}.capability{border-bottom:1px solid var(--line)}.capability button{width:100%;border:0;background:transparent;display:grid;grid-template-columns:80px 1fr auto;align-items:center;text-align:left;padding:26px 8px;color:var(--ink)}.capability button span{font-size:.7rem;letter-spacing:.13em;color:#8c9296}.capability button strong{font-size:clamp(1.5rem,3vw,2.8rem);letter-spacing:-.045em}.capability button em{font-style:normal;font-size:2rem;transition:.3s}.capability>div{display:none;grid-template-columns:1fr 1fr;gap:60px;padding:0 88px 30px}.capability.active>div{display:grid}.capability.active button em{transform:rotate(45deg)}.capability p{max-width:650px;line-height:1.7;color:var(--muted)}.capability small{align-self:end;font-weight:900;letter-spacing:.11em;color:#8a9298}
.method{background:#e8e7e2}.method-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.method-sticky{position:sticky;top:125px;height:max-content}.method-steps{border-top:1px solid #c9cbc9}.method-steps article{display:grid;grid-template-columns:100px 1fr;gap:24px;padding:42px 0;border-bottom:1px solid #c9cbc9}.method-steps article>span{font-size:.72rem;font-weight:900;letter-spacing:.12em;color:#767e84}.method-steps h3{font-size:2rem;margin:0 0 10px;letter-spacing:-.04em}.method-steps p{margin:0;color:var(--muted);line-height:1.7}.system-section{background:var(--yellow)}.system-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.system-copy p{color:#5a5135;max-width:570px}.system-copy .btn{margin-top:18px}.system-ui{background:var(--navy);box-shadow:20px 25px 0 rgba(6,20,37,.13);min-height:430px;border:1px solid rgba(6,20,37,.35)}.ui-top{height:48px;border-bottom:1px solid var(--darkline);display:flex;gap:7px;align-items:center;padding:0 16px;color:#fff}.ui-top span{width:8px;height:8px;border-radius:50%;background:#33475b}.ui-top span:first-child{background:var(--yellow)}.ui-top b{font-size:.65rem;letter-spacing:.12em;margin-left:10px}.ui-grid{display:grid;grid-template-columns:120px 1fr;height:380px}.ui-side{border-right:1px solid var(--darkline);padding:30px 18px}.ui-side i{display:block;height:9px;background:#24394e;margin-bottom:18px}.ui-side i:first-child{background:var(--yellow);width:75%}.ui-main{padding:28px}.ui-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ui-cards i{height:70px;background:#102a46;border:1px solid #1c3b59}.ui-chart{height:155px;margin-top:24px;border-left:1px solid #23415e;border-bottom:1px solid #23415e;display:flex;gap:11px;align-items:flex-end;padding:0 18px}.ui-chart span{flex:1;background:var(--yellow);opacity:.88}.ui-lines{margin-top:24px}.ui-lines i{display:block;height:9px;background:#15314c;margin:12px 0}.ui-lines i:nth-child(2){width:78%}.ui-lines i:nth-child(3){width:52%}
.contact-section{background:#fff;padding:120px 0}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px}.contact-title h2{font-size:clamp(4rem,7vw,7rem);line-height:.88;letter-spacing:-.07em;margin:28px 0}.contact-title h2 em{font-family:Georgia,serif;color:#747c82;font-weight:400}.contact-title>p{color:var(--muted);line-height:1.7;max-width:500px}.contact-data{display:grid;margin-top:45px}.contact-data a,.contact-data span{padding:11px 0;border-bottom:1px solid var(--line);font-size:.9rem}.quote-form{background:#f0efe9;border-top:5px solid var(--navy);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-index{grid-column:1/-1;font-size:.68rem;letter-spacing:.14em;font-weight:900;color:#7d858a;margin-bottom:8px}.quote-form label{display:grid;gap:8px;font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;font-weight:900;color:#6e767c}.quote-form input,.quote-form select,.quote-form textarea{border:0;border-bottom:1px solid #bcc1c2;background:transparent;padding:13px 0;outline:0;color:var(--ink);text-transform:none;letter-spacing:normal;font-weight:500}.quote-form textarea{resize:vertical}.wide{grid-column:1/-1}.form-actions{display:flex;gap:24px;align-items:center;margin-top:8px}.form-msg{display:none;grid-column:1/-1;background:#e4f3ea;color:#206944;padding:12px 14px;font-size:.83rem}.footer{background:var(--navy);color:#fff;padding:40px 0;border-top:1px solid var(--darkline)}.footer-grid{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px}.footer img{width:190px}.footer-grid>div{display:grid;gap:5px;font-size:.68rem;letter-spacing:.12em;color:#8f9dac}.footer small{letter-spacing:0}.footer a{font-size:.7rem;letter-spacing:.1em;color:var(--yellow)}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:70;width:62px;height:62px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 14px 38px rgba(0,0,0,.22);transition:transform .2s ease,box-shadow .2s ease}.whatsapp-float:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 18px 42px rgba(0,0,0,.26)}.whatsapp-float svg{width:31px;height:31px;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.project-drawer{position:fixed;inset:0;z-index:120;visibility:hidden;pointer-events:none}.project-drawer.open{visibility:visible;pointer-events:auto}.drawer-backdrop{position:absolute;inset:0;background:rgba(2,10,18,.72);opacity:0;transition:.35s}.project-drawer.open .drawer-backdrop{opacity:1}.drawer-card{position:absolute;right:0;top:0;bottom:0;width:min(760px,100%);background:#f7f6f1;transform:translateX(100%);transition:.45s var(--ease);overflow:auto}.project-drawer.open .drawer-card{transform:none}.drawer-hero{height:350px;background:var(--navy);position:relative}.drawer-hero img{width:100%;height:100%;object-fit:cover}.drawer-close{position:absolute;right:20px;top:20px;width:46px;height:46px;border:0;background:#fff;font-size:1.4rem}.drawer-content{padding:34px}.drawer-eyebrow{font-size:.68rem;letter-spacing:.13em;font-weight:900;color:#7a8288}.drawer-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-start}.drawer-head h2{font-size:2.7rem;line-height:1;letter-spacing:-.05em;margin:12px 0}.drawer-percent{font-size:3rem;font-weight:900}.drawer-grid{display:grid;grid-template-columns:1fr .72fr;gap:34px;margin-top:30px}.drawer-grid p{color:var(--muted);line-height:1.7}.facts{border-top:1px solid var(--line)}.fact{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.82rem}.fact span{color:var(--muted)}.timeline{margin-top:32px}.timeline h3{font-size:1rem;letter-spacing:.08em;text-transform:uppercase}.timeline-item{display:grid;grid-template-columns:90px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line)}.timeline-item small{color:#7a8288}.timeline-item b{display:block}.timeline-item p{margin:5px 0 0;font-size:.88rem}.reveal{opacity:0;transform:translateY(22px);transition:.75s var(--ease)}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}
@media(max-width:1050px){.nav-center{display:none}.nav-links{margin-left:auto}.hero-layout{grid-template-columns:1fr;gap:45px}.hero{min-height:auto}.hero-control{max-width:760px}.editorial-head,.method-layout,.system-grid,.contact-grid{grid-template-columns:1fr;gap:48px}.method-sticky{position:static}.project-card,.project-card:nth-child(1),.project-card:nth-child(5){grid-column:span 6}.project-card:nth-child(1) .project-media,.project-card:nth-child(5) .project-media{height:290px}.project-console{grid-template-columns:1fr}.project-console select{border:0;border-top:1px solid var(--line)}.live-grid{grid-template-columns:1fr}.capability>div{padding-left:88px}.system-ui{max-width:760px}.contact-title h2{font-size:5rem}}
@media(max-width:760px){.container{width:min(100% - 28px,var(--max))}.site-header{position:sticky}.nav{height:72px}.brand img{width:175px}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:var(--navy);padding:24px 20px;flex-direction:column;align-items:flex-start;border-top:1px solid var(--darkline)}.nav-links.open{display:flex}.menu-toggle{display:block;margin-left:auto}.hero{padding-top:0}.hero-layout{padding:70px 0}.hero h1{font-size:4.3rem}.hero-metrics{grid-template-columns:repeat(2,1fr)}.hero-control{display:none}.hero-word{font-size:30vw}.section{padding:82px 0}.editorial-head{margin-bottom:40px}.editorial-head h2,.method-sticky h2,.system-copy h2{font-size:3.35rem}.project-console{position:static}.chip-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.status-chip{white-space:nowrap}.project-card,.project-card:nth-child(1),.project-card:nth-child(5){grid-column:1/-1}.live-list{grid-template-columns:1fr}.capability button{grid-template-columns:50px 1fr auto;padding:22px 0}.capability button strong{font-size:1.5rem}.capability>div,.capability.active>div{grid-template-columns:1fr;padding:0 0 26px 50px;gap:14px}.method-steps article{grid-template-columns:55px 1fr}.ui-grid{grid-template-columns:75px 1fr}.quote-form{grid-template-columns:1fr;padding:24px}.quote-form .wide{grid-column:auto}.contact-title h2{font-size:4rem}.footer-grid{grid-template-columns:1fr;gap:20px}.whatsapp-float{width:58px;height:58px;right:18px;bottom:18px}.whatsapp-float svg{width:29px;height:29px}.drawer-grid{grid-template-columns:1fr}.drawer-hero{height:250px}.drawer-content{padding:24px}.drawer-head h2{font-size:2.1rem}}


/* V2.3 — seguimiento público, sin referencias al panel administrativo */
.tracking-section{background:var(--yellow);overflow:hidden}
.tracking-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px;align-items:center}
.tracking-copy h2{font-size:clamp(3rem,5.5vw,5.8rem);line-height:.94;letter-spacing:-.065em;margin:18px 0 24px;color:var(--navy)}
.tracking-copy h2 em{font-family:Georgia,serif;font-weight:400;color:#766b47}
.tracking-copy>p{max-width:580px;line-height:1.75;color:#5a5135;font-size:1rem}
.tracking-points{margin-top:38px;border-top:1px solid rgba(7,23,43,.26)}
.tracking-points>div{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:17px 0;border-bottom:1px solid rgba(7,23,43,.26);align-items:start}
.tracking-points b{font-size:.72rem;letter-spacing:.12em;color:#66707b}
.tracking-points span{display:grid;gap:4px}.tracking-points strong{font-size:1rem}.tracking-points small{color:#615a43;line-height:1.45}
.tracking-card{background:var(--navy);color:#fff;padding:30px;box-shadow:20px 25px 0 rgba(6,20,37,.13);border:1px solid rgba(255,255,255,.1)}
.tracking-card-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--darkline);padding-bottom:18px;font-size:.66rem;letter-spacing:.13em;color:#9ba7b5}
.tracking-card-top strong{background:var(--yellow);color:var(--navy);padding:8px 10px;font-size:.62rem}
.tracking-project{padding:25px 0 18px}.tracking-project small{letter-spacing:.12em;color:#8da0b4;font-size:.63rem}.tracking-project h3{font-size:2rem;letter-spacing:-.04em;margin:8px 0 7px}.tracking-project p{margin:0;color:#95a5b5;font-size:.88rem}
.tracking-progress-head{display:flex;justify-content:space-between;align-items:end;margin:14px 0 8px;color:#aab4bf;font-size:.65rem;letter-spacing:.11em}.tracking-progress-head b{font-size:2.2rem;letter-spacing:-.04em;color:#fff}
.tracking-progress{height:8px;background:#17314c;overflow:hidden}.tracking-progress i{display:block;height:100%;background:var(--yellow)}
.tracking-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.tracking-meta div{border:1px solid #1c3b59;padding:15px}.tracking-meta small{display:block;color:#8194a7;font-size:.6rem;letter-spacing:.12em;margin-bottom:7px}.tracking-meta b{font-size:.85rem}
.tracking-log{border-top:1px solid var(--darkline)}.tracking-log>div{display:grid;grid-template-columns:62px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--darkline)}.tracking-log>div>span{color:var(--yellow);font-size:.65rem;font-weight:900;letter-spacing:.08em}.tracking-log p{margin:0}.tracking-log p b{font-size:.83rem}.tracking-log p small{display:block;color:#8c9bab;margin-top:4px;line-height:1.4}

/* V2.3 — botón WhatsApp inequívoco */
a.whatsapp-float{position:fixed!important;right:24px!important;bottom:24px!important;z-index:999!important;width:66px!important;height:66px!important;border-radius:50%!important;background:#25D366!important;color:#25D366!important;display:grid!important;place-items:center!important;padding:0!important;overflow:visible!important;box-shadow:0 12px 30px rgba(0,0,0,.24)!important;border:3px solid #fff!important;transition:transform .2s ease,box-shadow .2s ease!important}
a.whatsapp-float:hover{transform:translateY(-3px) scale(1.04)!important;box-shadow:0 16px 36px rgba(0,0,0,.3)!important}
a.whatsapp-float svg{width:42px!important;height:42px!important;display:block!important}
a.whatsapp-float .wa-bubble{fill:#fff!important}
a.whatsapp-float .wa-phone{fill:#25D366!important}
@media(max-width:760px){.tracking-grid{grid-template-columns:1fr;gap:48px}.tracking-copy h2{font-size:3.35rem}.tracking-card{padding:22px;box-shadow:12px 15px 0 rgba(6,20,37,.13)}.tracking-project h3{font-size:1.7rem}a.whatsapp-float{width:60px!important;height:60px!important;right:18px!important;bottom:18px!important}a.whatsapp-float svg{width:38px!important;height:38px!important}}

/* V2.4 — integración de contenido legacy organizada en líneas comerciales */
.experience-strip{background:#fff;border-bottom:1px solid var(--line)}
.experience-grid{display:grid;grid-template-columns:.55fr .55fr .7fr 1.7fr;align-items:center;gap:0;min-height:142px}
.experience-grid>div{padding:30px 34px;border-right:1px solid var(--line)}
.experience-grid>div:first-child{padding-left:0}.experience-grid strong{display:block;font-size:2.7rem;letter-spacing:-.06em;color:var(--navy)}.experience-grid span{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:800}.experience-grid p{padding-left:42px;color:var(--muted);line-height:1.65;max-width:560px}
.solutions-section{background:#f7f6f1}.solution-clusters{border-top:1px solid var(--line)}.solution-cluster{display:grid;grid-template-columns:90px 1fr;padding:38px 0;border-bottom:1px solid var(--line);gap:28px}.cluster-no{font-size:.72rem;letter-spacing:.14em;font-weight:900;color:#8a9196}.solution-cluster small{font-size:.66rem;letter-spacing:.14em;font-weight:900;color:#777f85}.solution-cluster h3{font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.045em;margin:8px 0 12px}.solution-cluster p{max-width:760px;color:var(--muted);line-height:1.65}.service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.service-tags span{border:1px solid var(--line);background:#fff;padding:8px 10px;font-size:.7rem;font-weight:800;color:#56616b}.cluster-link{display:inline-block;margin-top:20px;font-size:.8rem;font-weight:900;border-bottom:1px solid currentColor;padding-bottom:4px}.tech-cluster{background:var(--navy);color:#fff;padding-left:26px;padding-right:26px}.tech-cluster .cluster-no,.tech-cluster small,.tech-cluster p{color:#9dadbc}.tech-cluster .service-tags span{background:#0e2740;border-color:#1e3b57;color:#dbe4eb}.tech-cluster .cluster-link{color:var(--yellow)}
.container-section{background:#fff}.configurator-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:70px;align-items:start}.container-visual{position:sticky;top:110px}.container-shell{height:360px;background:var(--yellow);border:8px solid var(--navy);position:relative;overflow:hidden;box-shadow:20px 22px 0 #e9e8e2;display:flex;flex-direction:column;justify-content:flex-end;padding:28px}.container-shell:before,.container-shell:after{content:"";position:absolute;top:18px;bottom:18px;width:5px;background:var(--navy)}.container-shell:before{left:18px}.container-shell:after{right:18px}.container-ribs{position:absolute;inset:24px 42px;background:repeating-linear-gradient(90deg,transparent 0 34px,rgba(6,20,37,.15) 34px 38px)}.container-shell span,.container-shell b,.container-shell small{position:relative;z-index:2}.container-shell span{font-size:.65rem;letter-spacing:.15em;font-weight:900}.container-shell b{font-size:5rem;letter-spacing:-.08em;line-height:.9}.container-shell small{font-size:.9rem;letter-spacing:.12em;font-weight:900;margin-top:7px}.container-specs{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.container-specs div{padding:18px 14px;border-right:1px solid var(--line)}.container-specs div:last-child{border-right:0}.container-specs span{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.container-specs b{display:block;margin-top:6px;font-size:.82rem}.container-configurator{border-top:5px solid var(--navy);background:#f2f1ec;padding:28px}.config-step{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid #d3d4d0}.config-step>span{font-size:.7rem;font-weight:900;color:#788188;letter-spacing:.1em}.config-step label{display:block;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:#6b747b}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.choice-grid label{position:relative}.choice-grid input{position:absolute;opacity:0}.choice-grid b{display:block;padding:12px;border:1px solid #cfd2d0;background:#fff;color:var(--ink);letter-spacing:0;text-transform:none;font-size:.82rem}.choice-grid input:checked+b{background:var(--navy);color:#fff;border-color:var(--navy)}.choice-grid.sizes{grid-template-columns:repeat(4,1fr)}.addon-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px}.addon-grid label{background:#fff;border:1px solid #cfd2d0;padding:11px;font-size:.72rem;letter-spacing:0;text-transform:none;color:#303942}.addon-grid input{accent-color:var(--navy);margin-right:7px}.mini-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.mini-fields input{border:0;border-bottom:1px solid #aeb5b7;background:transparent;padding:12px 2px;outline:0}.mini-fields input:last-child{grid-column:1/-1}.config-summary{margin:22px 0 14px;background:var(--navy);color:var(--yellow);padding:13px 15px;font-size:.7rem;letter-spacing:.1em;font-weight:900}.container-configurator>.btn{width:100%}.config-msg{display:none;margin-top:12px;background:#dff1e7;color:#1c6b46;padding:12px;font-size:.78rem}
.tech-section{background:var(--navy);color:#fff}.tech-head{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;margin-bottom:55px}.tech-head .section-no{color:var(--yellow)}.tech-head h2{font-size:clamp(3rem,5.5vw,5.8rem);line-height:.94;letter-spacing:-.065em;margin:18px 0 0}.tech-head h2 em{font-family:Georgia,serif;font-weight:400;color:var(--yellow)}.tech-head p{color:#9cabba;line-height:1.8}.tech-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--darkline);border-left:1px solid var(--darkline)}.tech-card{padding:30px;border-right:1px solid var(--darkline);border-bottom:1px solid var(--darkline);min-height:290px}.tech-card>span{font-size:.65rem;letter-spacing:.13em;color:var(--yellow);font-weight:900}.tech-card h3{font-size:1.45rem;margin:55px 0 12px;letter-spacing:-.035em}.tech-card p{color:#9facb8;line-height:1.65;font-size:.9rem}.tech-card small{display:block;margin-top:25px;font-size:.6rem;letter-spacing:.12em;color:#6f8397}.tech-cta{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:34px}.tech-cta>div{display:grid;gap:5px}.tech-cta strong{color:var(--yellow);letter-spacing:.1em}.tech-cta span{font-size:.82rem;color:#91a0ae}
.contact-data b{font-weight:900;color:var(--navy)}
@media(max-width:1050px){.experience-grid{grid-template-columns:repeat(3,1fr)}.experience-grid p{grid-column:1/-1;padding:22px 0}.configurator-grid,.tech-head{grid-template-columns:1fr}.container-visual{position:static}.tech-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.experience-grid{grid-template-columns:1fr 1fr}.experience-grid>div{padding:22px 16px}.experience-grid>div:first-child{padding-left:0}.experience-grid>div:nth-child(3){grid-column:1/-1;border-top:1px solid var(--line)}.experience-grid p{font-size:.9rem}.solution-cluster{grid-template-columns:44px 1fr;gap:10px;padding:28px 0}.tech-cluster{padding-left:14px;padding-right:14px}.configurator-grid{gap:36px}.container-shell{height:260px}.container-shell b{font-size:3.6rem}.container-specs{grid-template-columns:1fr}.container-specs div{border-right:0;border-bottom:1px solid var(--line)}.choice-grid,.choice-grid.sizes,.addon-grid,.mini-fields{grid-template-columns:1fr 1fr}.tech-grid{grid-template-columns:1fr}.tech-card{min-height:auto}.tech-card h3{margin-top:30px}.tech-cta{align-items:flex-start;flex-direction:column}.nav-links{max-height:calc(100vh - 72px);overflow:auto}}
.catalog-strip{background:#e9e8e2;border-block:1px solid var(--line);padding:58px 0}.catalog-wrap{display:grid;grid-template-columns:.78fr 1.22fr;gap:60px;align-items:start}.catalog-intro h3{font-size:1.8rem;letter-spacing:-.04em;line-height:1.15;margin:13px 0 0}.catalog-items{display:grid;grid-template-columns:1fr 1fr}.catalog-items a{min-height:130px;padding:22px;border-left:1px solid #cfd1cf;border-bottom:1px solid #cfd1cf;display:grid;grid-template-columns:1fr auto;align-content:center;gap:8px;background:rgba(255,255,255,.28);transition:.2s}.catalog-items a:hover{background:#fff}.catalog-items small{grid-column:1/-1;font-size:.6rem;letter-spacing:.12em;color:#7d858a;font-weight:900}.catalog-items b{font-size:.9rem}.catalog-items span{font-weight:900}@media(max-width:760px){.catalog-wrap{grid-template-columns:1fr}.catalog-items{grid-template-columns:1fr}.catalog-items a{border-right:1px solid #cfd1cf}}
.crm-budget{display:inline-block;margin-top:8px;background:#eef1f4;padding:4px 6px;border-radius:3px}

.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}

/* V3.2 — Mobile overflow hardening
   Corrige desbordamientos horizontales en teléfonos sin alterar el layout de escritorio. */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,iframe{max-width:100%}
.container{width:100%;max-width:var(--max);padding-left:27px;padding-right:27px}
.hero-layout,.editorial-head,.live-grid,.method-layout,.system-grid,.contact-grid,.configurator-grid,.tech-head,.catalog-wrap{min-width:0}
.hero-layout>*,.editorial-head>*,.live-grid>*,.method-layout>*,.system-grid>*,.contact-grid>*,.configurator-grid>*,.tech-head>*,.catalog-wrap>*{min-width:0}
.project-card,.featured-card,.quote-form,.container-configurator,.tracking-card,.tech-card,.catalog-items a{min-width:0}
@media(max-width:760px){
  .container{width:100%;max-width:var(--max);padding-left:14px;padding-right:14px}
  .hero h1,.editorial-head h2,.method-sticky h2,.system-copy h2,.contact-title h2,.tech-head h2{max-width:100%;overflow-wrap:anywhere}
  .featured-top,.drawer-head,.form-actions,.tech-cta{min-width:0;flex-wrap:wrap}
  .featured-top>* ,.drawer-head>*{min-width:0}
  .featured-top h3,.drawer-head h2,.project-card h3,.catalog-items b{overflow-wrap:anywhere}
  .quote-form input,.quote-form select,.quote-form textarea,.mini-fields input{min-width:0;width:100%}
  .choice-grid,.choice-grid.sizes,.addon-grid,.mini-fields{min-width:0}
  .experience-grid,.project-grid,.live-list,.tech-grid,.catalog-items{min-width:0}
  .drawer-card{max-width:100vw}
}

/* V3.3 — Project multi-photo carousel */
.project-gallery{position:relative;width:100%;height:100%;overflow:hidden;background:var(--navy)}.project-gallery>img{width:100%;height:100%;object-fit:cover;display:block}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--navy);font-size:1.5rem;line-height:1;display:grid;place-items:center;z-index:3}.gallery-arrow.prev{left:12px}.gallery-arrow.next{right:12px}.gallery-dots{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:5px;z-index:3}.gallery-dot{width:10px;height:10px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.55)}.gallery-dot.active{background:#fff;transform:scale(1.25)}.gallery-count{position:absolute;right:12px;top:12px;z-index:3;background:rgba(6,20,37,.78);color:#fff;padding:5px 8px;font-size:.62rem;letter-spacing:.06em;font-weight:800}.featured-gallery{height:100%}.card-gallery{height:100%}.drawer-gallery{height:100%}.project-media .project-gallery{position:absolute;inset:0}.featured-media .project-gallery{position:absolute;inset:0}.drawer-hero .project-gallery{position:absolute;inset:0}

.project-gallery{touch-action:pan-y}.gallery-arrow,.gallery-dot{cursor:pointer;-webkit-tap-highlight-color:transparent}.gallery-count{min-width:32px;text-align:center}
