:root{--navy:#061a36;--navy2:#0a2b52;--blue:#0875f5;--cyan:#45d7ff;--green:#28a83f;--text:#0e1b2e;--muted:#64748b;--soft:#f4f7fb;--white:#fff;--shadow:0 18px 45px rgba(7,27,55,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--text);background:#fff}a{text-decoration:none;color:inherit}img{max-width:100%}.topbar{height:34px;background:var(--navy);color:#fff;display:flex;align-items:center;gap:32px;padding:0 4vw;font-size:12px}.topbar a{opacity:.94}.top-whatsapp{margin-left:auto;background:var(--green);height:34px;display:flex;align-items:center;padding:0 22px;font-weight:800}.header{height:98px;padding:12px 4vw;display:flex;align-items:center;background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 4px 18px rgba(0,0,0,.06)}.brand img{width:205px;height:72px;object-fit:contain}.nav{margin-left:auto;display:flex;align-items:center;gap:31px;font-size:13px;font-weight:800;text-transform:uppercase}.nav a{position:relative}.nav a::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--blue);transform:scaleX(0);transition:.25s}.nav a:hover::after,.nav a.active::after{transform:scaleX(1)}.menu-button{display:none;margin-left:auto;border:0;background:none;font-size:28px}.hero{min-height:680px;background:linear-gradient(118deg,#061a36 0 47%,#e9edf3 47% 100%);position:relative;overflow:hidden;padding:85px 6vw 120px;display:grid;grid-template-columns:1fr 1.15fr;align-items:center}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:45px 45px}.hero-glow{position:absolute;width:540px;height:540px;border-radius:50%;background:radial-gradient(circle,rgba(38,125,255,.28),transparent 68%);left:10%;top:15%}.hero-content{position:relative;z-index:2;color:#fff;max-width:680px}.kicker{display:block;font-size:12px;letter-spacing:.14em;font-weight:900;color:#85c8ff;margin-bottom:16px}.kicker.blue{color:var(--blue)}.hero h1{font-size:56px;line-height:1.04;margin:0 0 22px;letter-spacing:-.04em}.hero h1 span,.projects h2 span{color:#39ba43}.hero p{font-size:17px;line-height:1.75;color:#d7e1ef;max-width:610px}.hero-points{display:flex;gap:26px;flex-wrap:wrap;font-size:13px;margin:28px 0}.hero-actions{display:flex;gap:14px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;border-radius:10px;font-weight:800;border:1px solid transparent;transition:.25s;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--green),#31c14b);color:#fff;box-shadow:0 10px 26px rgba(40,168,63,.28)}.btn.primary:hover{transform:translateY(-2px)}.btn.ghost{border-color:#8da0bb;color:#fff}.hero-visual{position:relative;z-index:2;height:500px}.room{position:absolute;inset:0;perspective:900px;background:linear-gradient(145deg,#d6d2cf,#f9f7f5);border-radius:24px 0 0 24px;overflow:hidden;box-shadow:-25px 30px 70px rgba(0,0,0,.24)}.room::before{content:"";position:absolute;left:0;top:0;bottom:0;width:46%;background:linear-gradient(90deg,rgba(8,26,54,.7),transparent)}.wall-logo{position:absolute;right:6%;top:14%;width:36%;filter:drop-shadow(0 14px 12px rgba(0,0,0,.08))}.wall-logo img{mix-blend-mode:multiply}.split-unit{position:absolute;top:8%;left:38%;width:180px;height:56px;background:linear-gradient(#fff,#e7ebef);border-radius:9px;box-shadow:0 12px 22px rgba(0,0,0,.16)}.split-front{position:absolute;inset:10px 14px 17px;border-bottom:2px solid #cfd7df}.split-louver{position:absolute;left:18px;right:18px;bottom:7px;height:6px;background:#66798b;border-radius:0 0 6px 6px}.cold-flow{position:absolute;top:46px;width:6px;height:105px;border-radius:20px;background:linear-gradient(#64e7ff,transparent);filter:blur(1px);animation:flow 2.1s infinite ease-in-out}.f1{left:38px;transform:rotate(14deg)}.f2{left:88px;animation-delay:.45s}.f3{right:32px;transform:rotate(-14deg);animation-delay:.9s}.sofa{position:absolute;right:9%;bottom:14%;width:58%;height:100px;background:#9a9692;border-radius:22px 22px 5px 5px;box-shadow:0 18px 26px rgba(0,0,0,.18)}.sofa i{position:absolute;top:-43px;width:29%;height:65px;border-radius:18px;background:#aaa5a1}.sofa i:nth-child(1){left:4%}.sofa i:nth-child(2){left:35%}.sofa i:nth-child(3){right:4%}.table{position:absolute;left:43%;bottom:7%;width:180px;height:18px;border-radius:50%;background:#5f4a3f;box-shadow:0 25px 0 -8px #6b5448}.lamp{position:absolute;right:32%;bottom:39%;width:44px;height:85px;border-left:4px solid #7f746d}.lamp::before{content:"";position:absolute;left:-20px;top:-18px;border-left:22px solid transparent;border-right:22px solid transparent;border-bottom:38px solid #f6efe6}.floor{position:absolute;left:0;right:0;bottom:0;height:26%;background:linear-gradient(165deg,#c8b7a2,#ae9a83)}.trust-strip{position:absolute;left:6vw;right:6vw;bottom:28px;z-index:4;background:#fff;border-radius:16px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:var(--shadow);padding:21px 24px}.trust-strip div{padding:0 24px;border-right:1px solid #d8e0ea}.trust-strip div:last-child{border:0}.trust-strip b,.trust-strip span{display:block}.trust-strip b{font-size:13px;text-transform:uppercase}.trust-strip span{font-size:12px;color:var(--muted);margin-top:5px}.section{padding:92px 6vw}.section-heading{max-width:820px;margin-bottom:45px}.section-heading h2,.info-panel h2,.contact-copy h2{font-size:42px;line-height:1.12;margin:0 0 14px;letter-spacing:-.03em}.section-heading p,.info-panel p,.contact-copy p{color:var(--muted);line-height:1.75}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.service-card{background:#fff;border:1px solid #e7edf5;border-radius:16px;padding:18px;box-shadow:0 10px 25px rgba(8,27,55,.06);transition:.25s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.service-card h3{font-size:16px;min-height:40px}.service-card p{font-size:13px;color:var(--muted);line-height:1.55;min-height:82px}.service-card a{font-size:13px;color:var(--blue);font-weight:800}.mini-system{height:105px;border-radius:12px;background:linear-gradient(145deg,#eef4fa,#fff);position:relative;overflow:hidden}.split-mini i{position:absolute;width:76px;height:25px;left:25px;top:35px;background:white;border-radius:5px;box-shadow:0 7px 15px #b8c2cf}.split-mini span{position:absolute;width:4px;height:45px;background:linear-gradient(#46d8ff,transparent);top:55px;animation:flow 2s infinite}.split-mini span:nth-child(2){left:42px}.split-mini span:nth-child(3){left:60px;animation-delay:.4s}.split-mini span:nth-child(4){left:78px;animation-delay:.8s}.duct-mini i{position:absolute;left:16px;top:37px;width:54px;height:34px;background:#d7dde5;border-radius:5px}.duct-mini b{position:absolute;left:70px;top:49px;width:90px;height:12px;background:#b9c6d6}.duct-mini span{position:absolute;width:48px;height:8px;background:#c6d2df;top:62px}.duct-mini span:nth-of-type(1){left:82px;transform:rotate(35deg)}.duct-mini span:nth-of-type(2){left:105px}.duct-mini span:nth-of-type(3){left:123px;transform:rotate(-35deg)}.cassette-mini i{position:absolute;width:52px;height:52px;left:62px;top:24px;background:#fff;border:6px solid #cad5e1;transform:rotateX(50deg) rotateZ(45deg);box-shadow:0 8px 18px #c9d3df}.cassette-mini span{position:absolute;width:3px;height:43px;background:linear-gradient(#52dcff,transparent);left:88px;top:56px;transform-origin:top}.cassette-mini span:nth-child(2){transform:rotate(45deg)}.cassette-mini span:nth-child(3){transform:rotate(135deg)}.cassette-mini span:nth-child(4){transform:rotate(225deg)}.cassette-mini span:nth-child(5){transform:rotate(315deg)}.ventilation-mini i{position:absolute;left:62px;top:28px;width:53px;height:53px;border-radius:9px;background:#c9d6e4}.ventilation-mini i::after{content:"";position:absolute;inset:13px;border-radius:50%;border:6px dotted var(--blue);animation:spin 4s linear infinite}.ventilation-mini span{position:absolute;top:47px;width:52px;height:7px;background:#9dcbe9}.ventilation-mini span:nth-child(3){left:10px}.ventilation-mini span:nth-child(4){right:10px}.circuit-mini i,.circuit-mini b,.circuit-mini em{position:absolute;border-radius:7px;background:#647f9d}.circuit-mini i{left:16px;top:27px;width:34px;height:50px}.circuit-mini b{right:18px;top:22px;width:42px;height:58px}.circuit-mini em{left:73px;top:37px;width:28px;height:34px}.circuit-mini span{position:absolute;left:50px;right:60px;top:50px;height:3px;background:linear-gradient(90deg,#ff6c53,#49d7ff);animation:pulse 1.6s infinite}.dark-section{background:radial-gradient(circle at 20% 20%,#103b69,#061a36 55%);color:#fff}.section-heading.light p{color:#c0ccda}.system-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}.tab{border:1px solid #456381;background:rgba(255,255,255,.05);color:#dce8f5;padding:12px 18px;border-radius:9px;cursor:pointer;font-weight:800}.tab.active{background:var(--blue);border-color:var(--blue);color:#fff}.system-stage{display:grid;grid-template-columns:.8fr 1.4fr;gap:45px;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:32px}.system-copy p{color:#c6d3e1;line-height:1.7}.system-copy ul{padding-left:20px;color:#d6e0eb;line-height:1.9}.system-canvas{height:390px;border-radius:18px;background:linear-gradient(145deg,#eff5fb,#cfdcea);position:relative;overflow:hidden;perspective:900px}.diagram{position:absolute;inset:0;opacity:0;pointer-events:none;transform:scale(.96);transition:.35s}.active-diagram{opacity:1;transform:scale(1)}.outdoor-unit,.indoor-unit{position:absolute;background:linear-gradient(#fdfefe,#dbe3eb);box-shadow:0 18px 25px rgba(0,0,0,.15);color:#19324f;font-size:12px;font-weight:800}.outdoor-unit{left:8%;top:31%;width:150px;height:150px;border-radius:12px}.outdoor-unit i{position:absolute;width:90px;height:90px;border:9px dotted #55708c;border-radius:50%;left:30px;top:25px;animation:spin 3s linear infinite}.outdoor-unit span{position:absolute;bottom:8px;left:24px}.indoor-unit{right:9%;top:26%;width:230px;height:72px;border-radius:10px;padding:20px}.pipe{position:absolute;height:6px;border-radius:9px;left:37%;right:34%;top:45%;background:#ff7d5f}.pipe-b{top:51%;background:#42c9ff}.airflow{position:absolute;right:19%;top:42%;width:6px;height:130px;background:linear-gradient(#35caff,transparent);border-radius:9px;animation:flow 2s infinite}.a2{right:26%;animation-delay:.4s}.a3{right:33%;animation-delay:.8s}.duct-machine{position:absolute;left:8%;top:40%;width:125px;height:62px;background:#becbda;border-radius:9px;padding:21px;color:#28415d;font-weight:800}.main-duct{position:absolute;left:30%;top:46%;width:55%;height:25px;background:#9eafc1;border-radius:5px}.branch{position:absolute;width:22%;height:16px;background:#9eafc1;top:44%}.br1{left:47%;transform:rotate(-36deg)}.br2{left:58%;transform:rotate(36deg)}.br3{left:70%;top:61%;transform:rotate(90deg)}.room-tag{position:absolute;background:#fff;padding:9px 14px;border-radius:8px;color:#16324d;font-weight:800;box-shadow:0 8px 16px rgba(0,0,0,.12)}.rt1{left:48%;top:16%}.rt2{right:8%;top:21%}.rt3{right:18%;bottom:12%}.duct-air{position:absolute;width:55px;height:5px;background:linear-gradient(90deg,#52d9ff,transparent);animation:pulse 1.4s infinite}.da1{left:48%;top:35%;transform:rotate(-36deg)}.da2{right:15%;top:39%;transform:rotate(36deg);animation-delay:.4s}.da3{right:29%;bottom:26%;transform:rotate(90deg);animation-delay:.8s}.ceiling-grid{position:absolute;inset:0;background-image:linear-gradient(#b8c7d7 1px,transparent 1px),linear-gradient(90deg,#b8c7d7 1px,transparent 1px);background-size:70px 70px;transform:perspective(500px) rotateX(55deg) scale(1.3);transform-origin:center top}.cassette-body{position:absolute;left:43%;top:22%;width:120px;height:120px;background:white;border:12px solid #cbd6e3;transform:rotateX(55deg) rotateZ(45deg);box-shadow:0 25px 30px rgba(0,0,0,.18)}.cassette-body i{position:absolute;inset:24px;border-radius:50%;border:9px dotted #4e6f91;animation:spin 3s linear infinite}.jet{position:absolute;width:8px;height:140px;background:linear-gradient(#38d1ff,transparent);left:50%;top:48%;transform-origin:top;animation:flow 2s infinite}.j1{transform:rotate(45deg)}.j2{transform:rotate(135deg);animation-delay:.3s}.j3{transform:rotate(225deg);animation-delay:.6s}.j4{transform:rotate(315deg);animation-delay:.9s}.vent-box{position:absolute;left:39%;top:30%;width:150px;height:130px;background:#bac9d8;border-radius:16px;box-shadow:0 18px 25px rgba(0,0,0,.15)}.vent-box i{position:absolute;inset:27px;border-radius:50%;border:12px dotted #356d9d;animation:spin 2.6s linear infinite}.vent-duct{position:absolute;top:45%;height:32px;width:33%;background:#9caec0}.vent-duct.in{left:6%}.vent-duct.out{right:6%}.fresh,.extract{position:absolute;color:#18344f;font-weight:800}.fresh{left:8%;top:34%}.extract{right:8%;top:34%}.particle{position:absolute;width:9px;height:9px;border-radius:50%;background:#3bcfff;top:50%;animation:moveAcross 3s infinite}.p1{left:7%}.p2{left:18%;animation-delay:.6s}.p3{right:16%;animation-delay:1.2s;background:#ff8e6f}.p4{right:7%;animation-delay:1.8s;background:#ff8e6f}.component{position:absolute;width:110px;height:65px;border-radius:12px;background:#385f85;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900}.compressor{left:8%;top:40%}.condenser{right:8%;top:16%}.valve{right:8%;bottom:16%}.evaporator{left:8%;bottom:13%}.loop{position:absolute;border:6px solid transparent;border-radius:40px}.l1{left:28%;right:28%;top:22%;height:60px;border-top-color:#ff765f}.l2{right:19%;top:33%;bottom:33%;width:60px;border-right-color:#ffb45e}.l3{left:28%;right:28%;bottom:20%;height:60px;border-bottom-color:#39c9ff}.l4{left:19%;top:33%;bottom:33%;width:60px;border-left-color:#5edfff}.refrigerant{position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 12px #fff;animation:orbit 4s linear infinite}.r1{left:31%;top:18%}.r2{right:15%;top:45%;animation-delay:1s}.r3{right:42%;bottom:16%;animation-delay:2s}.r4{left:15%;top:54%;animation-delay:3s}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:28px 0;color:#29425f;font-weight:700}.business-visual{height:430px;position:relative;background:linear-gradient(145deg,#eaf1f8,#cdd9e6);border-radius:24px;overflow:hidden}.building{position:absolute;left:12%;right:12%;bottom:0;height:72%;background:#f7f9fc;border:10px solid #b9c6d4;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:16px;padding:22px}.building span{background:linear-gradient(145deg,#97c7e8,#d9edf9);border:5px solid #dce5ee}.rooftop-unit{position:absolute;top:12%;width:120px;height:90px;background:#7690aa;border-radius:9px;box-shadow:0 15px 24px rgba(0,0,0,.18)}.u1{left:20%}.u2{right:20%}.rooftop-unit i{position:absolute;inset:22px;border:8px dotted #e8f4ff;border-radius:50%;animation:spin 3s linear infinite}.tech-card{position:absolute;right:5%;bottom:8%;background:#071b36;color:#fff;padding:18px 22px;border-radius:14px;box-shadow:var(--shadow)}.soft{background:var(--soft)}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.benefit-grid article{background:#fff;padding:25px;border-radius:16px;box-shadow:0 10px 25px rgba(8,27,55,.07)}.benefit-grid b{font-size:34px;color:#d5e5f8}.benefit-grid p{color:var(--muted);line-height:1.6}.projects{background:linear-gradient(110deg,#061a36,#0b315d);color:#fff;padding:55px 6vw;display:grid;grid-template-columns:.7fr 1.6fr;gap:42px;align-items:center}.projects h2{font-size:38px;margin:0 0 12px}.projects p{color:#bed0e3}.project-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.project-cards article{background:#fff;color:#18314c;border-radius:12px;overflow:hidden}.project-cards h3{font-size:13px;padding:0 13px 13px}.project-art{height:145px;position:relative;background:#dfe8f1;overflow:hidden}.cassette-art::before{content:"";position:absolute;left:32%;top:16%;width:78px;height:78px;background:#fff;border:10px solid #b8c6d4;transform:rotate(45deg);box-shadow:0 15px 22px rgba(0,0,0,.18)}.duct-art{background:linear-gradient(150deg,#ced8e1,#f4f7fa)}.duct-art::before,.duct-art::after{content:"";position:absolute;background:#96a8ba;height:30px;border-radius:5px}.duct-art::before{left:10%;right:8%;top:35%;transform:rotate(10deg)}.duct-art::after{left:25%;right:22%;top:60%;transform:rotate(-18deg)}.split-art::before{content:"";position:absolute;width:130px;height:42px;left:21%;top:22%;background:white;border-radius:7px;box-shadow:0 12px 22px #aebbc7}.split-art::after{content:"";position:absolute;left:37%;top:63%;width:7px;height:55px;background:linear-gradient(#3bd3ff,transparent)}.vrf-art::before,.vrf-art::after{content:"";position:absolute;top:22%;width:78px;height:95px;background:#657f99;border-radius:6px}.vrf-art::before{left:16%}.vrf-art::after{right:16%}.contact{background:#fff}.contact-card{background:linear-gradient(145deg,#f3f7fb,#e3edf7);border-radius:24px;padding:42px;display:grid;grid-template-columns:1fr 1fr;gap:50px;box-shadow:var(--shadow)}.contact-copy a{display:block;margin:12px 0;font-weight:800;color:#153a61}.contact-copy .small{font-size:12px}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact input,.contact select,.contact textarea{width:100%;border:1px solid #ccd8e5;background:#fff;padding:14px;border-radius:10px;font:inherit}.contact textarea{grid-column:1/-1;min-height:110px}.contact button{grid-column:1/-1}.contact small{grid-column:1/-1;color:var(--muted)}.floating-whatsapp{position:fixed;right:22px;bottom:22px;z-index:60;background:var(--green);color:#fff;padding:14px 19px;border-radius:999px;font-weight:900;box-shadow:0 10px 25px rgba(40,168,63,.35)}footer{padding:28px 6vw;background:#061a36;color:#fff;display:flex;align-items:center;gap:28px}footer img{width:130px;height:58px;object-fit:contain;background:#fff;border-radius:8px}footer p{margin-right:auto;color:#c6d3e0;font-size:13px}footer div{display:flex;gap:20px;font-size:13px}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes flow{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(14px)}}@keyframes pulse{0%,100%{opacity:.35}50%{opacity:1}}@keyframes moveAcross{0%{transform:translateX(0);opacity:0}30%{opacity:1}100%{transform:translateX(390px);opacity:0}}@keyframes orbit{0%{transform:translate(0,0)}25%{transform:translate(250px,0)}50%{transform:translate(250px,190px)}75%{transform:translate(0,190px)}100%{transform:translate(0,0)}}
@media(max-width:1100px){.nav{gap:18px;font-size:11px}.hero{grid-template-columns:1fr;min-height:auto;padding-bottom:160px}.hero-visual{height:430px;margin-top:45px}.service-grid{grid-template-columns:repeat(2,1fr)}.projects{grid-template-columns:1fr}.project-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{display:none}.header{height:78px}.brand img{width:150px;height:58px}.menu-button{display:block}.nav{position:absolute;top:78px;left:0;right:0;background:#fff;display:none;flex-direction:column;padding:24px;box-shadow:0 18px 30px rgba(0,0,0,.12)}.nav.open{display:flex}.hero{padding:60px 5vw 150px;background:linear-gradient(#061a36 0 53%,#e8edf3 53%)}.hero h1{font-size:42px}.hero-points{flex-direction:column;gap:12px}.hero-actions{flex-direction:column}.hero-visual{height:360px}.wall-logo{width:43%;right:3%}.split-unit{left:22%;width:145px}.trust-strip{grid-template-columns:1fr 1fr;gap:18px}.trust-strip div{border-right:0;padding:0}.section{padding:70px 5vw}.section-heading h2,.info-panel h2,.contact-copy h2{font-size:34px}.service-grid,.benefit-grid{grid-template-columns:1fr}.system-stage,.split-layout,.contact-card{grid-template-columns:1fr}.system-canvas{height:320px}.project-cards{grid-template-columns:1fr 1fr}.contact form{grid-template-columns:1fr}.contact textarea,.contact button,.contact small{grid-column:auto}footer{flex-direction:column;align-items:flex-start}.trust-strip{bottom:20px}.room{border-radius:18px}}

/* Diseño visual aprobado mostrado en la parte superior */
.approved-design{position:relative;width:100%;background:#eef3f8;overflow:hidden;border-bottom:1px solid #d8e1eb}
.approved-design img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.approved-actions{position:absolute;left:6.4%;top:33.8%;display:flex;gap:14px;z-index:3}
.whatsapp-btn{background:#0b2545;color:#fff;border:1px solid rgba(255,255,255,.7)}
.whatsapp-btn:hover{background:#123b68}
@media(max-width:900px){.approved-actions{display:none}.approved-design{margin-top:0}}

/* Nuevas secciones comerciales */
.calculator-section{background:linear-gradient(145deg,#eef5fb,#fff)}
.calculator-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;max-width:1050px;margin:auto}
.calculator-card,.calculator-result{background:#fff;border-radius:22px;padding:30px;box-shadow:var(--shadow)}
.calculator-card{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.calculator-card label{position:relative;font-weight:800;color:#173452;display:grid;gap:8px}
.calculator-card input,.calculator-card select{border:1px solid #cbd8e5;border-radius:10px;padding:14px;font:inherit;background:#fafdff}
.calculator-card label>span{position:absolute;right:14px;bottom:15px;color:var(--muted);font-weight:600}
.calculator-card button{grid-column:1/-1}
.calculator-result{background:linear-gradient(145deg,#071b36,#0c3a6b);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.calculator-result>span{color:#9fc7ef;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.12em}
.calculator-result strong{font-size:54px;margin:8px 0;color:#fff}
.calculator-result b{font-size:20px;color:#5ed06e}
.calculator-result p{line-height:1.6;color:#d6e2ed}
.dark-ghost{border-color:#90abd0;color:#fff}
.cases-grid,.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.case-card{background:#fff;border:1px solid #dfe8f1;border-radius:20px;padding:28px;box-shadow:0 12px 30px rgba(7,27,54,.08)}
.case-card>span{font-size:12px;letter-spacing:.13em;color:#0565d8;font-weight:900}
.case-card h3{font-size:25px;margin:12px 0}
.case-card p,.case-card li{color:var(--muted);line-height:1.6}
.case-card ul{padding-left:18px}
.testimonial-grid blockquote{margin:0;background:#fff;border-radius:18px;padding:28px;box-shadow:0 10px 24px rgba(8,27,55,.07)}
.testimonial-grid blockquote div{color:#f4aa14;letter-spacing:.15em}
.testimonial-grid blockquote p{font-size:18px;line-height:1.6;color:#203a55}
.testimonial-grid cite{font-style:normal;color:var(--muted);font-size:13px}
.faq-list{max-width:950px;margin:auto;border-top:1px solid #dce6ef}
.faq-list details{border-bottom:1px solid #dce6ef;padding:8px 0}
.faq-list summary{cursor:pointer;padding:20px 8px;font-weight:850;color:#102d4b;font-size:18px}
.faq-list p{padding:0 8px 20px;color:var(--muted);line-height:1.7}
.mobile-contact-bar{display:none}
@media(max-width:900px){.calculator-wrap{grid-template-columns:1fr}.calculator-card{grid-template-columns:1fr}.calculator-card button{grid-column:auto}.cases-grid,.testimonial-grid{grid-template-columns:1fr}.nav{max-height:calc(100vh - 78px);overflow:auto}.floating-whatsapp{display:none}.mobile-contact-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr;left:0;right:0;bottom:0;z-index:80;box-shadow:0 -8px 20px rgba(0,0,0,.15)}.mobile-contact-bar a{padding:15px;text-align:center;font-weight:900;color:#fff;background:#0565d8}.mobile-contact-bar a:last-child{background:#28a83f}body{padding-bottom:54px}}


/* Cobertura, páginas locales y cumplimiento */
.coverage-section{background:linear-gradient(180deg,#f3f7fb,#fff)}
.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1050px;margin:auto}
.coverage-card{position:relative;overflow:hidden;background:#fff;border:1px solid #dce7f1;border-radius:22px;padding:34px;box-shadow:0 14px 34px rgba(7,27,54,.08)}
.coverage-card:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:linear-gradient(#0565d8,#22a447)}
.coverage-card>span{font-size:12px;letter-spacing:.14em;font-weight:900;color:#0565d8}
.coverage-card h3{font-size:30px;margin:10px 0 12px;color:#102d4b}
.coverage-card p{color:var(--muted);line-height:1.7;margin-bottom:22px}
.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:120;background:#fff;border:1px solid #d8e4ee;border-radius:18px;padding:16px 18px;box-shadow:0 18px 50px rgba(5,25,50,.22);display:flex;align-items:center;justify-content:space-between;gap:20px}
.cookie-banner p{margin:0;color:#334e68;line-height:1.5;font-size:14px}
.cookie-banner.hidden{display:none}
.legal-page{min-height:70vh;padding:80px 7vw;background:#f5f8fb}
.legal-page article{max-width:920px;margin:auto;background:#fff;border-radius:22px;padding:42px;box-shadow:0 14px 36px rgba(7,27,54,.08)}
.legal-page h1{font-size:44px;color:#102d4b}.legal-page h2{margin-top:30px;color:#173d63}.legal-page p,.legal-page li{line-height:1.75;color:#4b6278}
.local-hero{padding:90px 7vw;background:linear-gradient(135deg,#071b36,#0b4e84);color:#fff}.local-hero .inner{max-width:1050px;margin:auto}.local-hero h1{font-size:clamp(40px,6vw,70px);margin:12px 0}.local-hero p{font-size:20px;max-width:780px;line-height:1.7;color:#d9e8f5}
.local-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1100px;margin:auto}.local-card{background:#fff;border-radius:18px;padding:28px;box-shadow:0 10px 28px rgba(7,27,54,.08)}.local-card h3{color:#123654}.local-card p{color:#5d7184;line-height:1.65}
@media(max-width:900px){.coverage-grid,.local-grid{grid-template-columns:1fr}.cookie-banner{bottom:68px;flex-direction:column;align-items:stretch}.cookie-banner .btn{width:100%}.legal-page article{padding:26px}.legal-page h1{font-size:34px}}

.project-art img{width:100%;height:100%;display:block;object-fit:cover}

/* Enlaces sobre los cinco botones “Saber más” del diseño aprobado */
.approved-design{position:relative}
.service-hotspots{position:absolute;inset:0;pointer-events:none;z-index:4}
.service-hotspots .hotspot{position:absolute;top:71.7%;height:3.65%;pointer-events:auto;border-radius:6px}
.service-hotspots .hotspot:focus-visible{outline:3px solid #1687ff;outline-offset:2px;background:rgba(22,135,255,.12)}
.service-hotspots .h1{left:29.45%;width:11.85%}
.service-hotspots .h2{left:42.9%;width:11.85%}
.service-hotspots .h3{left:56.4%;width:11.85%}
.service-hotspots .h4{left:69.9%;width:11.85%}
.service-hotspots .h5{left:83.4%;width:11.85%}


/* Carrusel funcional de proyectos */
.projects-carousel{position:relative;min-width:0;padding:0 46px}
.project-viewport{overflow:hidden;border-radius:12px;touch-action:pan-y}
.project-cards{display:flex;gap:12px;transition:transform .42s ease;will-change:transform}
.project-cards article{flex:0 0 calc((100% - 36px)/4)}
.project-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:38px;height:38px;border:0;border-radius:50%;background:#1676ed;color:#fff;font-size:30px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.24);transition:.2s}
.project-arrow:hover{transform:translateY(-50%) scale(1.07);background:#2b8bff}
.project-arrow:focus-visible{outline:3px solid #fff;outline-offset:3px}
.project-prev{left:0}.project-next{right:0}
.project-arrow:disabled{opacity:.42;cursor:default;transform:translateY(-50%)}
@media(max-width:1100px){.project-cards article{flex-basis:calc((100% - 12px)/2)}}
@media(max-width:760px){.projects-carousel{padding:0 40px}.project-cards article{flex-basis:100%}.project-arrow{width:34px;height:34px;font-size:26px}}
.project-arrow{pointer-events:auto;user-select:none;-webkit-user-select:none}
.project-viewport{position:relative;z-index:1}
.project-arrow{z-index:10}

/* Sustituye únicamente la franja fija de proyectos del diseño superior por visuales 3D */
.approved-3d-strip{
  position:absolute;left:0;right:0;top:79.15%;height:13.35%;z-index:6;
  display:grid;grid-template-columns:26% 1fr;align-items:center;gap:2.2%;
  padding:0 5.8%;overflow:hidden;color:#fff;
  background:
    radial-gradient(circle at 78% 20%,rgba(32,137,255,.28),transparent 32%),
    linear-gradient(112deg,#061a35 0%,#092b55 48%,#06182f 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.08),inset 0 -1px rgba(255,255,255,.08)
}
.approved-3d-strip:before{content:"";position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:28px 28px;transform:perspective(420px) rotateX(58deg) scale(1.4);transform-origin:center bottom}
.approved-3d-copy,.approved-3d-scenes{position:relative;z-index:1}
.approved-3d-copy span{display:block;font-size:clamp(8px,.72vw,13px);font-weight:800;letter-spacing:.08em;color:#55a9ff;margin-bottom:.4em}
.approved-3d-copy strong{display:block;font-size:clamp(13px,1.55vw,28px);line-height:1.05;font-weight:900}
.approved-3d-copy strong br{display:block}
.approved-3d-copy small{display:block;margin-top:.7em;font-size:clamp(7px,.65vw,12px);color:#c9def5}
.approved-3d-scenes{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2%}
.scene-card{height:clamp(58px,8.6vw,132px);border:1px solid rgba(255,255,255,.22);border-radius:10px;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.045));box-shadow:0 12px 28px rgba(0,0,0,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:#fff;transition:.25s;overflow:hidden;backdrop-filter:blur(2px)}
.scene-card:hover{transform:translateY(-4px) scale(1.015);border-color:#5ab1ff;background:linear-gradient(145deg,rgba(71,163,255,.26),rgba(255,255,255,.06))}
.scene-card>span{font-size:clamp(7px,.72vw,13px);font-weight:800;margin-top:.25em}
.scene-room,.duct-iso,.cassette-iso,.vent-iso{position:relative;width:74%;height:68%;filter:drop-shadow(0 8px 7px rgba(0,0,0,.32))}
.scene-room{background:linear-gradient(155deg,#eef5fb 0 48%,#c6d2dd 49% 100%);clip-path:polygon(13% 12%,86% 5%,97% 80%,19% 95%)}
.scene-room:after{content:"";position:absolute;left:17%;right:10%;bottom:9%;height:3px;background:#98a8b8;transform:skewY(-7deg)}
.scene-unit{position:absolute;left:43%;top:18%;width:36%;height:16%;border-radius:2px;background:linear-gradient(#fff,#cfd8e1);box-shadow:0 2px 3px rgba(0,0,0,.3)}
.scene-air{position:absolute;left:53%;top:36%;width:30%;height:2px;background:linear-gradient(90deg,#61cbff,transparent);transform-origin:left;animation:sceneFlow 1.6s infinite}
.scene-air.b{top:46%;transform:rotate(9deg);animation-delay:.3s}.scene-air.c{top:55%;transform:rotate(17deg);animation-delay:.6s}
@keyframes sceneFlow{0%,100%{opacity:.25;scale:.75 1}50%{opacity:1;scale:1.15 1}}
.duct-iso:before{content:"";position:absolute;left:4%;top:36%;width:42%;height:24%;background:linear-gradient(145deg,#ecf5fc,#8fb0c9);transform:skewY(-18deg);border:1px solid #d8ecfa}
.duct-iso i,.duct-iso b,.duct-iso em,.duct-iso span{position:absolute;background:linear-gradient(145deg,#dff3ff,#74a5c8);height:14%;border:1px solid #c9e9fb;transform:skewY(-18deg)}
.duct-iso i{left:41%;top:42%;width:42%}.duct-iso b{left:70%;top:23%;width:24%;transform:rotate(-54deg) skewY(-18deg)}.duct-iso em{left:68%;top:61%;width:28%;transform:rotate(45deg) skewY(-18deg)}.duct-iso span{left:15%;top:60%;width:28%;transform:rotate(38deg) skewY(-18deg)}
.cassette-iso i{position:absolute;left:29%;top:21%;width:44%;height:44%;background:linear-gradient(145deg,#fff,#aebdcc);transform:rotate(45deg) skew(-8deg,-8deg);border:2px solid #eaf7ff;box-shadow:inset 0 0 0 7px #d4e0ea}
.cassette-iso b{position:absolute;left:47%;top:49%;width:42%;height:3px;background:linear-gradient(90deg,#56c7ff,transparent);transform-origin:left;animation:sceneFlow 1.5s infinite}.cassette-iso .j2{transform:rotate(90deg)}.cassette-iso .j3{transform:rotate(180deg)}.cassette-iso .j4{transform:rotate(270deg)}
.vent-iso i{position:absolute;left:32%;top:27%;width:36%;height:42%;border-radius:5px;background:linear-gradient(145deg,#edf7ff,#7995aa);box-shadow:inset 0 0 0 7px #b9ccd9}
.vent-iso i:after{content:"";position:absolute;inset:29%;border:3px solid #52758e;border-radius:50%}
.vent-iso b,.vent-iso em{position:absolute;top:43%;width:38%;height:10%;background:linear-gradient(#cbeaff,#6fa1c1);border-radius:8px}.vent-iso b{left:1%}.vent-iso em{right:1%}
@media(max-width:760px){.approved-3d-strip{top:79.1%;height:13.5%;grid-template-columns:30% 1fr;padding:0 3.5%;gap:1%}.approved-3d-scenes{gap:1%}.scene-card{border-radius:5px}.approved-3d-copy small{display:none}}


/* Opiniones reales de Google */
.google-reviews-panel{max-width:900px;margin:0 auto;background:#fff;border-radius:24px;padding:34px;box-shadow:0 14px 34px rgba(8,27,55,.09);border:1px solid rgba(5,101,216,.10);text-align:center}
.google-review-brand{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:16px}
.google-g{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.12);font-size:28px;font-weight:900;color:#4285f4}
.google-review-brand div{display:flex;flex-direction:column;text-align:left}
.google-review-brand strong{font-size:21px;color:#132f4c}
.google-review-brand span{font-size:14px;color:var(--muted)}
.google-stars{font-size:30px;color:#f4aa14;letter-spacing:.14em;margin:8px 0 16px}
.google-review-text{max-width:680px;margin:0 auto 24px;color:#365069;line-height:1.7;font-size:17px}
.google-reviews-button{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:600px){.google-reviews-panel{padding:26px 18px}.google-review-brand{align-items:flex-start}.google-review-brand strong{font-size:18px}.google-stars{font-size:25px}}


/* Consentimiento y aviso de protección de datos del formulario */
#quoteForm .privacy-consent{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid #d9e4ee;border-radius:10px;background:#f7fafc;color:#425b72;font-size:12px;line-height:1.5;cursor:pointer}
#quoteForm .privacy-consent input{width:18px;height:18px;min-width:18px;margin:1px 0 0;accent-color:#0875f5}
#quoteForm .privacy-consent a,#quoteForm .data-protection-notice a{color:#0565d8;font-weight:700;text-decoration:underline;text-underline-offset:2px}
#quoteForm .data-protection-notice{margin-top:6px;padding:14px 15px;border-left:3px solid #0875f5;border-radius:8px;background:#f4f7fb;color:#536b80;font-size:10.5px;line-height:1.55}
#quoteForm .data-protection-notice strong{display:block;margin-bottom:7px;color:#173d63;font-size:12px}
#quoteForm .data-protection-notice p{margin:0 0 6px}
#quoteForm .data-protection-notice p:last-child{margin-bottom:0}
@media(max-width:600px){#quoteForm .data-protection-notice{font-size:10px;padding:12px}.contact-card{align-items:start}}
