:root{--yellow:#f5c400;--black:#111317;--charcoal:#20242a;--light:#f5f6f7;--white:#fff;--muted:#667085;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--black);line-height:1.6;background:#fff}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.topbar{background:#090a0c;color:#ddd;font-size:13px}.topbar .wrap{display:flex;justify-content:space-between;padding:7px 0}.site-header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 14px #00000014}.head-inner{padding:12px 0}.brand-dual{display:grid;grid-template-columns:130px 1fr 130px;align-items:center;gap:18px}.logo-slot{text-align:center}.custom-logo,.logo-slot img{max-height:70px;max-width:125px;width:auto}.logo-placeholder{border:2px dashed #bbb;padding:15px 6px;font-weight:800;font-size:12px}.brand-name{text-align:center}.brand-name strong{font-size:25px;letter-spacing:.5px}.brand-name small{display:block;color:#666}.nav{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:12px;border-top:1px solid #eee;padding-top:10px}.nav ul{list-style:none;display:flex;gap:24px;margin:0;padding:0}.nav a{font-weight:700;font-size:14px}.menu-toggle{display:none}.btn{display:inline-block;padding:13px 22px;font-weight:800;border:2px solid transparent;border-radius:3px;letter-spacing:.2px}.btn-yellow{background:var(--yellow);color:#111}.btn-outline{border-color:#fff;color:#fff}.btn-dark{background:#111;color:#fff}.hero{min-height:650px;position:relative;display:flex;align-items:center;background:linear-gradient(120deg,#101318 0%,#252a30 52%,#6b5a00 100%);overflow:hidden}.hero:after{content:"FOTO PRINCIPAL DEL CLIENTE";position:absolute;right:7%;top:45%;transform:translateY(-50%);color:#ffffff55;font-size:28px;font-weight:900;border:2px dashed #ffffff33;padding:90px 55px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#000d 0%,#0009 50%,#0002 100%)}.hero-content{position:relative;color:#fff;max-width:850px;margin-left:max(calc((100vw - var(--max))/2),20px)}.hero h1,.page-hero h1{font-size:clamp(40px,5vw,68px);line-height:1.02;margin:12px 0 20px;max-width:900px}.hero p{font-size:20px;max-width:720px}.eyebrow{color:var(--yellow);font-weight:900;letter-spacing:1.5px;font-size:13px}.eyebrow.dark{color:#806600}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.section{padding:85px 0}.section.alt{background:var(--light)}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}h2{font-size:clamp(30px,4vw,46px);line-height:1.1;margin:10px 0 22px}h3{line-height:1.2}.photo-placeholder,.map-placeholder{min-height:360px;background:#e7e8ea;border:2px dashed #a8adb5;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7a8088}.photo-placeholder b,.map-placeholder b{font-size:28px}.dark-section{background:var(--charcoal);color:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.card{background:#fff;color:#111;padding:0 22px 24px;box-shadow:0 10px 30px #00000018}.dark-section .card{background:#2d3239;color:#fff}.mini-photo{height:150px;margin:0 -22px 20px;background:linear-gradient(135deg,#3b4047,#111);display:flex;align-items:center;justify-content:center;color:#ffffff70;font-weight:900}.card a,.text-link{font-weight:900;border-bottom:3px solid var(--yellow)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.benefits span{background:#f1f2f3;padding:18px;font-weight:700}.cta{background:#111;color:#fff;padding:70px 0;text-align:center}.cta .actions{justify-content:center}.page-hero{background:linear-gradient(120deg,#111,#343a40);color:#fff;padding:90px 0}.compact{grid-template-columns:repeat(3,1fr)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:item;list-style:none;padding:0}.steps li{background:#f5f6f7;padding:24px;font-weight:700}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.project-photo{height:320px;background:#e7e8ea;border:2px dashed #aaa;display:flex;align-items:center;justify-content:center;color:#777;font-weight:900}.quote-box{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-weight:700;margin-bottom:18px}input,select,textarea{width:100%;padding:13px;border:1px solid #bbb;margin-top:7px;font:inherit}.form-note{background:#fff6cc;padding:15px}.footer{background:#090a0c;color:#ddd;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer h3,.footer h4{color:#fff}.copyright{text-align:center;border-top:1px solid #333;margin-top:35px;padding:18px;font-size:13px}.wa-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;font-weight:900;z-index:60;box-shadow:0 5px 20px #0004}@media(max-width:850px){.topbar .wrap{display:block;text-align:center}.brand-dual{grid-template-columns:75px 1fr 75px}.brand-name strong{font-size:17px}.custom-logo,.logo-slot img{max-width:70px;max-height:55px}.logo-placeholder{font-size:9px;padding:10px 2px}.menu-toggle{display:block;margin:10px auto 0;background:#111;color:#fff;border:0;padding:9px 16px}.nav{display:none;flex-direction:column}.nav.open{display:flex}.nav ul{flex-direction:column;text-align:center}.hero{min-height:600px}.hero:after{display:none}.hero-content{margin:auto}.split,.cards,.compact,.benefits,.steps,.project-grid,.footer-grid,.form-grid{grid-template-columns:1fr}.section{padding:60px 0}.hero h1,.page-hero h1{font-size:38px}.btn{width:100%;text-align:center}}
/* v1.2 Hero real + efecto de chispas + redes */
.hero{background-image:url('../img/hero-rg.webp');background-size:cover;background-position:center center;background-repeat:no-repeat}
.hero:after{display:none}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.56) 42%,rgba(0,0,0,.10) 72%,rgba(0,0,0,.04) 100%)}
.spark-field{position:absolute;left:0;top:0;width:37%;height:78%;overflow:hidden;pointer-events:none;z-index:1}.spark-field i{position:absolute;left:24%;top:58%;width:5px;height:34px;border-radius:50%;background:#ffd35a;box-shadow:0 0 8px #ffb000,0 0 18px #ff7300;opacity:0;transform:rotate(55deg);animation:sparkFly 1.7s linear infinite}.spark-field i:nth-child(2){left:29%;top:61%;animation-delay:.22s;animation-duration:1.35s}.spark-field i:nth-child(3){left:20%;top:64%;animation-delay:.48s;animation-duration:1.6s}.spark-field i:nth-child(4){left:31%;top:56%;animation-delay:.72s;animation-duration:1.25s}.spark-field i:nth-child(5){left:26%;top:67%;animation-delay:.95s;animation-duration:1.45s}.spark-field i:nth-child(6){left:18%;top:60%;animation-delay:1.15s;animation-duration:1.55s}.spark-field i:nth-child(7){left:33%;top:63%;animation-delay:1.35s;animation-duration:1.3s}.spark-field i:nth-child(8){left:23%;top:54%;animation-delay:1.5s;animation-duration:1.4s}@keyframes sparkFly{0%{opacity:0;transform:translate(0,0) rotate(55deg) scale(.5)}12%{opacity:1}100%{opacity:0;transform:translate(190px,-150px) rotate(55deg) scale(1.15)}}
.hero-content{z-index:2}.socials{display:flex;gap:11px;margin-top:18px}.socials a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f5c400;transition:.2s transform,.2s background}.socials a:hover{transform:translateY(-3px);background:#fff}.socials svg{width:22px;height:22px;fill:none;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.socials svg path:first-child{fill:#111;stroke:none}.socials svg .fill{fill:#111;stroke:none}
@media(max-width:850px){.spark-field{width:65%;height:62%}.hero{background-position:40% center}.hero-overlay{background:rgba(0,0,0,.63)}}
@media(prefers-reduced-motion:reduce){.spark-field{display:none}}
/* v1.2.4 - ajustes solicitados: hero, canales y WhatsApp */
.hero-content{max-width:690px;padding-bottom:105px}.hero h1{font-size:clamp(36px,4.1vw,58px);line-height:1.01;margin:10px 0 15px}.hero p{font-size:17px;line-height:1.55;max-width:650px;margin-bottom:8px}.hero .actions{margin-top:18px}
.channel-grid{align-items:stretch}.channel-card{padding:0 18px 22px;overflow:hidden}.channel-photo{height:260px;margin:0 -18px 18px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.channel-photo img{width:100%;height:100%;object-fit:contain;display:block}.channel-card h3{margin:0 0 8px}.channel-card p{margin:0;color:#555}.wa-float svg{width:34px;height:34px;color:#fff;display:block}
@media(max-width:850px){.hero-content{padding-bottom:35px}.hero h1{font-size:36px}.hero p{font-size:16px}.channel-photo{height:240px}}

/* v1.2.6 - imagen real en Nuestra Especialidad y correccion de recorte */
.specialty-photo{min-height:360px;overflow:hidden;background:#f2f3f4}.specialty-photo img{width:100%;height:360px;display:block;object-fit:cover;object-position:center}
@media(max-width:850px){.specialty-photo,.specialty-photo img{min-height:260px;height:260px}}

/* v1.2.7 - imágenes reales de servicios */
.service-card .service-photo{height:300px;overflow:hidden;background:#111;display:block;padding:0}
.service-card .service-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
@media(max-width:900px){.service-card .service-photo{height:260px}}
@media(max-width:600px){.service-card .service-photo{height:auto;aspect-ratio:4/5}}

/* v1.2.8 - servicios: fotografías completas, sin recorte */
.service-card .service-photo{height:360px;background:#f1f2f3;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:10px}
.service-card .service-photo img{width:100%;height:100%;display:block;object-fit:contain;object-position:center}
@media(max-width:900px){.service-card .service-photo{height:330px}}
@media(max-width:600px){.service-card .service-photo{height:420px;aspect-ratio:auto;padding:8px}}
