:root{--bg-principal: #fce8db;--bg-tarjeta: #ffffff;--texto-base: #1a1a1a;--texto-mutado: #3f3630;--naranja-brand: #ea580c;--borde-suave: rgba(0, 0, 0, .08);--bg: var(--bg-principal);--surface: var(--bg-tarjeta);--surface-hover: #fafafa;--surface-hover-alt: #f7f7f7;--border: var(--borde-suave);--ink: var(--texto-base);--ink-muted: var(--texto-mutado);--accent: var(--naranja-brand);--accent-hover: #c2410c;--line: var(--borde-suave);--danger: #dc2626;--container: 1180px;--font: "Barlow", system-ui, sans-serif;--display: "Barlow Condensed", "Barlow", system-ui, sans-serif;--grid-bg: linear-gradient(to right, rgba(217, 119, 6, .08) 1px, transparent 1px), linear-gradient(to bottom, rgba(217, 119, 6, .08) 1px, transparent 1px);--shadow-card: 0 4px 12px rgba(0, 0, 0, .03);--glow-soft: radial-gradient(circle at top right, rgba(234, 88, 12, .08) 0%, transparent 60%);--page-pad-top: clamp(2.5rem, 5vw, 4rem);--page-pad-bottom: clamp(3rem, 6vw, 5rem)}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{font-family:var(--font);color:var(--ink);background-color:var(--bg);background-image:var(--grid-bg);background-size:32px 32px;background-attachment:fixed;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}img{display:block;max-width:100%}.shell{min-height:100vh}.landing-page{min-height:100vh;overflow-x:hidden;background:transparent}.view-shell{position:relative;isolation:isolate;min-height:calc(100vh - 76px);background:var(--glow-soft)}.container{width:min(var(--container),calc(100% - 2.5rem));margin-inline:auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:30;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.08)}.page-main{padding-top:76px;min-height:100vh}.site-nav a.nav-active{color:var(--accent)}.header-inner{width:min(var(--container),calc(100% - 2.5rem));margin-inline:auto;min-height:76px;display:flex;align-items:center;gap:1.25rem}.brand{display:inline-flex;align-items:center;gap:.7rem;flex-shrink:0}.brand-icon{width:42px;height:42px;object-fit:contain}.brand-text{display:flex;flex-direction:column;line-height:1.05}.brand-name{font-family:var(--display);font-size:1.35rem;font-weight:700;letter-spacing:.01em;color:var(--ink)}.brand-tag{font-size:.62rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted)}.site-nav{display:flex;align-items:center;justify-content:center;flex:1;gap:clamp(.75rem,1.4vw,1.5rem)}.site-nav a{color:var(--texto-base);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;transition:color .15s ease}.site-nav a:hover{color:var(--accent)}.header-actions{display:flex;align-items:center;gap:.85rem;flex-shrink:0}.nav-toggle{display:none;margin-left:auto;width:42px;height:42px;border:1px solid var(--border);border-radius:4px;background:transparent;padding:0;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}.nav-toggle span{display:block;width:18px;height:2px;background:var(--ink)}.site-nav .nav-cta{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:46px;padding:.75rem 1.25rem;border-radius:3px;border:1px solid transparent;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.62;cursor:not-allowed}.btn-solid{background:var(--accent);color:#fff}.btn-solid:hover{background:var(--accent-hover)}.btn-outline{background:transparent;border-color:var(--accent);color:var(--accent)}.btn-outline:hover{background:#ea580c1a}.btn.full{width:100%}.texto-remarcado,.accent{color:var(--naranja-brand);font-weight:800;text-shadow:0px 1px 1px rgba(0,0,0,.15)}.texto-stroke{color:#f97316;-webkit-text-stroke:1px #1a1a1a}.hero{position:relative;isolation:isolate;padding:var(--page-pad-top) 0 var(--page-pad-bottom);background:var(--glow-soft);overflow:hidden}.hero-glow{display:none}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.7fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}.hero-copy{display:flex;flex-direction:column;min-width:0}.hero-copy h1{margin:0 0 1.1rem;font-family:var(--display);font-size:clamp(2.8rem,5.6vw,4.6rem);font-weight:700;line-height:.95;letter-spacing:.01em;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.hero-copy h1 .accent{color:var(--naranja-brand);font-weight:800;text-shadow:0px 1px 1px rgba(0,0,0,.15)}.hero-lead{margin:0 0 1.75rem;max-width:34rem;color:var(--texto-mutado);font-size:1.02rem;line-height:1.65;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;flex-shrink:0;margin-top:0}.hero-actions .btn{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-media{margin:0;width:min(100%,420px);justify-self:end}@media(min-width:981px){.hero-copy{max-height:calc(min(42vw,420px) * 4 / 3 + 3.25rem);overflow:hidden}}.hero-carousel{position:relative;overflow:hidden;border-radius:18px;border:0;padding:10px;background:#fff;box-shadow:0 10px 25px -5px #00000014}.hero-carousel-track{position:relative;aspect-ratio:3 / 4;overflow:hidden;border-radius:12px}.hero-carousel-slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease}.hero-carousel-slide.active{opacity:1}.hero-carousel-nav{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:38px;height:38px;margin:0;padding:0;border:0;border-radius:999px;background:#1a1a1a73;color:#fff;font-size:1.55rem;line-height:1;cursor:pointer;opacity:0;transform:translateY(-50%);transition:opacity .2s ease,background .2s ease,color .2s ease}.hero-carousel-nav.prev{left:.65rem}.hero-carousel-nav.next{right:.65rem}.hero-carousel:hover .hero-carousel-nav,.hero-carousel:focus-within .hero-carousel-nav{opacity:1}.hero-carousel-nav:hover{background:#1a1a1ab3;color:#fff}.hero-carousel-dots{position:absolute;left:0;right:0;bottom:.85rem;display:flex;justify-content:center;gap:.45rem;z-index:2}.hero-carousel-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#ffffff73;cursor:pointer;transition:background .2s ease,transform .2s ease}.hero-carousel-dots button.active{background:var(--accent);transform:scale(1.2)}.hero-media figcaption{margin-top:.7rem;color:var(--ink-muted);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.stats-bar{list-style:none;margin:clamp(2.5rem,5vw,3.75rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;border:0;background:transparent;box-shadow:none;overflow:visible}.stats-bar li{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1.25rem 1.5rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);text-align:center}.stats-bar strong{color:var(--accent);font-family:var(--display);font-size:clamp(1.8rem,3vw,2.35rem);font-weight:800;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-bar span{color:var(--texto-base);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;max-width:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.servicios-page{min-height:calc(100vh - 76px);background:var(--glow-soft)}.servicios-block{padding:var(--page-pad-top) 0 var(--page-pad-bottom)}.servicios-block+.servicios-block{border-top:1px solid var(--border)}.servicios-header{max-width:46rem;margin-bottom:clamp(2rem,4vw,2.75rem)}.servicios-header h1{margin:0 0 .9rem;font-family:var(--display);font-size:clamp(2.4rem,4.8vw,3.5rem);font-weight:700;line-height:.95;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.servicios-lead{margin:0;color:var(--ink-muted);font-size:1.05rem;line-height:1.65;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.service-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}.service-card,.tarjeta-servicio{padding:1.5rem 1.4rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.service-card:hover,.tarjeta-servicio:hover{background:#fff;box-shadow:0 8px 28px -4px #00000014}.service-icon,.why-icon{display:inline-flex;width:28px;height:28px;margin-bottom:1rem;color:var(--accent)}.service-icon svg,.why-icon svg{width:100%;height:100%}.service-card h2,.why-grid h2{margin:0 0 .55rem;font-size:1.15rem;font-weight:700;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.service-card p,.why-grid p{margin:0;color:#4b5563;line-height:1.55;font-size:.95rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.why-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);overflow:hidden}.why-grid li{padding:1.5rem 1.2rem;border-right:1px solid var(--border)}.why-grid li:last-child{border-right:0}.site-footer{background:#fff;color:var(--ink-muted);border-top:1px solid rgba(0,0,0,.08);text-align:center}.footer-brand{padding:clamp(2.5rem,5vw,3.5rem) 0 2rem;margin-inline:auto;text-align:center}.footer-brand-inner{max-width:40rem;margin-inline:auto}.footer-lockup{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1rem}.footer-mark{display:inline-flex;width:42px;height:42px;flex-shrink:0}.footer-mark svg{width:100%;height:100%}.footer-brand-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05;text-align:left}.footer-name{font-family:var(--display);font-size:1.35rem;font-weight:700;color:var(--ink)}.footer-tag{font-size:.62rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted)}.footer-pitch{margin:0 auto .85rem;max-width:34rem;color:var(--ink-muted);line-height:1.6;font-size:.95rem}.footer-address{margin:0;color:var(--ink-muted);font-size:.9rem}.footer-bottom{border-top:1px solid var(--border);padding:1rem 0;text-align:center}.footer-bottom p{margin:0;color:var(--ink-muted);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.contacto-page{min-height:calc(100vh - 76px);padding:var(--page-pad-top) 0 var(--page-pad-bottom);background:var(--glow-soft)}.contacto-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1.75rem,4vw,3.5rem);align-items:start}.contacto-info h1{margin:0 0 .9rem;font-family:var(--display);font-size:clamp(2.3rem,4.5vw,3.3rem);font-weight:700;line-height:.98;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.contacto-lead{margin:0 0 2rem;max-width:34rem;color:var(--ink-muted);font-size:1.02rem;line-height:1.65}.contacto-details{list-style:none;margin:0;padding:0;display:grid;gap:1.35rem}.contacto-details li{display:grid;grid-template-columns:28px 1fr;gap:.85rem;align-items:start}.contacto-icon{display:inline-flex;width:24px;height:24px;margin-top:.15rem;color:var(--accent)}.contacto-icon svg{width:100%;height:100%}.contacto-details strong{display:block;margin-bottom:.25rem;color:var(--accent);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contacto-details p,.contacto-details a{margin:0;color:var(--ink);line-height:1.45}.contacto-details a:hover{color:var(--accent)}.contacto-form{padding:1.5rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card)}.contacto-form .field label span{color:#ff5a5a}.contacto-form textarea{width:100%;border:1px solid var(--borde-suave);border-radius:6px;padding:.82rem .9rem;background:#fff;color:var(--ink);outline:none;resize:vertical;min-height:140px;font:inherit}.contacto-form textarea:focus,.contacto-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ea580c29}.contacto-form input::placeholder,.contacto-form textarea::placeholder{color:var(--ink-muted)}.contacto-form .btn{margin-top:.25rem}.send-icon{display:inline-flex;width:16px;height:16px}.send-icon svg{width:100%;height:100%}.contacto-disclaimer{margin:.9rem 0 0;color:var(--ink-muted);font-size:.82rem;line-height:1.45}.trabaja-page{position:relative;min-height:calc(100vh - 76px);padding:var(--page-pad-top) 0 var(--page-pad-bottom);background:var(--glow-soft)}.trabaja-header{max-width:40rem;margin-bottom:clamp(2rem,4vw,2.75rem)}.trabaja-header h1{margin:0 0 .9rem;font-family:var(--display);font-size:clamp(2.4rem,4.8vw,3.5rem);font-weight:700;line-height:.95;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.trabaja-lead{margin:0;color:var(--ink-muted);font-size:1.05rem;line-height:1.65}.vacancy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}.vacancy-card{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem 1.4rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);transition:background .15s ease,box-shadow .15s ease}.vacancy-card:hover{background:#fff;box-shadow:0 8px 28px -4px #00000014}.vacancy-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.vacancy-card h2{margin:0;font-size:1.2rem;font-weight:700;color:var(--ink)}.vacancy-badge{flex-shrink:0;border:1px solid var(--accent);padding:.28rem .55rem;color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.vacancy-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}.vacancy-card li{position:relative;padding-left:1rem;color:var(--ink-muted);line-height:1.45}.vacancy-card li:before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;border-radius:50%;background:var(--accent)}.vacancy-item{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.vacancy-item-title{flex:1}.vacancy-info-btn{flex-shrink:0;border:0;background:transparent;color:var(--accent);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;padding:0;white-space:nowrap}.vacancy-info-btn:hover{color:var(--accent-hover);text-decoration:underline}.vacancy-card .btn{align-self:flex-start;margin-top:auto}.vacante-detalle-modal{position:relative;width:min(560px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1.75rem;border:1px solid rgba(0,0,0,.08);background:#fff;box-shadow:0 24px 60px #1a1a1a2e}.vacante-detalle-header{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.75rem 1rem;margin-bottom:1rem;padding-right:2rem}.vacante-detalle-header h2{margin:0;flex:1 1 12rem;font-family:var(--display);font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.05;color:var(--ink)}.vacante-categoria-badge{display:inline-flex;align-items:center;border:1px solid rgba(234,88,12,.45);padding:.3rem .6rem;color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:#ea580c1a}.vacante-cantidad-badge{display:inline-flex;margin:0 0 1rem;padding:.35rem .65rem;border:1px solid var(--border);background:#fafafa;color:var(--ink-muted);font-size:.78rem;font-weight:700;letter-spacing:.04em}.vacante-detalle-body{margin-bottom:1.5rem;padding-top:.25rem;border-top:1px solid var(--border)}.vacante-parrafo{margin:1rem 0 0;color:var(--ink-muted);font-size:.98rem;line-height:1.65;white-space:pre-wrap}.vacante-parrafo.muted{color:var(--ink-muted)}.vacante-detalle-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.trabaja-contact{margin:1.75rem 0 0;color:var(--ink-muted);font-size:.95rem}.trabaja-contact a{color:var(--accent);font-weight:600}.trabaja-contact a:hover{color:var(--accent-hover)}.page-section{padding:var(--page-pad-top) 0 var(--page-pad-bottom);background:var(--glow-soft);min-height:calc(100vh - 76px)}.page-header h1{margin:0 0 .85rem;font-family:var(--display);font-size:clamp(2.4rem,5vw,3.6rem);font-weight:700;line-height:.95;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.page-lead{margin:0 0 1.5rem;max-width:40rem;color:var(--ink-muted);font-size:1.05rem;line-height:1.65;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}.page-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.page-media{margin:0;border:1px solid rgba(0,0,0,.08);background:#fff;padding:.4rem;box-shadow:var(--shadow-card)}.page-media img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.services-grid,.projects-grid,.careers-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2rem}.service-item,.project-card{padding:1.4rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);transition:background .15s ease,box-shadow .15s ease}.project-card--with-media{padding-top:.85rem}.project-card-media{margin:0 0 1rem;border-radius:12px;overflow:hidden;background:#f3f4f6}.project-card-media img{display:block;width:100%;aspect-ratio:8 / 5;object-fit:cover}.service-item:hover,.project-card:hover{background:#fff;box-shadow:0 8px 28px -4px #00000014}.service-item h2,.project-card h2{margin:0 0 .55rem;font-size:1.25rem;font-weight:700;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.service-item p,.project-card p{margin:0;color:#4b5563;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.project-region{margin:0 0 .45rem!important;color:var(--accent)!important;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.contact-split{align-items:start}.contact-panel{display:grid;gap:.85rem;padding:1.5rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card)}.contact-note{margin:.35rem 0 0;color:var(--ink-muted);font-size:.88rem}.nosotros-page{background:var(--glow-soft);color:var(--ink);min-height:calc(100vh - 76px);padding:var(--page-pad-top) 0 var(--page-pad-bottom)}.nosotros-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,5vw,4rem);align-items:start}.nosotros-copy h1{margin:0 0 1rem;font-family:var(--display);font-size:clamp(2.4rem,4.5vw,3.4rem);font-weight:700;line-height:1;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.nosotros-lead{margin:0;max-width:34rem;color:var(--ink-muted);font-size:1.05rem;line-height:1.65;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}.nosotros-divider{margin:1.75rem 0;border:0;border-top:1px solid var(--border)}.nosotros-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.nosotros-stats li{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:1.25rem 1.5rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);text-align:center}.nosotros-stats strong{color:var(--accent);font-family:var(--display);font-size:clamp(1.7rem,2.5vw,2rem);font-weight:800;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nosotros-stats span{color:var(--texto-base);font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;max-width:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.nosotros-media{margin:0}.nosotros-carousel{position:relative;overflow:hidden;padding:.45rem;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:var(--shadow-card)}.nosotros-carousel-track{position:relative;aspect-ratio:4 / 3;overflow:hidden}.nosotros-carousel-slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease}.nosotros-carousel-slide.active{opacity:1}.nosotros-carousel-nav{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:38px;height:38px;margin:0;padding:0;border:0;border-radius:999px;background:#1a1a1a73;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;opacity:0;transform:translateY(-50%);transition:opacity .2s ease,background .2s ease}.nosotros-carousel-nav.prev{left:.85rem}.nosotros-carousel-nav.next{right:.85rem}.nosotros-carousel:hover .nosotros-carousel-nav,.nosotros-carousel:focus-within .nosotros-carousel-nav{opacity:1}.nosotros-carousel-nav:hover{background:#1a1a1ab3}.nosotros-carousel-dots{position:absolute;left:0;right:0;bottom:.85rem;z-index:3;display:flex;justify-content:center;gap:.4rem}.nosotros-carousel-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#ffffff8c;cursor:pointer}.nosotros-carousel-dots button.active{background:#fff}.nosotros-media figcaption{margin-top:.55rem;color:var(--ink-muted);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-align:center}.field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.field label{color:var(--ink-muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.field input,.field select{width:100%;border:1px solid var(--borde-suave);border-radius:6px;padding:.82rem .9rem;background:#fff;color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ea580c29}.field select:disabled{opacity:.75;cursor:not-allowed;color:var(--ink-muted)}.phone-input{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:6px;background:#fff;overflow:hidden}.phone-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #ea580c29}.phone-prefix{display:inline-flex;align-items:center;padding:0 .85rem;border-right:1px solid var(--border);color:var(--ink-muted);font-size:.95rem;font-weight:700;letter-spacing:.02em;background:#fafafa;-webkit-user-select:none;user-select:none}.phone-input input{border:0;border-radius:0;box-shadow:none;background:transparent}.phone-input input:focus{border:0;box-shadow:none}.field input[type=file]{padding:.65rem .75rem;color:var(--ink-muted)}.field label span{color:#ff5a5a}.hp-field{display:none!important;position:absolute;left:-9999px;height:0;width:0;overflow:hidden;opacity:0;pointer-events:none}.form-alert{margin:0 0 .9rem;padding:.75rem .9rem;border:1px solid var(--border);font-size:.9rem;line-height:1.45}.form-alert.success{border-color:#4ade8059;background:#4ade801a;color:#86efac}.form-alert.error{border-color:#ff6b5766;background:#ff6b571a;color:#ffb4a8}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:var(--ink);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1rem;background:#1a1a1a73;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overscroll-behavior:contain;overflow:hidden}.postula-modal{position:relative;width:min(460px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1.75rem;border:1px solid rgba(0,0,0,.08);background:#fff;box-shadow:0 24px 60px #1a1a1a2e}.postula-modal h2{margin:0 0 .45rem;font-family:var(--display);font-size:2rem;line-height:1;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.modal-lead{margin:0 0 1.2rem;color:var(--ink-muted);line-height:1.5}.modal-close{position:absolute;top:.75rem;right:.75rem;width:34px;height:34px;border:1px solid var(--border);border-radius:999px;background:#fafafa;color:var(--ink);cursor:pointer}@media(max-width:980px){.hero-grid,.page-split,.nosotros-grid,.contacto-grid,.services-grid,.projects-grid,.careers-grid,.service-cards,.vacancy-grid{grid-template-columns:1fr}.hero-media{width:min(100%,360px);justify-self:center}.why-grid{grid-template-columns:1fr 1fr}.why-grid li{border-right:0;border-bottom:1px solid var(--border);padding:1.35rem}.why-grid li:nth-child(odd){padding-right:.85rem;border-right:1px solid var(--border)}.why-grid li:nth-child(2n){padding-left:.85rem}.why-grid li:nth-last-child(-n+2){border-bottom:0}.nosotros-stats{grid-template-columns:1fr}}@media(max-width:860px){.nav-toggle{display:inline-flex}.site-nav{position:absolute;top:76px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.25rem 1rem;background:#fffffff5;border-bottom:1px solid var(--border)}.site-nav.open{display:flex}.site-nav a{padding:.85rem 0;border-bottom:1px solid var(--border)}.site-nav .nav-cta{display:flex;margin-top:.75rem}.header-actions{display:none}.stats-bar{grid-template-columns:1fr 1fr}}@media(max-width:560px){.why-grid{grid-template-columns:1fr}.why-grid li:nth-child(odd),.why-grid li:nth-child(2n){padding-left:0;padding-right:0;border-right:0;border-bottom:1px solid var(--border)}.why-grid li:last-child{border-bottom:0}.stats-bar{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:50;background:#fffffffa;border-top:2px solid var(--accent);box-shadow:0 -4px 16px #00000014;padding:1.25rem 0}.cookie-banner-inner{width:min(var(--container),calc(100% - 2.5rem));margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.cookie-banner-content{flex:1;min-width:280px}.cookie-banner-title{font-family:var(--display);font-size:1.125rem;font-weight:700;margin:0 0 .35rem;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.cookie-banner-desc{margin:0;font-size:.9375rem;line-height:1.5;color:var(--ink-muted)}.cookie-link{color:var(--accent);text-decoration:underline;font-weight:500}.cookie-link:hover{color:var(--accent-hover)}.cookie-banner-actions{display:flex;gap:.75rem;flex-wrap:wrap}.cookie-btn{padding:.625rem 1.5rem;font-weight:600;font-size:.9375rem;border:2px solid var(--accent);border-radius:6px;cursor:pointer;transition:all .2s ease}.cookie-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cookie-btn-accept{background:var(--accent);color:#fff}.cookie-btn-accept:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.cookie-btn-reject{background:transparent;color:var(--accent)}.cookie-btn-reject:hover{background:var(--accent);color:#fff}.banner-slide-enter-active,.banner-slide-leave-active{transition:transform .4s cubic-bezier(.4,0,.2,1)}.banner-slide-enter-from,.banner-slide-leave-to{transform:translateY(100%)}.legal-page .page-header{max-width:none;margin-bottom:1.25rem}.legal-page .page-header h1{max-width:40rem}.legal-page .page-lead{margin-bottom:0}.legal-content{max-width:none;padding-bottom:var(--page-pad-bottom)}.legal-content article{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,4vw,3rem);box-shadow:none}.legal-content h2{font-family:var(--display);font-size:1.35rem;font-weight:700;margin:1.75rem 0 .75rem;color:var(--ink)}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-family:var(--display);font-size:1.1rem;font-weight:600;margin:1.25rem 0 .55rem;color:var(--ink)}.legal-content p{margin:0 0 .85rem;line-height:1.65;color:var(--ink-muted);max-width:72ch}.legal-content ul,.legal-content ol{margin:0 0 .85rem;padding-left:1.35rem;line-height:1.65;color:var(--ink-muted);max-width:72ch}.legal-content li{margin-bottom:.5rem}.legal-content a{color:var(--accent);text-decoration:underline;font-weight:500}.legal-content a:hover{color:var(--accent-hover)}.legal-content code{background:#ea580c14;padding:.15rem .4rem;border-radius:3px;font-family:monospace;font-size:.9em;color:var(--accent)}.legal-content strong{color:var(--ink);font-weight:600}@media(max-width:860px){.cookie-banner-inner{flex-direction:column;align-items:stretch;gap:1.25rem}.cookie-banner-actions{justify-content:stretch}.cookie-btn{flex:1;min-width:120px}}.footer-business-info{margin:1.5rem auto 0;max-width:34rem;padding:1.25rem;background:#ea580c0a;border-radius:8px;font-size:.9375rem;line-height:1.6;text-align:left}.footer-business-info p{margin:0;color:var(--ink-muted)}.footer-business-info strong{color:var(--ink);font-weight:600}.footer-business-info a{color:var(--accent);text-decoration:none;font-weight:500}.footer-business-info a:hover{text-decoration:underline}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 1.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.footer-nav a{font-size:.9375rem;color:var(--ink-muted);text-decoration:none;transition:color .2s ease}.footer-nav a:hover{color:var(--accent)}.footer-nav a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.field-checkbox{margin-top:1.25rem}.checkbox-label{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer;font-size:.9375rem;line-height:1.6}.checkbox-label input[type=checkbox]{flex-shrink:0;width:1.125rem;height:1.125rem;margin-top:.125rem;cursor:pointer;accent-color:var(--accent)}.checkbox-label span{color:var(--ink-muted)}.checkbox-label span>span{color:var(--danger);font-weight:600}.checkbox-label a{color:var(--accent);text-decoration:underline;font-weight:500}.checkbox-label a:hover{color:var(--accent-hover)}.checkbox-label input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-nav a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.skip-to-main{position:absolute;top:-100px;left:1rem;z-index:100;padding:.75rem 1.25rem;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;border-radius:4px;transition:top .2s ease}.skip-to-main:focus{top:1rem;outline:2px solid white;outline-offset:2px}.cms-preview-mode [data-cms-clave].cms-preview-highlight,[data-cms-clave].cms-preview-highlight{outline:3px solid #ea580c;outline-offset:4px;border-radius:4px;box-shadow:0 0 0 6px #ea580c2e;scroll-margin:6rem;position:relative;z-index:2}
