@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#071c37;--red:#006c81;--red-dark:#00586d;--green:#007489;--paper:#f2f7fa;--line:#d9e4ed;--muted:#54667b;--white:#fff;--cyan:#46d7e5;--blue:#0062ef;--navy:#071c37}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:white;font-family:'Manrope',Arial,sans-serif;font-size:1rem;line-height:1.7}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;letter-spacing:-.04em}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}svg{width:20px;height:20px;flex-shrink:0}[hidden]{display:none!important}:focus-visible{outline:3px solid #1687dc;outline-offset:5px}::selection{background:#b3f0f5;color:var(--ink)}.wrap{width:min(1240px,calc(100% - 80px));margin-inline:auto}.section{padding:104px 0}.eyebrow{display:block;font-size:0.75rem;letter-spacing:.16em;font-weight:800;margin-bottom:20px;color:var(--green)}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;padding:16px 24px;border:1px solid transparent;border-radius:7px;min-height:52px;font-size:0.875rem;font-weight:800;line-height:1.5;background:var(--green);color:white;transition:background .2s,transform .2s}.button:hover{background:#005a71;transform:translateY(-2px)}.button.secondary{background:white;border-color:var(--line);color:var(--ink)}.button.secondary:hover{background:var(--paper)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:0.875rem;font-weight:800}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:12px 20px}.skip:focus{top:10px}
header{position:sticky;top:0;z-index:30;background:#fffffff2;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block;flex-shrink:0}.brand-logo{position:relative;display:block;width:300px;height:66px;overflow:hidden}.brand-logo img{position:absolute;width:330px;max-width:none;height:auto;left:-15px;top:-23px}.nav{display:flex;align-items:center;gap:32px;font-size:0.875rem;font-weight:700}.nav a{transition:color .2s}.nav a:hover,.nav a[aria-current]{color:var(--green)}.nav .nav-cta{padding:12px 19px;background:var(--ink);border:0;border-radius:6px;color:white;display:flex;align-items:center;gap:18px}.nav .nav-cta:hover{background:var(--green);color:white}.menu-toggle{display:none;align-items:center;gap:7px;min-height:44px;border:1px solid var(--line);border-radius:6px;background:white;padding:9px 12px;font-size:0.875rem}
.modern-hero{position:relative;background:var(--navy);color:white;overflow:hidden;padding:66px 0 28px}.hero-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.hero-copy{padding:28px 0}.modern-hero .eyebrow{color:#86d4de;font-size:0.75rem;letter-spacing:.13em}.modern-hero h1{font-size:clamp(3rem,5.2vw,4.75rem);font-weight:800;line-height:1.1;letter-spacing:-.055em;margin-bottom:28px}.modern-hero h1 em{font-style:normal;color:var(--cyan)}.hero-copy>p{color:#c8d8e8;font-size:1.125rem;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin-top:36px}.modern-hero .button{background:var(--cyan);color:var(--ink)}.modern-hero .button:hover{background:#86e7ee}.hero-foot{display:flex;flex-wrap:wrap;gap:12px;margin-top:46px;color:#9bb5cc;font-size:0.75rem}.hero-foot:before{display:none}.hero-foot span+span:before{content:'/';margin-right:12px;color:#5b768f}.hero-visual{position:relative;height:500px;border-radius:90px 12px 12px 12px;overflow:hidden;background:#205a78}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 45%;animation:hero-in 1s ease-out}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#061b3500 40%,#061b35db)}.visual-label{position:absolute;bottom:33px;left:32px;right:30px;z-index:1}.visual-label>span{font-size:0.75rem;letter-spacing:.13em;color:#b4dae5;display:block;margin-bottom:12px}.visual-label strong{font-size:1.4375rem;line-height:1.45;display:block;letter-spacing:-.025em}.visual-label svg{position:absolute;right:0;bottom:5px;width:36px;height:36px;color:var(--cyan)}.visual-index{position:absolute;top:28px;right:28px;z-index:1;font-size:0.75rem;background:#071c3780;border:1px solid #ffffff4d;border-radius:4px;padding:6px 12px;backdrop-filter:blur(5px)}.hero-scroll{display:flex;justify-content:center;align-items:center;gap:14px;color:#9bb5cc;font-size:0.75rem;padding-top:35px}.hero-scroll svg{width:16px;height:16px;animation:scroll-cue 2.5s ease-in-out infinite}.intro-strip{border-bottom:1px solid var(--line);background:white}.intro-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:23px 0;font-size:0.875rem}.disciplines{display:flex;gap:24px;color:var(--muted)}.disciplines span+span{border-left:1px solid var(--line);padding-left:24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-heading h2,h2{font-size:clamp(2rem,3.2vw,2.875rem);font-weight:800}.section-heading>p{max-width:370px;color:var(--muted);font-size:1rem}.section-heading .eyebrow{margin-bottom:14px}
.service-explorer{display:grid;grid-template-columns:.82fr 1.18fr;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}.service-tabs{display:flex;flex-direction:column;background:white;padding:12px}.service-tab{display:flex;align-items:center;text-align:left;gap:15px;padding:20px 18px;background:transparent;border:0;border-radius:7px;min-height:70px;color:var(--muted);font-size:1rem;font-weight:700;transition:background .2s,color .2s}.service-tab>span{font-size:0.75rem;color:#7f93a5}.service-tab svg{margin-left:auto;opacity:.4}.service-tab:hover{background:var(--paper)}.service-tab[aria-selected=true]{background:var(--ink);color:white}.service-tab[aria-selected=true]>span{color:var(--cyan)}.service-tab[aria-selected=true] svg{opacity:1;color:var(--cyan)}.service-panel{padding:48px;min-width:0;display:flex;flex-direction:column;align-items:start;justify-content:center}.service-panel .service-icon{display:grid;place-items:center;width:68px;height:68px;background:white;color:var(--green);border:1px solid var(--line);border-radius:12px;margin-bottom:28px}.service-icon svg{width:30px;height:30px}.service-panel h3{font-size:2rem;max-width:430px;margin-bottom:18px}.service-panel p{font-size:1rem;color:var(--muted);max-width:430px;margin-bottom:26px}.service-panel ul{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}.service-panel li{padding:5px 10px;background:white;border:1px solid var(--line);border-radius:4px;font-size:0.75rem;color:var(--muted)}.service-tail{display:flex;justify-content:space-between;gap:25px;margin-top:24px;font-size:0.875rem;color:var(--muted)}.service-tail .text-link{color:var(--green)}
.software-section{background:#eef4fa;border-block:1px solid var(--line)}.software-section .section-heading>p{max-width:390px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.filter-list{display:flex;flex-wrap:wrap;gap:8px}.filter-list button{padding:10px 16px;border:1px solid #cfdce8;background:transparent;border-radius:30px;color:var(--muted);font-size:0.875rem;font-weight:700;min-height:44px}.filter-list button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.catalog-count{font-size:0.75rem;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product-card{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column;min-width:0}.product-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px #0b24420d}.product-art{position:relative;min-height:175px;background:linear-gradient(125deg,var(--tint,#ebf2ff),#f9fcff);display:flex;align-items:center;justify-content:center;border-bottom:1px solid #e5edf5}.product-avatar{width:128px;height:128px;border-radius:50%;background-image:url('assets/software.png');background-repeat:no-repeat;background-size:1024px 1536px;box-shadow:0 5px 18px #091c3520;border:4px solid #fff}.avatar-met{background-position:-46px -657px}.avatar-acer{background-position:-370px -657px}.avatar-espectro{background-position:-686px -657px}.avatar-almacen{background-position:-149px -961px}.avatar-sismo{background-position:-560px -961px}.avatar-presupuesto{background-position:-149px -1228px}.avatar-valorizaciones{background-position:-560px -1228px}.product-badge{position:absolute;left:16px;top:16px;font-size:0.75rem;font-weight:800;color:var(--accent,#0062ef);background:white;border:1px solid #ffffffcc;border-radius:4px;padding:4px 9px}.product-body{padding:24px;display:flex;flex-direction:column;flex:1}.product-category{font-size:0.75rem;color:var(--muted);margin-bottom:7px}.product-body h3{font-size:1.5625rem;margin-bottom:12px}.product-body p{font-size:1rem;color:var(--muted);margin-bottom:22px}.price-row{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-top:auto;margin-bottom:20px}.price-row del{display:block;color:var(--muted);font-size:0.875rem}.price-row strong{display:block;font-size:1.9375rem;color:var(--ink);letter-spacing:-.04em;font-weight:800}.saving{padding:5px 9px;background:var(--tint,#edf4ff);color:var(--accent,#0062ef);border-radius:4px;font-size:0.75rem;font-weight:800}.product-button{display:flex;justify-content:center;align-items:center;gap:10px;min-height:46px;border:1px solid var(--line);border-radius:6px;background:white;font-size:0.875rem;font-weight:800;color:var(--ink);width:100%}.product-button:hover{border-color:var(--accent,#0062ef);color:var(--accent,#0062ef)}.coming-soon{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:0.875rem;font-weight:800;border:1px dashed var(--line);border-radius:6px;padding:10px 14px;margin-top:auto;min-height:46px}.catalog-note{margin-top:26px;display:flex;gap:10px;align-items:start;color:var(--muted);font-size:0.75rem}.catalog-note svg{width:16px;height:16px;margin-top:2px}
.company-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:84px;align-items:center}.company-photo{position:relative;height:500px;background:#20687d url('assets/empresa.png') no-repeat;background-size:245% auto;background-position:100% 34%;border-radius:12px 80px 12px 12px;overflow:hidden}.company-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(0deg,#071c37aa,transparent)}.company-photo>span{position:absolute;bottom:26px;left:28px;z-index:1;color:white;font-size:0.875rem;font-weight:700}.company-copy h2{margin-bottom:26px}.company-copy>p{color:var(--muted);font-size:1rem;margin-bottom:28px}.company-vision{border-left:3px solid var(--green);padding-left:22px;margin:30px 0}.company-vision h3{font-size:1.25rem;margin-bottom:12px}.company-vision p{font-size:1rem;color:var(--muted)}.company-values{display:flex;flex-wrap:wrap;gap:18px;margin:24px 0 30px;color:var(--green);font-size:0.875rem;font-weight:800}.company-values span{display:flex;align-items:center;gap:7px}.company-values svg{width:18px;height:18px}.brochure-link{border:0;background:none;padding:0;color:var(--green)}
.approach{background:var(--ink);color:white}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:84px}.approach h2{margin-bottom:24px;max-width:460px}.approach-copy p{color:#a6bdd1;font-size:1rem;max-width:410px}.approach .eyebrow{color:var(--cyan)}.approach-signature{display:flex;align-items:center;gap:15px;color:var(--cyan);font-size:0.875rem;margin-top:38px}.approach-signature svg{width:30px;height:30px}.steps{list-style:none;margin:0;padding:0}.steps li{display:grid;grid-template-columns:32px 1fr;gap:22px;border-bottom:1px solid #264059;padding:26px 0}.steps li:first-child{padding-top:0}.number{font-size:0.75rem;color:var(--cyan);padding-top:5px}.steps h3{font-size:1.3125rem;margin-bottom:12px}.steps p{font-size:1rem;color:#a6bdd1}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:84px}.contact-copy h2{margin-bottom:24px}.contact-copy>p{font-size:1rem;color:var(--muted);max-width:360px}.contact-whatsapp{display:flex;align-items:center;gap:15px;max-width:355px;margin-top:30px;padding:19px 0;border-block:1px solid var(--line);color:var(--green)}.contact-whatsapp small{display:block;font-size:0.75rem;margin-bottom:3px}.contact-whatsapp strong{font-size:1.375rem;letter-spacing:-.03em}.contact-whatsapp>svg:last-child{margin-left:auto}.contact-email{display:flex;align-items:center;gap:13px;margin-top:20px;font-size:0.875rem;color:var(--muted)}.contact-note{max-width:330px;font-size:0.75rem;color:var(--muted);margin-top:24px;border-left:2px solid var(--green);padding-left:16px}.form-shell{padding:32px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px;font-size:0.875rem;font-weight:700;min-width:0}.optional{font-size:0.75rem;color:var(--muted);font-weight:400}.full{grid-column:1/-1}input,select,textarea{width:100%;min-width:0;border:1px solid #c6d5e2;border-radius:6px;background:white;padding:12px;color:var(--ink);font-size:1rem;line-height:1.5}textarea{resize:vertical;min-height:135px}input::placeholder,textarea::placeholder{color:#7b8b9b;font-size:0.875rem}.form-footer{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:24px}.form-note{font-size:0.75rem;color:var(--muted)}.request-summary{min-width:0}.request-summary h3{font-size:1.5625rem;margin-bottom:22px}.request-text{font:14px/1.9 'Manrope',Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}.status{font-size:0.75rem;color:var(--green);margin-top:16px}.faq{margin-top:70px;border-top:1px solid var(--line);padding-top:35px;display:grid;grid-template-columns:.9fr 1.1fr;gap:84px}.faq h3{font-size:1.5rem}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;font-size:0.875rem;font-weight:800}.faq details p{font-size:1rem;color:var(--muted);margin-top:12px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}footer{padding:36px 0;background:var(--ink);color:white}.footer-brand{font-size:1.375rem;font-weight:800;letter-spacing:.06em}.footer-copy{font-size:0.75rem;color:#a6bdd1}.back-top{display:flex;align-items:center;gap:10px;font-size:0.75rem}.floating-whatsapp{position:fixed;right:24px;bottom:24px;z-index:25;border-radius:50%;display:grid;place-items:center;width:56px;height:56px;background:#007b61;color:white;box-shadow:0 6px 24px #071c3730;transition:transform .2s}.floating-whatsapp:hover{transform:scale(1.08)}.floating-whatsapp svg{width:26px;height:26px}.reading-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--green);z-index:50}
dialog{width:min(680px,calc(100% - 32px));max-height:90svh;padding:0;border:1px solid var(--line);border-radius:14px;color:var(--ink);box-shadow:0 25px 80px #00162f4d}dialog::backdrop{background:#03142bc9;backdrop-filter:blur(4px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 28px;border-bottom:1px solid var(--line);position:sticky;top:0;background:white;z-index:2}.dialog-header h2{font-size:1.375rem}.dialog-close{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:6px;background:white}.dialog-body{padding:30px}.dialog-body>p{color:var(--muted);margin:18px 0 24px}.dialog-body .price-row{margin:20px 0 26px}.dialog-disclaimer{font-size:0.75rem!important}.brochure-image{width:100%;height:auto}.reveal{opacity:1}.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.motion-ready .reveal.visible{opacity:1;transform:none}
@keyframes hero-in{from{transform:scale(1.05);opacity:.6}to{transform:scale(1);opacity:1}}@keyframes scroll-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.hero-layout{gap:32px}.nav{gap:22px}.hero-visual{height:460px}.company-grid,.approach-grid,.contact-grid,.faq{gap:48px}.product-body{padding:21px}.product-body h3{font-size:1.4375rem}.service-panel{padding:36px}}
@media(max-width:850px){.header-inner{height:76px}.brand-logo{width:220px;height:54px}.brand-logo img{width:250px;left:-14px;top:-18px}.menu-toggle{display:flex}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:18px 24px;box-shadow:0 12px 20px #001c3510}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.nav a{padding:13px}.nav .nav-cta{margin-top:8px;justify-content:space-between}.modern-hero{padding-top:36px}.hero-layout{gap:28px}.modern-hero h1{font-size:3.0625rem}.hero-copy>p{font-size:1rem}.hero-actions{gap:20px}.hero-visual{height:430px;border-top-left-radius:60px}.visual-label{left:24px;right:24px}.visual-label strong{font-size:1.25rem}.hero-foot{margin-top:30px;font-size:0.75rem}.section{padding:78px 0}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:start;gap:24px}.section-heading>p{max-width:310px}.service-panel{padding:30px}.service-panel h3{font-size:1.6875rem}.service-tab{font-size:0.875rem;padding:19px 12px}.company-grid{gap:35px}.company-photo{height:450px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-copy>p{max-width:550px}.faq{grid-template-columns:1fr;gap:25px}.form-shell{padding:28px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.hero-layout{grid-template-columns:1fr;gap:28px}.hero-copy{padding:8px 0}.modern-hero h1{font-size:clamp(2.625rem,9.7vw,3.9375rem)}.modern-hero .eyebrow{font-size:0.75rem;line-height:1.7;max-width:280px}.hero-visual{height:300px;border-radius:45px 8px 8px 8px}.hero-visual>img{object-position:center 57%}.hero-scroll{padding-top:25px}.hero-foot{margin-top:25px;gap:8px}.hero-foot span+span:before{margin-right:8px}.intro-inner{align-items:start;flex-direction:column;gap:8px;font-size:0.75rem;padding-block:18px}.disciplines{gap:16px;font-size:0.75rem}.disciplines span+span{padding-left:16px}.section{padding:62px 0}.section-heading{flex-direction:column;gap:20px}.section-heading>p{max-width:100%}.section-heading h2,h2{font-size:2.0625rem}.service-explorer{grid-template-columns:1fr}.service-tabs{flex-direction:row;overflow-x:auto;padding:8px;gap:6px;border-bottom:1px solid var(--line)}.service-tab{flex-shrink:0;min-height:52px;padding:12px 15px}.service-tab svg{display:none}.service-tab>span{display:none}.service-panel{min-height:370px;padding:28px}.service-panel .service-icon{width:56px;height:56px;margin-bottom:20px}.service-tail{flex-direction:column;gap:14px}.catalog-toolbar{align-items:start;flex-direction:column;gap:14px}.filter-list{gap:6px}.filter-list button{font-size:0.875rem;padding:8px 12px}.product-grid{grid-template-columns:1fr;gap:18px}.product-card{display:grid;grid-template-columns:115px minmax(0,1fr)}.product-art{min-height:100%;border-bottom:0;border-right:1px solid var(--line)}.product-avatar{transform:scale(.68);flex-shrink:0;margin:0 -20px}.product-badge{top:12px;left:8px;font-size:0.75rem;padding:2px 6px}.product-body{padding:22px 18px}.product-body h3{font-size:1.375rem;overflow-wrap:anywhere}.product-body p{font-size:1rem;margin-bottom:18px}.price-row{align-items:start;flex-direction:column;gap:6px;margin-bottom:16px}.price-row strong{font-size:1.75rem}.product-button{padding:10px;font-size:0.875rem}.saving{font-size:0.75rem}.company-grid{grid-template-columns:1fr;gap:32px}.company-photo{height:auto;aspect-ratio:.78;max-height:530px;background-position:100% 34.5%}.company-copy h2{font-size:2.0625rem}.company-vision{margin:24px 0}.approach-grid{grid-template-columns:1fr;gap:40px}.steps h3{font-size:1.25rem}.contact-grid{gap:30px}.form-shell{padding:22px}.form-grid{grid-template-columns:1fr;gap:18px}.form-footer .button{flex-grow:1}.footer-inner{flex-wrap:wrap;gap:20px}.footer-copy{order:3;width:100%}.floating-whatsapp{right:18px;bottom:18px;width:50px;height:50px}.dialog-header{padding:16px 20px}.dialog-body{padding:24px}.dialog-body .price-row{flex-direction:row;align-items:end}}
@media(max-width:360px){.brand-logo{width:150px;height:46px}.brand-logo img{width:178px;left:-14px;top:-13px}.menu-toggle{padding:9px}.product-card{grid-template-columns:92px minmax(0,1fr)}.product-avatar{transform:scale(.6);margin:0 -28px}.product-body{padding:20px 14px}.hero-actions{align-items:start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
@media print{header,.modern-hero,.intro-strip,#servicios,#software,#empresa,#enfoque,.contact-copy,.faq,footer,.form-footer,.status,#project-form,.floating-whatsapp,.reading-progress{display:none!important}.section{padding:0}.wrap{width:100%}.contact-grid{display:block}.form-shell{border:0;background:white}.request-summary[hidden]{display:block!important}}
h1,h2,h3{overflow-wrap:anywhere}.hero-copy,.hero-visual,.company-copy,.approach-copy,.contact-copy,.form-shell{min-width:0}.product-button{white-space:normal}.header-inner{gap:12px}
.product-body p,.coming-soon{overflow-wrap:anywhere}.coming-soon{display:block}.coming-soon svg{display:inline-block;vertical-align:middle;margin-right:5px}.contact-email{display:block;overflow-wrap:anywhere}.contact-email svg{display:inline-block;vertical-align:middle;margin-right:9px}
@media(max-width:650px){.menu-toggle span{display:none}}
