*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;color:#162e3c;background:#fafbf9;font:17px/1.65 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.05em;line-height:1.05}h1{font-size:clamp(44px,6vw,88px);max-width:900px}h2{font-size:clamp(34px,4.4vw,62px)}h3{font-size:24px}p{max-width:680px}.wrap{max-width:1280px;margin:auto;padding:0 5%}.demo{background:#eaf0f3;text-align:center;font-size:12px;padding:7px}.header{background:#102b3b;position:sticky;top:0;z-index:20;color:white}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:104px}.logo{width:160px;height:auto}.links{display:flex;gap:25px;align-items:center}.links a{text-decoration:none;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;border:0;border-radius:100px;padding:13px 25px;text-decoration:none;background:#ffe600;color:#142b39;font-weight:bold}.btn.dark{background:#142b39;color:white}.btn.line{border:1px solid #6d8491;background:transparent;color:inherit}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:bold;color:#08789f}.hero{padding:75px 0 0}.hero .intro{display:flex;justify-content:space-between;gap:35px;align-items:end}.intro p{max-width:330px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.panorama{position:relative;margin-top:40px}.panorama img{width:100%;height:390px;object-fit:cover;border-radius:22px}.caption{position:absolute;bottom:22px;left:25px;background:#102b3bea;color:white;padding:13px 24px;border-radius:30px;font-size:14px}.strip{display:flex;justify-content:space-between;gap:20px;padding:28px 0;border-bottom:1px solid #ccd7dd;font-size:14px}.section{padding:95px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split img{border-radius:22px;width:100%}.service{padding:40px 0;border-top:1px solid #c7d2d7;display:grid;grid-template-columns:70px 1fr 1fr;gap:25px;align-items:start}.num{color:#078fbb;font-size:22px}.service h3 a{text-decoration:none}.service p{color:#526571}.arrow{font-size:15px;font-weight:bold;text-underline-offset:6px}.blue{background:#087ea5;color:white}.blue .eyebrow{color:#fff3a5}.blue p{color:#e5f4fa}.steps{display:flex;gap:35px;margin-top:45px}.steps>div{flex:1;border-top:1px solid #ffffff60;padding-top:22px}.yellow{background:#ffec64}.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}form{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;font-weight:bold}input,select,textarea{width:100%;padding:13px;border:1px solid #a9b7be;border-radius:10px;margin-top:7px;background:white;color:#162e3c}textarea{min-height:120px}.full{grid-column:1/-1}.check{display:flex;gap:10px;font-weight:normal}.check input{width:20px;margin:4px 0}.result{background:#e9f3ed;padding:22px;border-radius:15px;white-space:pre-wrap}.result[hidden]{display:none}footer{background:#102b3b;color:white;padding:45px 0}footer .wrap{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}footer small{color:#bdcbd2}.mobile{display:none}.menu{display:none}.list{padding-left:20px}.list li{padding:8px 0;border-bottom:1px solid #d4dce0}:focus-visible{outline:3px solid #008cbb;outline-offset:5px}@media(max-width:760px){.nav{min-height:86px}.logo{width:130px}.menu{display:block;background:none;color:white;border:1px solid #7793a1;border-radius:10px;padding:8px 14px}.links{display:none;position:absolute;top:86px;left:0;right:0;background:#102b3b;padding:25px;flex-direction:column;align-items:start}.links.open{display:flex}.hero{padding-top:40px}.hero .intro{display:block}.intro p{max-width:none}.panorama img{height:260px}.caption{font-size:12px;left:10px;bottom:10px;padding:10px 15px}.section{padding:60px 0}.split,.contact{grid-template-columns:1fr;gap:30px}.strip{flex-wrap:wrap}.service{grid-template-columns:35px 1fr;gap:15px}.service>div:last-child{grid-column:2}.steps{flex-direction:column;gap:15px}form{grid-template-columns:1fr}footer{padding-bottom:100px}.mobile{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;padding:8px 14px;gap:10px;z-index:25;box-shadow:0 -3px 20px #0001}.mobile a{flex:1;font-size:14px;padding:12px;min-height:48px}.panorama img,.split img{border-radius:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.split img{height:auto;object-fit:contain}.panorama img{object-position:center 48%}

/* Fotografías integradas en las filas de servicios */
.service{grid-template-columns:45px minmax(0,1fr) minmax(0,1.1fr) 230px;align-items:center;gap:26px}
.service-photo{width:230px;height:170px;object-fit:cover;border-radius:20px}
@media(max-width:1000px){.service{grid-template-columns:35px 1fr 200px}.service>div:last-of-type{grid-column:2}.service-photo{grid-column:3;grid-row:1 / span 2;width:200px;height:180px}}
@media(max-width:600px){.service{grid-template-columns:30px 1fr;gap:16px}.service-photo{grid-column:2;grid-row:auto;width:100%;height:190px;border-radius:18px}.service>div:last-of-type{grid-column:2}.service h3{margin-bottom:0}}

.commercial{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 5%;background:#e9eef1}.commercial>div{display:flex;gap:18px;align-items:center}.juan{background:#167646;color:white;text-decoration:none;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:25px;min-height:44px}.scope{border:0;border-top:1px solid #a9b7be;padding:22px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px;min-width:0}.scope legend{font-weight:bold;padding-right:15px}.result{overflow-wrap:anywhere;word-break:break-word}#copy-summary{margin-top:16px}#copy-summary[hidden]{display:none}.contact>*{min-width:0}.commercial a{overflow-wrap:anywhere}@media(max-width:760px){.commercial{flex-direction:column;font-size:12px}.commercial>div{flex-wrap:wrap;justify-content:center;gap:8px 15px}.scope{grid-template-columns:1fr}main{padding-bottom:25px}.mobile{padding-bottom:max(8px,env(safe-area-inset-bottom))}}
