@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--black:#101211;--yellow:#f2ed28;--paper:#f3f4ef;--line:#343731;--blue:#39a4d5;--orange:#ef6035;--green:#88b950}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--black);color:#fff;font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.skip{position:fixed;left:20px;top:-100px;z-index:100;padding:12px;background:var(--yellow);color:#111}.skip:focus{top:10px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;position:absolute;top:0;left:0;right:0;z-index:10;border-bottom:1px solid #ffffff24;background:linear-gradient(#0b0e11c9,transparent)}.brand{width:220px;flex-shrink:0}.brand img{width:220px;height:76px;object-fit:contain}nav{display:flex;gap:32px;align-items:center}nav a{font-size:14px;font-weight:500;transition:color .2s}nav a:hover{color:var(--yellow)}nav .nav-contact{padding:12px 19px;border:1px solid #ffffff80;margin-left:12px}nav span{margin-left:15px}.menu-toggle{display:none}.hero{position:relative;min-height:790px;height:95svh;max-height:1100px;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;animation:hero-in 1.5s ease both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#070d15e0 0%,#080e16b8 30%,#080e1629 74%),linear-gradient(0deg,#101211a6,transparent 35%)}.hero-content{position:relative;padding:115px 5.5% 100px;max-width:1050px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.17em;display:flex;align-items:center;gap:12px;margin:0 0 28px;color:#d8dbd4}.eyebrow span{display:inline-block;width:22px;height:2px;background:var(--yellow)}h1,h2,h3,p{margin-top:0}h1,h2,h3,.footer-word{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:600}h1{font-size:clamp(70px,7.5vw,118px);line-height:.98;letter-spacing:-.022em;margin-bottom:28px}em{font-style:normal;color:var(--yellow)}.hero-copy{color:#d4d7d8;font-size:18px;line-height:1.7}.actions{display:flex;align-items:center;gap:30px;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:15px 23px;font-size:14px;font-weight:700;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.yellow{background:var(--yellow);color:var(--black)}.yellow:hover{background:#fff966}.text-link{font-size:14px;border-bottom:1px solid #ffffff60;padding:12px 0}.text-link span{margin-left:14px}.hero-bottom{position:absolute;bottom:36px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;letter-spacing:.15em;font-size:12px;color:#e2e3de}.hero-bottom a{display:flex;gap:25px}.image-note{position:absolute;bottom:9px;right:5.5%;font-size:12px;color:#aeb2b4}.service-strip{display:grid;grid-template-columns:repeat(5,1fr);padding:0 5.5%;border-bottom:1px solid var(--line)}.service-strip a{padding:29px 18px;border-right:1px solid var(--line);font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background .2s}.service-strip a:first-child{border-left:1px solid var(--line)}.service-strip span{font-size:12px;color:#959990}.service-strip a:hover{background:#242822;color:var(--yellow)}.section{padding:110px 7%;scroll-margin-top:30px}.intro{background:var(--paper);color:var(--black);display:grid;grid-template-columns:1fr 1fr;gap:9%}.eyebrow.dark{color:#555d50}h2{font-size:clamp(45px,4.6vw,72px);line-height:1.05;letter-spacing:-.02em;margin-bottom:30px}.muted{color:#92988d}.intro-copy{padding-top:42px}.intro-copy p{font-size:18px}.intro-copy .secondary{font-size:16px;color:#62695e}.underline-link{display:inline-flex;gap:30px;border-bottom:1px solid currentColor;padding:8px 0;font-size:14px;font-weight:600}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p{color:#aeb4ab;margin-bottom:6px}.solar-feature{display:grid;grid-template-columns:1.12fr 1fr;border:1px solid #3d423a;margin-bottom:25px;scroll-margin-top:30px}.solar-image{position:relative;min-height:460px;overflow:hidden}.solar-image img{height:100%;width:100%;object-fit:cover;object-position:75%;transition:transform .9s}.solar-feature:hover .solar-image img{transform:scale(1.03)}.picture-label{position:absolute;bottom:25px;left:25px;font-size:12px;letter-spacing:.12em;background:#101211d9;padding:9px 14px;border-left:2px solid var(--blue)}.solar-copy{padding:45px}.service-number{font-size:12px;letter-spacing:.12em;color:#b9bfb4}.solar-copy .service-number{color:var(--blue)}h3{font-size:38px;line-height:1.1;margin:25px 0 22px}.solar-copy p,.service-card p{color:#b5bbb0}.tags{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 30px}.tags li{font-size:12px;border:1px solid #3b4244;padding:5px 9px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-card{padding:34px 38px 0;border:1px solid #353b31;background:linear-gradient(135deg,#1c211a,#141714);scroll-margin-top:30px;transition:border-color .3s}.service-card:hover{border-color:#848e76}.card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}.icon{height:46px;width:46px;color:var(--yellow);font-size:52px;line-height:1}.service-card h3{font-size:40px}.service-card p{max-width:430px;margin-bottom:30px}details{border-top:1px solid #3a4035}summary{cursor:pointer;list-style:none;padding:21px 0;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px;font-weight:600}summary::-webkit-details-marker{display:none}summary>span{font-size:26px;font-weight:400;color:var(--yellow);transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}.detail-body{padding:0 0 28px;font-size:15px;color:#b5bbb0}.detail-body a{display:block;margin-top:18px;color:var(--yellow)}#redes{border-top-color:#ef603566}#redes .service-number,#redes summary>span{color:#f28762}#domotica{border-top-color:#88b95066}#domotica .service-number,#domotica summary>span{color:#a7ce7e}#seguridad{border-top-color:#39a4d555}#seguridad .icon{color:var(--blue)}.process{background:var(--paper);color:var(--black)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:60px}.process-grid>div{border-top:1px solid #cdd2c8;padding-top:24px}.process-grid span{font-size:14px;color:#707a68}.process-grid h3{font-size:29px;margin:18px 0 12px}.process-grid p{color:#62695e;max-width:300px}.actuality{display:grid;grid-template-columns:1fr .85fr;gap:10%;align-items:center}.team-image{position:relative}.team-image img{width:100%;aspect-ratio:1.14;object-fit:cover}.team-image:after{content:'';position:absolute;left:-12px;top:25px;bottom:25px;border-left:3px solid var(--yellow)}.actuality p:not(.eyebrow){color:#b5bbb0;max-width:400px}.outline{border:1px solid #67705e;margin-top:12px}.contact{background:var(--yellow);color:var(--black);display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.contact h2{font-size:clamp(75px,8.3vw,125px);margin-bottom:25px}.contact h2 span{-webkit-text-stroke:1.4px var(--black);color:transparent}.contact .eyebrow{color:#45491d}.contact p{font-size:18px}.black{background:var(--black);color:#fff;margin-top:15px}.contact-info{padding-top:14px}.contact-info>div{border-bottom:1px solid #171b1533;padding:23px 0}.contact-info>div:first-child{padding-top:0}.contact-info>div:last-child{border:0}.contact-info span{font-size:12px;letter-spacing:.12em;display:block}.phone{font-family:'Barlow Condensed',Impact,sans-serif;display:block;font-size:45px;line-height:1.4;font-weight:600}.phone:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}address{font-style:normal;margin:15px 0 10px}.contact-info .underline-link span{display:inline}.contact .service-context{font-size:14px;min-height:24px;margin-top:18px}footer{padding:48px 7% 30px;overflow:hidden}.footer-word{font-size:clamp(80px,20.3vw,320px);font-weight:800;line-height:1.1;letter-spacing:.015em;display:block;color:#3d4337}.footer-word span{font-family:Arial,sans-serif;font-size:22px;vertical-align:top;display:inline-block;padding-top:3.8%}.footer-bottom{margin-top:35px;border-top:1px solid var(--line);padding-top:25px;display:flex;gap:25px;justify-content:space-between;align-items:center;font-size:12px;color:#a5ad9c}.footer-bottom>span:nth-child(2){font-size:12px;letter-spacing:.1em}.brand-icons{display:flex;gap:14px;margin-top:30px}.brand-icons img{width:49px;height:49px;border-radius:2px}.brand-icon{width:50px;height:50px;object-fit:contain;border-radius:2px}.brand-panel{margin-top:38px;width:100%;max-width:400px;border-top:1px solid #c4cabc;padding-top:24px}.brand-panel img{max-height:190px;width:100%;object-fit:contain;background:#000}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.js .reveal.visible{opacity:1;transform:none}@keyframes hero-in{from{transform:scale(1.055)}to{transform:scale(1)}}
@media(min-width:1600px){.section{padding-left:max(7%,calc((100% - 1480px)/2));padding-right:max(7%,calc((100% - 1480px)/2))}}@media(max-width:1100px){header{padding:0 4%;height:85px}.brand,.brand img{width:185px}nav{gap:19px}nav .nav-contact{padding:10px;margin-left:0}nav a{font-size:13px}.hero{min-height:730px}.hero-content{padding-left:5%}h1{font-size:90px}.service-strip{padding:0}.service-strip a{padding:22px 12px;font-size:12px}.section{padding:80px 5%}.solar-copy{padding:30px}.solar-image{min-height:420px}.service-card{padding:25px 28px 0}.actuality{gap:7%}}@media(max-width:800px){header{height:82px}.brand,.brand img{width:178px}.brand img{height:64px}.menu-toggle{display:flex;width:44px;height:44px;padding:10px 7px;flex-direction:column;gap:8px;justify-content:center;border:0;background:transparent;color:white}.menu-toggle span{height:2px;width:100%;background:currentColor;transition:transform .2s}nav{display:none;position:absolute;top:82px;left:0;right:0;background:#101211;flex-direction:column;align-items:stretch;gap:0;padding:18px 6% 30px;border-bottom:1px solid #49513d}nav.open{display:flex}nav a{font-size:17px;padding:14px 0}nav .nav-contact{padding:14px;margin-top:12px;text-align:center}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-5px) rotate(-45deg)}.hero{min-height:730px;height:90svh;max-height:950px}.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#070d15d4,#080e1650),linear-gradient(0deg,#101211c9,transparent 70%)}h1{font-size:clamp(62px,10vw,83px)}.hero-copy{font-size:16px}.hero-content{padding:120px 6% 100px}.actions{gap:22px;flex-wrap:wrap}.hero-bottom{left:6%;right:6%;bottom:35px}.hero-bottom span{font-size:10px}.hero-bottom a{font-size:10px}.service-strip{grid-template-columns:repeat(3,1fr)}.service-strip a{font-size:12px;border-bottom:1px solid var(--line)}.service-strip a:last-child{grid-column:span 2}.section{padding:70px 6%}.intro{grid-template-columns:1fr;gap:5px}.intro-copy{padding-top:0}.section-heading{display:block}.section-heading>p{margin-top:25px}.solar-feature{grid-template-columns:1fr}.solar-image{min-height:0;height:320px}.solar-copy{padding:32px}.service-grid{gap:16px}.service-card{padding:25px 22px 0}.service-card h3{font-size:34px}.card-top{align-items:flex-start}.service-number{font-size:10px}.service-card p{font-size:15px}summary{font-size:13px}.process-grid{gap:24px}.actuality{grid-template-columns:1fr;gap:45px}.team-image img{aspect-ratio:1.5}.actuality h2 br:last-child{display:none}.contact{gap:7%}.contact h2{font-size:82px}.phone{font-size:35px}.contact .eyebrow{font-size:10px}.footer-bottom{flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}}@media(max-width:520px){.hero{min-height:760px;height:95svh}.hero-content{padding-top:140px}.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:24px}h1{font-size:65px}.hero-copy{max-width:320px}.hero-copy br.desktop{display:none}.actions{align-items:flex-start;flex-direction:column;gap:12px}.hero-bottom>a{display:none}.hero-bottom span{font-size:10px;letter-spacing:.09em}.service-strip{grid-template-columns:1fr 1fr}.service-strip a{padding:18px 16px;font-size:12px}.service-strip a:last-child{grid-column:span 2}.section{padding-top:62px;padding-bottom:62px}h2{font-size:46px}.intro-copy p{font-size:17px}.solar-image{height:250px}.solar-copy{padding:27px}.solar-copy h3{font-size:37px}.service-grid{grid-template-columns:1fr}.service-card{padding:27px 27px 0}.service-card h3{font-size:39px}.service-number{font-size:11px}.service-card p{font-size:16px}summary{font-size:14px}.process-grid{grid-template-columns:1fr;gap:22px;margin-top:32px}.process-grid h3{margin-top:12px}.process-grid p{max-width:none}.contact{grid-template-columns:1fr;gap:30px}.contact h2{font-size:88px}.contact-info{padding-top:0}.phone{font-size:42px}.contact .eyebrow{font-size:10px}.footer-word{font-size:20vw}.footer-word span{font-size:13px}.footer-bottom{gap:17px;margin-top:24px;font-size:12px}.footer-bottom>span:first-child{width:100%}.picture-label{font-size:10px;left:18px;bottom:18px}.brand-panel{max-width:360px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}

/* Fotografía de servicios: mismo encuadre en todas las especialidades. */
.service-card-media{position:relative;margin:-34px -38px 28px;aspect-ratio:3/2;overflow:hidden;background:#10161d;border-bottom:1px solid #ffffff15}
.service-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease}
.service-card:hover .service-card-media img{transform:scale(1.025)}
.service-card-media figcaption{position:absolute;right:12px;bottom:10px;padding:3px 8px;background:#101211b8;color:#e0e3df;font-size:12px;line-height:1.4}
#electricidad .service-card-media{border-bottom-color:#f2ed2844}#redes .service-card-media{border-bottom-color:#ef603544}#domotica .service-card-media{border-bottom-color:#88b95044}#seguridad .service-card-media{border-bottom-color:#39a4d544}
@media(max-width:1100px){.service-card-media{margin:-25px -28px 25px}}
@media(max-width:800px){.service-card-media{margin:-25px -22px 25px}}
@media(max-width:520px){.service-card-media{margin:-27px -27px 25px}}
@media(prefers-reduced-motion:reduce){.service-card:hover .service-card-media img{transform:none}}
