*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#111d28;background:#fff}
a{text-decoration:none;color:inherit}
.site-header{height:102px;display:flex;align-items:center;gap:30px;padding:10px 4.5%;background:#fff;position:sticky;top:0;z-index:30;box-shadow:0 2px 12px #0000000d}
.brand img{width:190px;height:82px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:14px}
.main-nav>a{padding:38px 0 33px;position:relative}
.main-nav>a.active:after{content:"";position:absolute;left:0;right:0;bottom:24px;height:2px;background:#087eea}
.header-cta{display:inline-flex;align-items:center;gap:10px;background:#087eea;color:#fff;border-radius:14px;padding:16px 22px;font-weight:700;white-space:nowrap}
.wa-symbol{font-size:17px}
.menu-toggle{display:none;border:0;background:none;font-size:26px}
.hero{height:410px;position:relative;overflow:hidden;color:#fff}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#061421ef 0%,#061421c7 42%,#0614211c 75%);z-index:1}
.hero-content{position:relative;z-index:2;padding:45px 4.5%;max-width:650px}
.eyebrow{letter-spacing:.5px;font-size:16px;margin:0 0 13px}
.eyebrow.dark{color:#516678;font-size:12px}
.hero h1{font-size:67px;line-height:.9;margin:0 0 14px}
.hero h1 strong{display:block;font-weight:800}
.hero h1 span,.section-head span,.about-copy span,.differential-copy span,.contact-copy span{color:#0785e9}
.hero h2{font-size:23px;margin:0 0 15px}
.hero-copy{font-size:15px;line-height:1.45;max-width:560px}
.hero-actions{display:flex;gap:12px;margin-top:25px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;padding:15px 20px;border-radius:16px;font-size:14px}
.btn-whatsapp{background:#0bc64b;color:#fff}
.btn-outline{border:1px solid #fff;color:#fff}
.section,.section-inner{padding-left:4%;padding-right:4%}
.section{padding-top:42px;padding-bottom:42px}
.section-inner{max-width:1280px;margin:auto}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.section-head h2{font-size:29px;margin:0}
.section-lead,.section-head p{font-size:14px;color:#566878;line-height:1.5;margin:9px 0 0}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1100px}
.service-card{background:#f7f9fb;border:1px solid #e4ebf1;border-radius:8px;text-align:center;padding:26px 18px;min-height:205px}
.service-icon{font-size:34px;color:#087eea;margin-bottom:10px}
.service-card h3{font-size:17px;margin:0 0 8px}
.service-card p{font-size:13px;color:#506174;line-height:1.45;min-height:38px}
.service-card a{display:inline-block;margin-top:12px;font-size:11px;font-weight:800;color:#087eea;letter-spacing:.4px}
.what-we-do{background:#f5f8fa;padding:58px 0}
.center-heading{text-align:center;max-width:750px;margin:0 auto 28px}
.center-heading h2{font-size:36px;margin:5px 0 8px}
.center-heading>p:last-child{color:#5a6b78;margin:0}
.systems-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.systems-grid a{background:#fff;border:1px solid #dfe7ee;border-radius:8px;padding:22px 12px;text-align:center;font-weight:800;color:#183d5e;transition:.2s}
.systems-grid a:hover{border-color:#087eea;color:#087eea;transform:translateY(-2px)}
.work-section{padding:55px 0;background:#fff}
.work-head{align-items:end}
.text-link{font-size:12px;color:#087eea;font-weight:800;white-space:nowrap}
.project-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.project-grid article{height:270px;border-radius:8px;overflow:hidden;position:relative;background:#ddd}
.project-grid img{width:100%;height:100%;object-fit:cover}
.project-grid article>div{position:absolute;bottom:0;left:0;right:0;padding:15px;background:linear-gradient(transparent,#06223df2);color:#fff}
.project-grid b,.project-grid small{display:block}
.project-grid small{margin-top:5px;font-size:12px}
.differential{background:#071c2d;color:#fff}
.differential-inner{display:grid;grid-template-columns:1.05fr .95fr;padding-top:0;padding-bottom:0}
.differential-copy{padding:55px 7% 55px 0}
.differential-copy h2{font-size:36px;line-height:1.06;margin:8px 0 15px}
.differential-copy>p{line-height:1.55;color:#d3e0e9}
.differential-copy ul{padding-left:18px;line-height:2;color:#dce8ef}
.differential-photo{min-height:360px}
.differential-photo img{width:100%;height:100%;object-fit:cover}
.service-details{max-width:1150px;margin:auto;padding:18px 4% 45px}
.detail-row{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid #e3e9ee;padding:25px 0}
.detail-row h3{margin:0 0 7px;font-size:21px}
.detail-row p{margin:0;max-width:800px;color:#596b79;line-height:1.5}
.detail-row>span{font-size:28px;color:#087eea;font-weight:800}
.brands{padding:34px 0;border-top:1px solid #e5eaee;background:#edf5ff}
.section-head.compact{margin-bottom:20px}
.section-head.compact h2{font-size:23px}
.section-head.compact h2 span{color:#1647e8}
.brand-row{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.brand-card{height:78px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:10px 14px;box-shadow:0 5px 18px #0b2a4a0a}
.brand-word{font-weight:800;white-space:nowrap;font-size:20px}
.midea{color:#1686cf}.york{color:#101820}.carrier{color:#184e98;font-style:italic}.trane{color:#d8261e}.toshiba{color:#d31d25}.surrey{color:#0d5db2;font-style:italic}
@media(max-width:900px){.brand-row{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.brand-row{grid-template-columns:repeat(2,1fr)}.brand-card{height:66px}.brand-word{font-size:17px}}
.about{display:grid;grid-template-columns:1fr 1fr;background:#f5f7f8}
.about-photo img{width:100%;height:370px;object-fit:cover}
.about-copy{padding:55px 7%}
.about-copy h2{font-size:35px;line-height:1.08;margin:8px 0 16px}
.about-copy>p{line-height:1.6;color:#4f6170;max-width:600px}
.more-button{display:inline-block;margin-top:18px;background:#087eea;color:#fff;border-radius:4px;padding:13px 18px;font-size:12px;font-weight:800}
.contact{background:#f7f9fb;padding:65px 0}
.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}
.contact-copy h2{font-size:34px;margin:7px 0 14px}
.contact-copy>p{color:#566978;line-height:1.55;max-width:500px}
.contact-icons{display:flex;gap:12px;margin-top:26px}
.contact-icons a,.footer-social a{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#087eea;color:#fff;font-weight:800;font-size:18px}
.contact-icons a:first-child,.footer-social a:first-child{background:#0bc64b}
.contact-form{background:#fff;padding:28px;border-radius:8px;box-shadow:0 10px 35px #0000000c}
.contact-form label{display:block;font-size:12px;font-weight:700;color:#425667;margin-bottom:15px}
.contact-form input,.contact-form textarea{display:block;width:100%;border:1px solid #d8e0e7;border-radius:4px;padding:11px;margin-top:7px;font:inherit}
.btn-primary{border:0;background:#087eea;color:#fff;cursor:pointer}
.floating-whatsapp{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0bc64b;color:#fff;font-size:27px;box-shadow:0 8px 25px #0003;z-index:40}
footer{background:#eef3f7}
.footer-inner{max-width:1280px;margin:auto;padding:32px 4%;display:grid;grid-template-columns:1.4fr auto 1fr;align-items:center;gap:30px}
.footer-brand img{width:190px;height:105px;object-fit:contain;object-position:left center}
.footer-brand p{margin:0;color:#44596a;line-height:1.5}
.footer-social{display:flex;gap:9px}
.footer-note{text-align:right;color:#536878;font-size:13px}
@media(max-width:1050px){.main-nav{gap:17px}.service-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:repeat(3,1fr)}.systems-grid{grid-template-columns:repeat(3,1fr)}.brand-row{justify-content:center}}
@media(max-width:720px){
.site-header{height:76px;padding:8px 18px}.brand img{width:145px;height:60px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:10px 20px 20px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 10px 20px #0002}.main-nav.open{display:flex}.main-nav>a{padding:14px 4px}.header-cta{display:none}
.hero{height:570px}.hero-overlay{background:linear-gradient(180deg,#061421e8 0%,#061421c7 55%,#06142145 100%)}.hero-content{padding:40px 20px}.hero h1{font-size:52px}.hero h2{font-size:19px}.hero-copy{font-size:14px}.hero-actions{flex-direction:column;max-width:300px}
.section,.section-inner{padding-left:18px;padding-right:18px}.section{padding-top:34px;padding-bottom:34px}.section-head{display:block}.service-grid{grid-template-columns:1fr 1fr}.systems-grid{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr 1fr}.project-grid article{height:220px}.work-head .text-link{display:inline-block;margin-top:15px}
.differential-inner{grid-template-columns:1fr}.differential-copy{padding:40px 18px}.differential-photo{min-height:260px}.service-details{padding-left:18px;padding-right:18px}.about{grid-template-columns:1fr}.about-photo img{height:260px}.about-copy{padding:35px 20px}.contact-inner{grid-template-columns:1fr;gap:30px}.contact{padding:45px 0}.footer-inner{grid-template-columns:1fr;padding:28px 18px}.footer-note{text-align:left}.floating-whatsapp{right:16px;bottom:16px}
}

/* v4: página más limpia, sin bloques de relleno */

.page-hero{background:#f5f8fa;padding:72px 4%;border-bottom:1px solid #e2e9ee}.page-hero>div{max-width:1100px;margin:auto}.page-hero h1{font-size:42px;line-height:1.05;margin:8px 0 12px}.page-hero h1 span{color:#087eea}.page-hero p:last-child{color:#566878;line-height:1.5}.info-band{background:#071c2d;color:#fff;padding:55px 4%}.info-band>div{max-width:1100px;margin:auto}.info-band h2{font-size:28px;margin:7px 0 10px}.about-page{max-width:1280px;margin:auto}.about-page .about-photo img{height:420px}.about-page .about-copy{background:#fff}@media(max-width:720px){.page-hero{padding:48px 20px}.page-hero h1{font-size:31px}}

/* Página Trabajos */
.works-hero{background:#071c2d;color:#fff;padding:78px 4% 74px;position:relative;overflow:hidden}
.works-hero:after{content:"";position:absolute;right:-100px;top:-160px;width:470px;height:470px;border-radius:50%;border:1px solid #ffffff18;box-shadow:0 0 0 55px #ffffff05,0 0 0 110px #ffffff03}
.works-hero-inner{max-width:1100px;margin:auto;position:relative;z-index:1}
.works-hero .eyebrow{color:#8eb5d1;font-size:12px;letter-spacing:1.2px;margin-bottom:14px}
.works-hero h1{font-size:54px;line-height:1;margin:0 0 16px;letter-spacing:-1px}
.works-hero h1 span{color:#1593f2}
.works-hero p:last-child{max-width:680px;color:#d2e0e9;line-height:1.6;font-size:15px;margin:0}
.works-intro{padding-top:48px;padding-bottom:30px}
.works-intro-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}
.works-intro h2{font-size:31px;line-height:1.1;margin:7px 0 0}
.works-intro-inner>p{color:#596c7a;line-height:1.6;font-size:14px;margin:0;max-width:570px}
.works-gallery{padding-top:20px;padding-bottom:65px}
.works-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:250px;gap:15px}
.work-card{position:relative;overflow:hidden;border-radius:9px;background:#dbe2e7;min-height:0}
.work-card.work-featured{grid-column:span 2;grid-row:span 2}
.work-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.work-card:hover img{transform:scale(1.045)}
.work-overlay{position:absolute;left:0;right:0;bottom:0;padding:65px 22px 20px;background:linear-gradient(transparent,#061c2fe8 72%);color:#fff}
.work-overlay span{display:inline-block;color:#8ed0ff;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}
.work-overlay h3{font-size:20px;margin:0 0 5px}
.work-overlay p{font-size:12px;line-height:1.45;margin:0;color:#e0e9ef;max-width:450px}
.works-note{background:#071c2d;color:#fff;padding:48px 4%}
.works-note-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.works-note .eyebrow{color:#8eb5d1;font-size:11px;letter-spacing:1px;margin:0 0 8px}
.works-note h2{font-size:29px;line-height:1.1;margin:0;max-width:650px}
.works-note .btn{white-space:nowrap}
@media(max-width:1050px){.works-grid{grid-template-columns:repeat(2,1fr)}.work-card.work-featured{grid-column:span 2}}
@media(max-width:720px){.works-hero{padding:54px 20px}.works-hero h1{font-size:38px}.works-intro{padding-top:36px}.works-intro-inner{grid-template-columns:1fr;gap:16px}.works-gallery{padding:15px 18px 45px}.works-grid{grid-template-columns:1fr 1fr;grid-auto-rows:190px;gap:10px}.work-card.work-featured{grid-column:span 2;grid-row:span 2}.work-overlay{padding:45px 13px 13px}.work-overlay h3{font-size:16px}.work-overlay p{font-size:10px}.works-note{padding:40px 18px}.works-note-inner{display:block}.works-note h2{font-size:25px}.works-note .btn{margin-top:22px}}

/* Página Nosotros */
.about-hero{background:#071c2d;color:#fff;padding:78px 4% 74px;position:relative;overflow:hidden}
.about-hero:after{content:"";position:absolute;right:-120px;top:-170px;width:500px;height:500px;border-radius:50%;border:1px solid #ffffff18;box-shadow:0 0 0 55px #ffffff05,0 0 0 110px #ffffff03}
.about-hero-inner{max-width:1100px;margin:auto;position:relative;z-index:1}
.about-hero .eyebrow{color:#8eb5d1;font-size:12px;letter-spacing:1.2px;margin-bottom:14px}
.about-hero h1{font-size:52px;line-height:1.02;letter-spacing:-1px;margin:0 0 18px}
.about-hero h1 span{color:#1593f2}
.about-hero p:last-child{max-width:670px;color:#d2e0e9;line-height:1.6;font-size:15px;margin:0}
.about-main{padding-top:65px;padding-bottom:65px}
.about-main-inner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.about-main-photo{min-height:520px;border-radius:8px;overflow:hidden;background:#dbe2e7}
.about-main-photo img{width:100%;height:100%;min-height:520px;display:block;object-fit:cover}
.about-main-copy{padding-right:4%}
.about-main-copy h2{font-size:35px;line-height:1.08;margin:8px 0 20px;color:#102b40}
.about-main-copy>p:not(.eyebrow){color:#566978;line-height:1.65;max-width:580px;margin:0 0 14px}
.about-values{background:#f5f8fa;padding:62px 0 70px}
.about-heading{text-align:left;margin:0 0 28px;max-width:none}
.about-heading h2{font-size:31px;margin:5px 0 0;color:#102b40}
.about-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.about-values-grid article{background:#fff;border:1px solid #e0e8ee;border-radius:8px;padding:28px 25px;min-height:185px}
.about-values-grid article>span{display:block;color:#087eea;font-size:12px;font-weight:800;letter-spacing:1px;margin-bottom:15px}
.about-values-grid h3{font-size:19px;margin:0 0 9px;color:#183d5e}
.about-values-grid p{font-size:13px;color:#596c7a;line-height:1.55;margin:0}
.about-cta{background:#071c2d;color:#fff;padding:48px 4%}
.about-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.about-cta .eyebrow{color:#8eb5d1;font-size:11px;letter-spacing:1px;margin:0 0 8px}
.about-cta h2{font-size:29px;line-height:1.1;margin:0;max-width:650px}
.about-cta .btn{white-space:nowrap}
@media(max-width:1050px){.about-main-inner{gap:35px}.about-values-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.about-hero{padding:54px 20px}.about-hero h1{font-size:37px}.about-main{padding-top:40px;padding-bottom:40px}.about-main-inner{grid-template-columns:1fr;gap:28px}.about-main-photo,.about-main-photo img{min-height:320px;height:320px}.about-main-copy{padding-right:0}.about-main-copy h2{font-size:29px}.about-values{padding:45px 0 50px}.about-values-grid{grid-template-columns:1fr}.about-cta{padding:40px 18px}.about-cta-inner{display:block}.about-cta h2{font-size:25px}.about-cta .btn{margin-top:22px}}

/* Página Contacto */
.contact-hero{background:#071c2d;color:#fff;padding:78px 4% 74px;position:relative;overflow:hidden}
.contact-hero:after{content:"";position:absolute;right:-120px;top:-170px;width:500px;height:500px;border-radius:50%;border:1px solid #ffffff18;box-shadow:0 0 0 55px #ffffff05,0 0 0 110px #ffffff03}
.contact-hero-inner{max-width:1100px;margin:auto;position:relative;z-index:1}
.contact-hero .eyebrow{color:#8eb5d1;font-size:12px;letter-spacing:1.2px;margin-bottom:14px}
.contact-hero h1{font-size:54px;line-height:1;letter-spacing:-1px;margin:0 0 17px}
.contact-hero h1 span{color:#1593f2}
.contact-hero p:last-child{max-width:650px;color:#d2e0e9;line-height:1.6;font-size:15px;margin:0}
.contact-main{padding:65px 4% 70px;background:#fff}
.contact-main-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.contact-info{padding-top:8px}
.contact-info h2,.contact-form-card h2{font-size:34px;line-height:1.08;color:#102b40;margin:7px 0 15px}
.contact-lead{color:#566978;line-height:1.65;max-width:540px;margin:0 0 25px}
.contact-data{border-top:1px solid #e1e8ed;margin-top:25px}
.contact-data-row{display:flex;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid #e1e8ed}
a.contact-data-row{transition:.2s}
a.contact-data-row:hover strong{color:#087eea}
.contact-data-icon{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eaf4fc;color:#087eea;font-weight:800;font-size:17px}
.contact-data-icon.whatsapp{background:#e8faef;color:#0aa847}
.contact-data-row small{display:block;font-size:9px;letter-spacing:1px;font-weight:800;color:#718290;margin-bottom:3px}
.contact-data-row strong{display:block;font-size:15px;color:#183d5e;transition:.2s}
.contact-big-btn{margin-top:27px}
.contact-form-card{background:#f5f8fa;border:1px solid #e0e8ee;border-radius:9px;padding:31px}
.contact-form-card>p:not(.eyebrow){color:#596c7a;line-height:1.55;font-size:13px;margin:0 0 22px}
.contact-form-card form{background:#fff;padding:24px;border-radius:7px;border:1px solid #e2e9ee}
.contact-form-card label{display:block;font-size:11px;font-weight:800;letter-spacing:.2px;color:#425667;margin-bottom:16px}
.contact-form-card .optional{font-weight:500;color:#83919c}
.contact-form-card input,.contact-form-card textarea{display:block;width:100%;border:1px solid #d8e0e7;border-radius:4px;padding:12px;margin-top:7px;font:inherit;color:#1b2c39;resize:vertical;outline:none}
.contact-form-card input:focus,.contact-form-card textarea:focus{border-color:#087eea;box-shadow:0 0 0 3px #087eea14}
.contact-form-card .btn{width:100%;border:0}
.contact-bottom{background:#071c2d;color:#fff;padding:48px 4%}
.contact-bottom-inner{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}
.contact-bottom .eyebrow{color:#8eb5d1;font-size:11px;letter-spacing:1px;margin:0 0 8px}
.contact-bottom h2{font-size:28px;line-height:1.12;margin:0;max-width:690px}
.contact-bottom .btn{white-space:nowrap}
@media(max-width:720px){
.contact-hero{padding:54px 20px}.contact-hero h1{font-size:39px}
.contact-main{padding:42px 18px 48px}.contact-main-inner{grid-template-columns:1fr;gap:35px}.contact-info h2,.contact-form-card h2{font-size:29px}.contact-form-card{padding:20px}.contact-form-card form{padding:19px}.contact-bottom{padding:40px 18px}.contact-bottom-inner{display:block}.contact-bottom h2{font-size:25px}.contact-bottom .btn{margin-top:22px}
}


/* Acabado final: contraste azul suave y logos sociales SVG */
body{background:#F0F3F6}
.site-header{background:#fff}
.section.services,.contact-main{background:#F0F3F6}
.work-section{background:#E5EBF1}
.service-card,.contact-form-card form,.brand-card{background:#fff}
.about-main{background:#F0F3F6}
.about-values{background:#E5EBF1}
.contact-main{background:linear-gradient(180deg,#E5EBF1 0%,#F0F3F6 100%)}
.contact-hero:before{content:"";position:absolute;z-index:0;right:3%;top:50%;transform:translateY(-50%);width:min(42vw,470px);height:88%;background:url('assets/logo.png') center/contain no-repeat;opacity:.075;filter:grayscale(1) brightness(0) invert(1);pointer-events:none}
.contact-hero:after{right:-100px;top:-160px;opacity:.45}
.footer-social a svg,.contact-icons a svg,.contact-data-icon svg,.floating-whatsapp svg,.header-cta svg{width:19px;height:19px;display:block;fill:currentColor}
.footer-social a{transition:transform .2s,opacity .2s}
.footer-social a:hover{transform:translateY(-2px);opacity:.88}
.contact-icons a svg{width:21px;height:21px}
.contact-data-icon svg{width:20px;height:20px}
.floating-whatsapp svg{width:28px;height:28px}
@media(max-width:720px){.contact-hero:before{right:-45px;width:70vw;height:75%;opacity:.055}}


/* Ajustes aprobados: fondo gris azulado y animaciones solo en el encabezado */
.site-header{background:#F0F3F6}
.main-nav>a{transition:transform .22s ease,color .22s ease;transform-origin:center}
.main-nav>a:after{content:"";position:absolute;left:0;right:100%;bottom:24px;height:2px;background:#087eea;transition:right .22s ease}
.main-nav>a:hover{color:#087eea;transform:scale(1.055)}
.main-nav>a:hover:after{right:0}
.main-nav>a.active:after{right:0}
.header-cta{transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease;transform-origin:center}
.header-cta:hover{transform:scale(1.045);box-shadow:0 7px 18px #087eea35;background:#066fe0}
@media(prefers-reduced-motion:reduce){.main-nav>a,.main-nav>a:after,.header-cta{transition:none}}


/* Ajustes finales aprobados: legibilidad de formularios y hover de WhatsApp */
.contact-form label{font-size:14px}
.contact-form input,.contact-form textarea{font-size:14px}
.contact-form-card label{font-size:13px}
.contact-form-card input,.contact-form-card textarea{font-size:14px}
.contact-form-card textarea::placeholder{font-size:14px}
.floating-whatsapp{transition:transform .22s ease,box-shadow .22s ease}
.floating-whatsapp:hover{transform:scale(1.08);box-shadow:0 10px 28px #0003}
@media(prefers-reduced-motion:reduce){.floating-whatsapp{transition:none}}


/* Galerías independientes de trabajos */
.works-gallery-list{display:grid;grid-template-columns:1fr;gap:34px}
.gallery-card{background:#fff;border:1px solid rgba(24,49,75,.10);border-radius:16px;overflow:hidden;box-shadow:0 12px 30px rgba(22,42,63,.06)}
.gallery-card-heading{padding:22px 24px 16px}
.gallery-card-heading .eyebrow{margin:0 0 7px;font-size:.72rem;letter-spacing:.12em}
.gallery-card-heading h3{margin:0 0 7px;color:#18314b;font-size:1.45rem}
.gallery-card-heading p:last-child{margin:0;color:#657487;line-height:1.6}
.gallery-frame{position:relative;overflow:hidden;background:#e5ebf1;touch-action:pan-y}
.gallery-track{display:flex;transition:transform .35s ease;will-change:transform}
.gallery-slide{flex:0 0 100%;width:100%;display:none;aspect-ratio:16/9;overflow:hidden}
.gallery-slide.is-active{display:block}
.gallery-slide img{width:100%;height:100%;display:block;object-fit:cover;cursor:zoom-in}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(16,39,61,.82);color:#fff;font-size:30px;line-height:1;display:grid;place-items:center;cursor:pointer;transition:transform .18s ease,background .18s ease;z-index:2}
.gallery-arrow:hover{background:#1678b9;transform:translateY(-50%) scale(1.08)}
.gallery-prev{left:14px}.gallery-next{right:14px}
.gallery-counter{position:absolute;right:16px;bottom:14px;background:rgba(16,39,61,.84);color:#fff;border-radius:20px;padding:6px 11px;font-size:.8rem;letter-spacing:.04em}
.gallery-card:focus-within{outline:2px solid rgba(22,120,185,.4);outline-offset:3px}
.gallery-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(5,15,26,.92);display:none;align-items:center;justify-content:center;padding:24px}
.gallery-lightbox.open{display:flex}
.gallery-lightbox img{max-width:min(94vw,1400px);max-height:88vh;object-fit:contain}
.gallery-lightbox-close{position:absolute;top:18px;right:22px;border:0;background:transparent;color:#fff;font-size:38px;cursor:pointer}
@media(max-width:640px){
 .works-gallery-list{gap:22px}
 .gallery-card-heading{padding:18px 17px 14px}
 .gallery-card-heading h3{font-size:1.25rem}
 .gallery-slide{aspect-ratio:4/3}
 .gallery-arrow{width:38px;height:38px;font-size:26px}
 .gallery-prev{left:9px}.gallery-next{right:9px}
}


/* Ajuste: galerías integradas a la grilla original de Trabajos */
.works-gallery-list{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:250px;gap:15px}
.gallery-card{padding:0;border:0;border-radius:9px;box-shadow:none;min-height:0}
.gallery-frame{position:absolute;inset:0;aspect-ratio:auto;background:#dbe2e7}
.gallery-track{height:100%;width:100%}
.gallery-slide{height:100%;aspect-ratio:auto;flex:0 0 100%;width:100%}
.gallery-slide.is-active{display:block}
.gallery-slide img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}
.gallery-card .work-overlay{z-index:1;pointer-events:none}
.gallery-arrow{z-index:3;width:38px;height:38px;font-size:26px;background:rgba(18,91,177,.92)}
.gallery-prev{left:12px}.gallery-next{right:12px}
.gallery-counter{z-index:3;right:12px;bottom:12px;padding:4px 9px;font-size:.75rem}
.gallery-card:hover .gallery-slide img{transform:scale(1.025)}
@media(max-width:1050px){.works-gallery-list{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}}
@media(max-width:720px){.works-gallery-list{grid-template-columns:1fr 1fr;grid-auto-rows:190px;gap:10px}.gallery-arrow{width:32px;height:32px;font-size:22px}.gallery-prev{left:7px}.gallery-next{right:7px}.gallery-counter{right:7px;bottom:7px}}
@media(max-width:420px){.works-gallery-list{grid-template-columns:1fr;grid-auto-rows:230px}}


/* Recuperar la composición original: Instalación destacada y tarjetas secundarias */
.works-gallery-list{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:250px;align-items:stretch}
.works-gallery-list .work-card.work-featured{grid-column:span 2;grid-row:span 2}
.works-gallery-list .gallery-card:not(.work-featured){grid-column:span 1;grid-row:span 1}
@media(max-width:1050px){
 .works-gallery-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:230px}
 .works-gallery-list .work-card.work-featured{grid-column:span 2;grid-row:span 2}
}
@media(max-width:720px){
 .works-gallery-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:190px}
 .works-gallery-list .work-card.work-featured{grid-column:span 2;grid-row:span 2}
}
@media(max-width:420px){
 .works-gallery-list{grid-template-columns:1fr;grid-auto-rows:220px}
 .works-gallery-list .work-card.work-featured{grid-column:span 1;grid-row:span 2}
}


/* Marca de agua VC: misma escala sutil en los cuatro banners */
.contact-hero:after,
.about-hero:after,
.works-hero:after,
.services-cta:after{
  content:"";
  position:absolute;
  right:3.5%;
  top:50%;
  transform:translateY(-50%);
  width:clamp(150px,19vw,255px);
  height:clamp(100px,14vw,175px);
  border:0;
  border-radius:0;
  box-shadow:none;
  background:url("assets/logo.png") center/contain no-repeat;
  opacity:.075;
  pointer-events:none;
  z-index:0;
}
.contact-hero:after{width:clamp(150px,18vw,235px);height:clamp(100px,13vw,160px);opacity:.07}
.services-cta-inner{position:relative;z-index:1}
.services-cta:after{right:4%;opacity:.07}
@media(max-width:720px){
 .contact-hero:after,.about-hero:after,.works-hero:after,.services-cta:after{
   right:2%;width:125px;height:88px;opacity:.055
 }
}


.gallery-arrow:hover{background:#087eea;color:#fff;transform:translateY(-50%) scale(1.10);box-shadow:0 0 0 3px rgba(8,126,234,.16)}
.gallery-lightbox{gap:20px}
.gallery-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:0;border-radius:50%;background:#087eea;color:#fff;font-size:32px;line-height:1;display:grid;place-items:center;cursor:pointer;transition:transform .18s ease,background .18s ease}
.gallery-lightbox-nav:hover{background:#1593ff;transform:translateY(-50%) scale(1.08)}
.gallery-lightbox-prev{left:24px}.gallery-lightbox-next{right:24px}
@media(max-width:640px){.gallery-lightbox-nav{width:40px;height:40px;font-size:26px}.gallery-lightbox-prev{left:10px}.gallery-lightbox-next{right:10px}.gallery-lightbox{padding:14px}}


/* Corrección definitiva de marca de agua: una sola versión pequeña por banner */
.contact-hero:before{content:none !important;display:none !important}
.contact-hero:after{
  content:"";
  right:3.5%;top:50%;transform:translateY(-50%);
  width:clamp(150px,18vw,235px);height:clamp(100px,13vw,160px);
  border:0;box-shadow:none;border-radius:0;
  background:url("assets/logo.png") center/contain no-repeat;
  opacity:.07;filter:grayscale(1) brightness(0) invert(1);
  pointer-events:none;z-index:0
}
.services-cta{background:#071c2d !important;position:relative;overflow:hidden}
.services-cta:after{
  content:"";position:absolute;right:3.5%;top:50%;transform:translateY(-50%);
  width:clamp(150px,19vw,255px);height:clamp(100px,14vw,175px);
  border:0;box-shadow:none;border-radius:0;
  background:url("assets/logo.png") center/contain no-repeat;
  opacity:.07;filter:grayscale(1) brightness(0) invert(1);
  pointer-events:none;z-index:0
}
.services-cta-inner{position:relative;z-index:1}
@media(max-width:720px){
 .contact-hero:before{display:none !important}
 .contact-hero:after,.services-cta:after{right:2%;width:125px;height:88px;opacity:.055}
}


/* Ajuste final de ubicación: el logo va en el banner principal, no en el CTA inferior */
.services-cta:after{content:none !important;display:none !important}
.page-hero{position:relative;overflow:hidden;background:#071c2d !important;color:#fff !important}
.page-hero:after{
  content:"";
  position:absolute;
  right:3.5%;
  top:50%;
  transform:translateY(-50%);
  width:clamp(150px,19vw,255px);
  height:clamp(100px,14vw,175px);
  background:url("assets/logo.png") center/contain no-repeat;
  opacity:.075;
  filter:grayscale(1) brightness(0) invert(1);
  pointer-events:none;
  z-index:0;
}
.page-hero-inner{position:relative;z-index:1}
.page-hero h1,.page-hero p{position:relative;z-index:1}
.page-hero h1 span{color:#1593f2 !important}
.page-hero p:last-child{color:#d2e0e9 !important}
.contact-hero:after{
  content:"";
  position:absolute;
  right:3.5%;
  top:50%;
  transform:translateY(-50%);
  width:clamp(150px,19vw,255px);
  height:clamp(100px,14vw,175px);
  border:0;border-radius:0;box-shadow:none;
  background:url("assets/logo.png") center/contain no-repeat;
  opacity:.075;
  filter:grayscale(1) brightness(0) invert(1);
  pointer-events:none;z-index:0;
}
@media(max-width:720px){
 .page-hero:after,.contact-hero:after{right:2%;width:125px;height:88px;opacity:.055}
}


/* Marca de agua unificada: misma imagen, escala, posición y opacidad en los cuatro banners */
.page-hero,
.works-hero,
.about-hero,
.contact-hero{
  position:relative;
  overflow:hidden;
}
.page-hero:after,
.works-hero:after,
.about-hero:after,
.contact-hero:after{
  content:"" !important;
  position:absolute !important;
  right:3.5% !important;
  top:50% !important;
  left:auto !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  width:clamp(150px,19vw,255px) !important;
  height:clamp(100px,14vw,175px) !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:url("assets/logo.png") center/contain no-repeat !important;
  opacity:.075 !important;
  filter:grayscale(1) brightness(0) invert(1) !important;
  pointer-events:none !important;
  z-index:0 !important;
}
.page-hero:before,
.works-hero:before,
.about-hero:before,
.contact-hero:before{
  content:none !important;
  display:none !important;
}
.page-hero-inner,
.works-hero-inner,
.about-hero-inner,
.contact-hero-inner{
  position:relative;
  z-index:1;
}
/* CTA de WhatsApp en Servicios: verde como el resto de las consultas */
.services-cta .btn{
  background:#25D366 !important;
  color:#fff !important;
  border-color:#25D366 !important;
  transition:background .2s ease,transform .2s ease,box-shadow .2s ease;
}
.services-cta .btn:hover{
  background:#1fba59 !important;
  border-color:#1fba59 !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(37,211,102,.24);
}
@media(max-width:720px){
  .page-hero:after,
  .works-hero:after,
  .about-hero:after,
  .contact-hero:after{
    right:2% !important;
    width:125px !important;
    height:88px !important;
    opacity:.055 !important;
  }
}


/* Restauración del efecto de logo de fondo de la versión anterior aprobada.
   Se usa el archivo original logo.png, integrado al fondo y con baja opacidad. */
.page-hero, .works-hero, .about-hero, .contact-hero{
  position:relative !important;
  overflow:hidden !important;
}
.page-hero:before,
.works-hero:before,
.about-hero:before,
.contact-hero:before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:0 !important;
  right:3% !important;
  top:50% !important;
  left:auto !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  width:min(35vw,390px) !important;
  height:76% !important;
  background:url('assets/logo.png') center/contain no-repeat !important;
  opacity:.045 !important;
  filter:grayscale(1) brightness(0) invert(1) !important;
  border:0 !important;
  box-shadow:none !important;
  pointer-events:none !important;
}
.page-hero:after,
.works-hero:after,
.about-hero:after,
.contact-hero:after{
  content:none !important;
  display:none !important;
}
.page-hero-inner, .works-hero-inner, .about-hero-inner, .contact-hero-inner{
  position:relative !important;
  z-index:1 !important;
}
@media(max-width:720px){
 .page-hero:before, .works-hero:before, .about-hero:before, .contact-hero:before{
   right:1% !important;
   width:55vw !important;
   height:68% !important;
   opacity:.04 !important;
 }
}


/* Ajuste solicitado: logo de fondo pequeño, casi oculto, en la esquina inferior derecha.
   Mismo tamaño, posición y transparencia para Servicios, Trabajos, Nosotros y Contacto. */
.page-hero:before,
.works-hero:before,
.about-hero:before,
.contact-hero:before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:0 !important;
  right:18px !important;
  left:auto !important;
  top:auto !important;
  bottom:12px !important;
  transform:none !important;
  width:112px !important;
  height:72px !important;
  background:url("assets/logo.png") center/contain no-repeat !important;
  opacity:.04 !important;
  filter:grayscale(1) brightness(0) invert(1) !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  pointer-events:none !important;
}
.page-hero:after,
.works-hero:after,
.about-hero:after,
.contact-hero:after{
  content:none !important;
  display:none !important;
}
.page-hero-inner,
.works-hero-inner,
.about-hero-inner,
.contact-hero-inner{
  position:relative !important;
  z-index:1 !important;
}
@media(max-width:720px){
  .page-hero:before,
  .works-hero:before,
  .about-hero:before,
  .contact-hero:before{
    right:10px !important;
    bottom:8px !important;
    width:92px !important;
    height:60px !important;
    opacity:.035 !important;
  }
}


/* Trabajos: seis categorías y jerarquía visual acordada */
.works-gallery-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:250px;
  gap:15px;
}
.works-gallery-list .work-featured{
  grid-column:span 2;
  grid-row:span 2;
}
.works-gallery-list .work-card[data-gallery="mantenimiento"],
.works-gallery-list .work-card[data-gallery="reparaci-n"]{
  grid-column:span 1;
  grid-row:span 1;
}
.works-gallery-list .work-card[data-gallery="split"],
.works-gallery-list .work-card[data-gallery="vrf"],
.works-gallery-list .work-card[data-gallery="chillers"]{
  grid-column:span 1;
  grid-row:span 1;
}
@media(max-width:1050px){
 .works-gallery-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:230px}
 .works-gallery-list .work-featured{grid-column:span 2;grid-row:span 2}
}
@media(max-width:720px){
 .works-gallery-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:190px;gap:10px}
 .works-gallery-list .work-featured{grid-column:span 2;grid-row:span 2}
}
@media(max-width:420px){
 .works-gallery-list{grid-template-columns:1fr;grid-auto-rows:220px}
 .works-gallery-list .work-featured{grid-column:span 1;grid-row:span 2}
}

/* Opción 2: flechas rectas más cortas y compactas */
.gallery-arrow,.gallery-lightbox-nav{font-family:Arial,Helvetica,sans-serif;font-weight:400;font-size:18px;line-height:1;}
.gallery-arrow{border-radius:50%;}
.gallery-lightbox-nav{border-radius:50%;font-size:20px;}


/* Flechas clásicas, cortas y gruesas: dibujadas con CSS para que no dependan de la fuente */
.gallery-arrow,
.gallery-lightbox-nav {
  font-size: 0 !important;
  letter-spacing: 0 !important;
  font-weight: 900 !important;
  position: absolute;
  display: grid;
  place-items: center;
}
.gallery-arrow::before,
.gallery-lightbox-nav::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 3px;
  border-radius: 3px;
  background: #fff;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.gallery-arrow::after,
.gallery-lightbox-nav::after {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  border-radius: 1px;
  right: 9px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.gallery-arrow.gallery-prev::after,
.gallery-lightbox-nav.prev::after,
.gallery-lightbox-nav[aria-label*="anterior"]::after {
  right: auto;
  left: 9px;
  transform: translateY(-50%) rotate(225deg);
}
.gallery-arrow {
  width: 32px !important;
  height: 32px !important;
}
.gallery-lightbox-nav {
  width: 40px !important;
  height: 40px !important;
}
@media (max-width: 720px) {
  .gallery-arrow {
    width: 30px !important;
    height: 30px !important;
  }
  .gallery-arrow::after { right: 8px; }
  .gallery-arrow.gallery-prev::after { left: 8px; }
}


/* Mensajes de ayuda del formulario de inicio */
.form-feedback{margin:14px 0 10px;color:#425667;font-size:13px;line-height:1.5}
.form-whatsapp-fallback{display:inline-flex;margin-top:8px;text-align:center;text-decoration:none;line-height:1.35}
.form-whatsapp-fallback[hidden],.form-feedback[hidden]{display:none}
