
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--blue:#1657a8;--blue-dark:#0b2f5f;--blue-soft:#eaf4ff;--cyan:#2ba6d6;--text:#152230;--muted:#687b8b;--line:#dce6ef;--bg:#f6f9fc;--white:#fff;--green:#25D366}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:var(--blue-dark);color:#d8e7f7;font-size:12px}.topbar .container{height:35px;display:flex;align-items:center;justify-content:space-between;gap:18px}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo img{height:54px;width:auto;display:block}
nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:700;color:#334a5c}nav a:hover,nav a.active{color:var(--blue)}.menu{display:none;border:0;background:none;font-size:26px;color:var(--blue-dark)}
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--blue);border-radius:7px;padding:12px 18px;background:var(--blue);color:#fff;font-size:13px;font-weight:800;transition:.2s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(22,87,168,.15)}.btn-outline{background:#fff;color:var(--blue)}
.hero{background:linear-gradient(180deg,#fff 0%,#f3f8fd 100%);border-bottom:1px solid var(--line)}.hero-grid{min-height:570px;display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;padding:68px 0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue);margin-bottom:15px}.hero h1,.page-hero h1{font-size:clamp(40px,5.3vw,66px);line-height:1.03;letter-spacing:-2.4px}.hero h1 span,.page-hero h1 span{color:var(--blue)}.hero p,.page-hero p{color:var(--muted);font-size:15px;line-height:1.75;margin-top:21px;max-width:690px}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}
.hero-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:28px;box-shadow:0 18px 48px rgba(13,39,70,.08)}.hero-card img{width:100%;max-height:100px;object-fit:contain;margin-bottom:23px}.hero-card h2{font-size:23px;line-height:1.22;margin-bottom:10px}.hero-card p{font-size:12px;margin:0}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.mini{background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:14px}.mini b{display:block;color:var(--blue);font-size:17px}.mini span{display:block;color:var(--muted);font-size:10px;line-height:1.4;margin-top:3px}
.strip{border-bottom:1px solid var(--line)}.strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}.strip-item{padding:21px 23px;border-right:1px solid var(--line)}.strip-item:last-child{border-right:0}.strip-item b{font-size:13px;display:block}.strip-item span{font-size:10px;color:var(--muted);display:block;margin-top:5px}
section{padding:84px 0}.section-head{display:grid;grid-template-columns:1fr .72fr;gap:70px;align-items:end;margin-bottom:40px}.section-head h2{font-size:clamp(30px,4vw,43px);line-height:1.09;letter-spacing:-1.5px}.section-head p{color:var(--muted);font-size:13px;line-height:1.75}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{border:1px solid var(--line);border-radius:13px;padding:25px;background:#fff;min-height:220px;transition:.2s}.card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(13,39,70,.07);border-color:#a8cae7}.card .num{font-size:9px;color:var(--blue);font-weight:800;letter-spacing:1px}.card h3{font-size:17px;margin:29px 0 9px}.card p{font-size:12px;line-height:1.65;color:var(--muted)}
.page-hero{background:var(--bg);border-bottom:1px solid var(--line)}.page-hero .container{padding:74px 0 66px}.page-hero h1{font-size:clamp(38px,5vw,57px);max-width:870px}.page-hero p{max-width:760px}
.dark{background:var(--blue-dark);color:#fff}.dark .section-head p{color:#b7c9d8}.dark .eyebrow{color:#78d4f4}.dark-card{border:1px solid #315475;border-radius:13px;padding:25px;min-height:215px;background:#0e3b6d}.dark-card h3{font-size:17px;margin:27px 0 9px}.dark-card p{font-size:12px;line-height:1.65;color:#c5d4e0}.dark-card .num{font-size:9px;color:#84ddfb;font-weight:800}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.project{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff}.project-visual{height:170px;background:linear-gradient(135deg,#0b2f5f,#1e6bb7);position:relative}.project-visual:before{content:"";position:absolute;inset:27px;border:1px solid rgba(255,255,255,.28);border-radius:9px}.project-visual:after{content:"";position:absolute;left:45px;right:45px;top:82px;height:3px;background:#fff;box-shadow:0 24px 0 rgba(255,255,255,.55)}.project-body{padding:21px}.project-body small{font-size:9px;font-weight:800;color:var(--blue);letter-spacing:1px;text-transform:uppercase}.project-body h3{font-size:17px;margin:7px 0}.project-body p{font-size:12px;color:var(--muted);line-height:1.6}
.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.client-logo{height:150px;border:1px solid var(--line);border-radius:13px;background:#fff;display:flex;align-items:center;justify-content:center;padding:20px}.client-logo img{max-width:80%;max-height:92px;object-fit:contain}.client-logo .fallback{font-size:25px;font-weight:800;color:var(--blue-dark)}
.brand-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.brand{height:90px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;padding:12px}.brand img{max-width:100%;max-height:62px;object-fit:contain}.brand-text{font-size:15px;font-weight:800;color:var(--blue-dark);text-align:center}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-grid h2{font-size:40px;letter-spacing:-1.4px;line-height:1.1;margin-bottom:17px}.about-grid p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:12px}.info-box{background:var(--blue-dark);color:#fff;border-radius:14px;padding:28px}.info-box h3{font-size:23px;margin-bottom:16px}.row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.18);padding:15px 0}.row span{font-size:11px;color:#c4d8e8}.row b{font-size:13px;text-align:right}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.contact-list{border-top:1px solid var(--line);margin-top:23px}.contact-item{padding:15px 0;border-bottom:1px solid var(--line)}.contact-item small{display:block;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--blue);font-weight:800;margin-bottom:5px}.contact-item span,.contact-item a{font-size:13px}.form{border:1px solid var(--line);border-radius:14px;padding:27px;background:#fff}.form h3{font-size:22px;margin-bottom:5px}.form p{font-size:11px;color:var(--muted);margin-bottom:15px}.field{margin-top:11px}.field label{display:block;font-size:9px;color:#708294;text-transform:uppercase;font-weight:800;letter-spacing:.7px;margin-bottom:6px}.field input,.field textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;outline:none}.form .btn{width:100%;margin-top:13px}
footer{background:#071421;color:#9eb0bd;padding:28px 0;font-size:10px}.footer{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.wa{position:fixed;right:22px;bottom:22px;width:57px;height:57px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;box-shadow:0 12px 28px rgba(0,0,0,.25);z-index:80}
@media(max-width:930px){nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu{display:block}.hero-grid,.section-head,.about-grid,.contact-grid{grid-template-columns:1fr}.cards,.project-grid{grid-template-columns:1fr 1fr}.brand-grid{grid-template-columns:repeat(3,1fr)}.client-grid,.strip-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.container{width:min(100% - 28px,1160px)}.logo img{height:42px}.hero h1,.page-hero h1{font-size:39px}.cards,.project-grid,.brand-grid,.client-grid,.strip-grid,.mini-grid{grid-template-columns:1fr}section{padding:68px 0}}

.contact-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.contact-badges a{padding:9px 12px;border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:700;background:#fff}
.link-list{display:grid;gap:10px}.link-list a{display:block;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:13px}.link-list a:hover{border-color:#9cc7e5}
.phone-list,.mail-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.small-card{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}.small-card small{display:block;font-size:10px;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.small-card a{font-size:13px}
.photo-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.photo-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.photo-card img{width:100%;height:250px;object-fit:cover;display:block}.photo-card .body{padding:18px}.photo-card .body small{font-size:10px;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:1px}.photo-card .body h3{font-size:16px;margin:8px 0}.photo-card .body p{font-size:12px;color:var(--muted);line-height:1.6}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-item{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.gallery-item img{width:100%;height:280px;object-fit:cover;display:block}.gallery-item .caption{padding:16px}.gallery-item .caption small{display:block;font-size:10px;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:1px}.gallery-item .caption h3{font-size:15px;margin:8px 0}.gallery-item .caption p{font-size:12px;color:var(--muted);line-height:1.6}
@media(max-width:930px){.phone-list,.mail-list,.photo-grid-3,.gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.phone-list,.mail-list,.photo-grid-3,.gallery-grid{grid-template-columns:1fr}}

.feature-list{display:grid;gap:10px;margin-top:16px}.feature-list li{list-style:none;padding-left:18px;position:relative;color:var(--muted);font-size:13px;line-height:1.7}.feature-list li:before{content:"•";position:absolute;left:0;top:0;color:var(--blue);font-weight:900}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.value-card{border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff}.value-card h3{font-size:17px;margin-bottom:8px}.value-card p{font-size:12px;color:var(--muted);line-height:1.65}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.product-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(13,39,70,.05)}.product-card img{width:100%;height:440px;object-fit:cover;display:block;background:#f5f7fa}.product-card .body{padding:18px}.product-card .body small{display:block;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--blue);font-weight:800}.product-card .body h3{font-size:17px;margin:7px 0}.product-card .body p{font-size:12px;color:var(--muted);line-height:1.65}
.note-box{background:var(--blue-soft);border:1px solid #c9dff1;border-radius:14px;padding:18px 20px;color:#274b69;font-size:13px;line-height:1.7}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:930px){.values-grid,.product-grid,.two-col{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.values-grid,.product-grid,.two-col{grid-template-columns:1fr}}

.brands-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.brand-logo-card,.brand-text-card{background:#fff;border:1px solid var(--line);border-radius:16px;min-height:118px;display:flex;align-items:center;justify-content:center;padding:18px;box-shadow:0 10px 30px rgba(13,39,70,.05)}.brand-logo-card img{max-width:100%;max-height:54px;object-fit:contain;filter:saturate(1.02)}.brand-text-card{font-weight:800;font-size:22px;color:#113663;text-align:center;letter-spacing:-.3px}.brand-text-card small{display:block;font-weight:600;color:var(--muted);font-size:11px;letter-spacing:.6px;text-transform:uppercase;margin-top:5px}.brand-preview{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.brand-preview .brand-logo-card,.brand-preview .brand-text-card{min-height:94px;padding:14px}.brand-text-card.si{color:#009999}.brand-text-card.sch{color:#1f9b41}.brand-text-card.ab{color:#1d1d1d}.brand-text-card.weg{color:#0053b3}.brand-text-card.delta{color:#1d63d1}.brand-text-card.omron{color:#2155c9}.brand-text-card.honey{color:#d61e24}.brand-text-card.sick{color:#1060c9}.brand-text-card.ls{color:#2540c7}.brand-text-card.key{color:#161616}.brand-text-card.pepperl{color:#198a4a}.brand-text-card.leuze{color:#da1018}.brand-text-card.cntd{color:#1660c3}.brand-text-card.diks{color:#2758c2}.brand-text-card.damen{color:#2153b4}.brand-text-card.ls small,.brand-text-card.ab small,.brand-text-card.key small,.brand-text-card.cntd small,.brand-text-card.diks small,.brand-text-card.damen small{color:#677281}
.product-grid .product-card img{height:520px;object-position:top center}
@media(max-width:1000px){.brands-grid{grid-template-columns:repeat(3,1fr)}.brand-preview{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.brands-grid,.brand-preview{grid-template-columns:repeat(2,1fr)}.brand-text-card{font-size:18px}}

.service-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-feature{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.service-feature img{width:100%;height:260px;object-fit:cover;display:block}.service-feature .body{padding:18px}.service-feature small{font-size:10px;color:var(--blue);font-weight:800;letter-spacing:1px;text-transform:uppercase}.service-feature h3{font-size:17px;margin:7px 0}.service-feature p{font-size:12px;line-height:1.6;color:var(--muted)}
.history-timeline{display:grid;gap:0;margin-top:22px;border-left:2px solid #cfe0ef}.history-item{position:relative;padding:0 0 28px 28px}.history-item:before{content:"";position:absolute;left:-7px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--blue)}.history-item small{display:block;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.history-item h3{font-size:18px;margin:6px 0}.history-item p{font-size:13px;color:var(--muted);line-height:1.7;max-width:760px}
.sales-wa-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.sales-wa-card{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;transition:.2s}.sales-wa-card:hover{border-color:#91c5e8;transform:translateY(-2px)}.sales-wa-card svg{width:22px;height:22px;color:#16a34a;flex:0 0 auto}.sales-wa-card small{display:block;font-size:9px;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:.8px}.sales-wa-card b{display:block;font-size:13px;margin-top:2px}.seo-local{font-size:12px;color:var(--muted);line-height:1.65;margin-top:16px}
@media(max-width:930px){.service-feature-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.service-feature-grid,.sales-wa-grid{grid-template-columns:1fr}.service-feature img{height:220px}}


.mt-24{margin-top:24px}.center{text-align:center}
.cta{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#f4f9ff,#ffffff);border:1px solid var(--line);border-radius:18px;padding:28px}
.service-tab-layout{display:grid;grid-template-columns:300px 1fr;gap:18px;align-items:start}
.service-tab-nav{display:grid;gap:10px;position:sticky;top:96px}
.service-tab-btn{appearance:none;border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px 18px;text-align:left;font-weight:800;color:var(--text);display:flex;align-items:center;gap:12px;cursor:pointer;transition:.2s;box-shadow:0 10px 24px rgba(13,39,70,.04)}
.service-tab-btn span{display:grid;place-items:center;min-width:36px;height:36px;border-radius:10px;background:var(--blue-soft);color:var(--blue);font-size:12px}
.service-tab-btn:hover,.service-tab-btn.active{border-color:#9cc7e5;transform:translateY(-2px);background:#fdfefe}
.service-tab-btn.active span{background:var(--blue);color:#fff}
.service-tab-content{border:1px solid var(--line);border-radius:18px;padding:24px;background:#fff;min-height:100%}
.service-panel{display:none}.service-panel.active{display:grid;grid-template-columns:1fr;gap:18px}
.service-panel-copy h2{font-size:32px;letter-spacing:-1px;margin:6px 0 10px}.service-panel-copy p{font-size:13px;line-height:1.75;color:var(--muted)}
.service-shot-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.service-shot{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.service-shot img{width:100%;height:280px;object-fit:cover;display:block}.service-shot .body{padding:14px}.service-shot h4{font-size:14px;line-height:1.4}
@media(max-width:930px){.cta,.service-tab-layout{grid-template-columns:1fr}.service-tab-nav{position:static}.service-shot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.service-shot-grid{grid-template-columns:1fr}.cta{padding:22px}}

/* Hero V9: titular más limpio y corporativo */
.hero .hero-title-refined{max-width:760px;font-size:clamp(44px,5vw,66px);line-height:1.03;letter-spacing:-2.3px;font-weight:800;text-wrap:balance;}
.hero .hero-title-refined span{display:block;color:var(--blue);margin-top:4px;}
.hero .hero-grid>div:first-child{padding-right:10px;}
@media(max-width:930px){.hero .hero-title-refined{max-width:820px;font-size:clamp(42px,7vw,60px);}}
@media(max-width:560px){.hero .hero-title-refined{font-size:38px;line-height:1.08;letter-spacing:-1.4px;}.hero .hero-title-refined span{display:inline;margin-top:0;}}


/* V10 refinements */
.values-head{align-items:end}.values-head p{max-width:420px}
.values-grid-refined{gap:16px;margin-top:18px}
.value-card-refined{position:relative;padding:20px 18px 18px 74px;border-radius:16px;box-shadow:0 10px 28px rgba(13,39,70,.05);min-height:120px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.value-card-refined h3{font-size:18px;margin:0 0 8px}
.value-card-refined p{font-size:13px;line-height:1.6;margin:0}
.value-badge{position:absolute;left:18px;top:18px;width:40px;height:40px;border-radius:12px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-size:12px;font-weight:900;letter-spacing:.4px;border:1px solid #cfe3f2}
@media(max-width:560px){.value-card-refined{padding:18px 16px 16px 68px;min-height:auto}.value-card-refined h3{font-size:17px}}


/* V12: valores compactos y centrados */
.values-wrap{max-width:980px;margin:0 auto;}
.values-wrap .values-head{grid-template-columns:1fr .75fr;gap:40px;margin-bottom:18px;}
.values-grid-refined{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.value-card-refined{min-height:112px;padding:18px 16px 16px 68px;}
.value-card-refined h3{font-size:17px;}
.value-card-refined p{font-size:12px;line-height:1.55;}
.value-badge{left:16px;top:16px;width:38px;height:38px;border-radius:10px;}
@media(max-width:930px){.values-wrap{max-width:760px}.values-wrap .values-head{grid-template-columns:1fr}.values-grid-refined{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.values-wrap{max-width:100%}.values-grid-refined{grid-template-columns:1fr}.value-card-refined{min-height:auto;}}
