:root{--paper:#ede5d2;--paper-2:#e6dcc4;--ink:#17140f;--ink-soft:#575043;--red:#c7391b;--red-deep:#a32d14;--blue:#2b4b9b;--ochre:#b98a2f;--line:rgba(23,20,15,.16);--shadow:0 1px 2px rgba(23,20,15,.12),0 12px 26px rgba(23,20,15,.14);--grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='150' height='150'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='150' height='150' filter='url(%23n)' opacity='0.5'/></svg>")}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}html,body{overflow-x:clip}[hidden]{display:none!important}body{font-family:"DM Sans",system-ui,sans-serif;color:var(--ink);line-height:1.6;background:linear-gradient(180deg,rgba(255,252,244,.5),transparent 30%),var(--paper)}body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(130% 100% at 50% 30%,transparent 60%,rgba(23,20,15,.12) 100%)}body::after{content:"";position:fixed;inset:0;z-index:40;pointer-events:none;background-image:var(--grain);opacity:.055;mix-blend-mode:multiply}nav,main,section,footer{position:relative;z-index:1}img{max-width:100%;height:auto;display:block}.defs{position:absolute;width:0;height:0;overflow:hidden}.mono{font-family:"IBM Plex Mono",monospace;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3{font-weight:800;letter-spacing:-.02em;line-height:1.02;color:var(--ink);hyphens:none}.display{font-size:clamp(2.6rem,5.4vw,4.6rem);overflow-wrap:anywhere}.display-2{font-size:clamp(1.7rem,3vw,2.5rem)}.cream{color:#f0ead8}::selection{background:var(--red);color:var(--paper)}.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:clamp(12px,2vw,28px);padding:0 clamp(14px,3vw,40px);min-height:60px;background:rgba(237,229,210,.96);border-bottom:1.5px solid var(--ink);transition:box-shadow .25s}.nav.scrolled{box-shadow:0 8px 22px rgba(23,20,15,.16)}.nav-brand{display:flex;align-items:baseline;gap:10px;text-decoration:none;color:var(--ink);flex-shrink:1;min-width:0;max-width:min(46%,480px)}.biz-logo{height:34px;width:auto;max-width:120px;object-fit:contain;align-self:center}.wordmark{font-weight:800;letter-spacing:.22em;text-transform:uppercase;font-size:clamp(.85rem,1.6vw,1.05rem);overflow-wrap:anywhere;line-height:1.2}.brand-tag{font-family:"IBM Plex Mono",monospace;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap}.nav-links{display:flex;gap:clamp(10px,1.6vw,22px);margin-left:auto;min-width:0}.nav-links a{font-size:.82rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);text-decoration:none;padding:20px 2px;white-space:nowrap;border-bottom:3px solid transparent}.nav-links a:hover{border-bottom-color:var(--red)}.nav-cta{align-self:stretch;display:inline-flex;align-items:center;background:var(--ochre);color:var(--ink);text-decoration:none;font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:0 clamp(12px,2vw,22px);margin-right:calc(clamp(14px,3vw,40px)*-1);white-space:nowrap}.nav-cta:hover{background:#c9993b}.menu-btn{display:none}.hero{display:grid;grid-template-columns:minmax(320px,48fr) minmax(300px,52fr);min-height:min(72vh,720px);border-bottom:1.5px solid var(--ink);background-image:linear-gradient(90deg,transparent calc(48% - 1px),var(--line) calc(48% - 1px),var(--line) 48%,transparent 48%)}.hero-copy{padding:clamp(34px,7vh,80px) clamp(20px,3.5vw,56px);display:flex;flex-direction:column;justify-content:center;gap:20px}.hero-sub{font-size:1.1rem;color:var(--ink-soft);max-width:38ch}.btn-plate{align-self:flex-start;display:inline-flex;align-items:center;gap:12px;background:var(--red);color:#f7f1e2;text-decoration:none;border:0;cursor:pointer;font-size:.85rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:16px 26px;box-shadow:inset 0 0 0 1.5px rgba(23,20,15,.35),4px 4px 0 rgba(23,20,15,.85);transition:transform .15s,box-shadow .15s}.btn-plate:hover{transform:translate(-2px,-2px);box-shadow:inset 0 0 0 1.5px rgba(23,20,15,.35),6px 6px 0 rgba(23,20,15,.85)}.btn-plate:active{transform:translate(2px,2px);box-shadow:inset 0 0 0 1.5px rgba(23,20,15,.35),1px 1px 0 rgba(23,20,15,.85)}.hero-meta{color:var(--ink-soft)}.portrait{position:relative;overflow:hidden;min-height:420px}.p-black{position:absolute;inset:0 0 0 22%;background:#191510}.p-face{position:absolute;left:0;top:12%;width:44%;height:58%;background:#f2ecda;box-shadow:1px 0 0 var(--line)}.p-lips{position:absolute;left:11%;top:26%;width:22%;aspect-ratio:2/1;background:var(--red);border-radius:0 0 999px 999px}.p-ear{position:absolute;left:38%;top:48%;width:9%;aspect-ratio:1;background:#191510;border-radius:50% 0 0 50%}.p-bar{position:absolute;left:52%;top:0;width:13%;height:78%;background:var(--ochre)}.p-circle{position:absolute;right:8%;top:26%;width:26%;aspect-ratio:1;background:var(--blue);border-radius:50%}.p-quarter{position:absolute;right:0;bottom:-6%;width:38%;aspect-ratio:1;background:var(--red);border-radius:100% 0 0 0}.p-wave{position:absolute;left:6%;bottom:10%;display:flex;gap:10px;align-items:flex-end;height:22%}.p-wave i{width:12px;background:#2b4b9b;height:34%;animation:eq 2.8s ease-in-out infinite}.p-wave i:nth-child(2){height:70%;animation-delay:.3s;background:#f2ecda}.p-wave i:nth-child(3){height:52%;animation-delay:.6s;background:var(--ochre)}.p-wave i:nth-child(4){height:88%;animation-delay:.9s;background:var(--red)}@keyframes eq{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.55)}}.tiles{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1.5px solid var(--ink)}.tile{padding:clamp(22px,3.4vh,36px) clamp(18px,2.4vw,32px);border-right:1px solid var(--line);min-width:0;display:flex;flex-direction:column;gap:12px}.tile:last-child{border-right:0}.tile.dark{background:#191510;color:#e9e2ce}.tile.dark .tile-title{color:#f2ecda}.tile.dark p{color:#bdb49c}.tile.ochre{background:var(--ochre)}.tile.ochre p{color:#3e3312}.tile-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:1.35rem;letter-spacing:-.01em}.plus{color:var(--red);font-weight:800;font-size:1.4rem;transition:rotate .25s}.tile.dark .plus{color:var(--ochre)}.tile p{font-size:.95rem;color:var(--ink-soft)}.tile-img{margin-top:auto;border:1.5px solid var(--ink);box-shadow:var(--shadow)}.tile-img img{width:100%;aspect-ratio:4/3;object-fit:cover}.servicios{padding:clamp(44px,6vh,72px) clamp(16px,4vw,56px);background:var(--paper-2)}.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;max-width:1240px;margin:0 auto 30px}.sec-note{color:var(--ink-soft)}.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:0;max-width:1240px;margin:auto;border:1.5px solid var(--ink);background:var(--line);grid-auto-rows:1fr}.svc-grid:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.svc-grid:has(>:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.svc-card{background:var(--paper);padding:18px;min-width:0;outline:1px solid var(--line);display:flex;flex-direction:column;gap:10px;transition:background .2s}.svc-card:hover{background:#f2ebd9}.svc-img{aspect-ratio:4/3;background-size:cover;background-position:center;border:1.5px solid var(--ink);filter:saturate(.9)}.svc-card:nth-of-type(6n+1) .svc-img{background-image:url(assets/svc-instalacion.jpg)}.svc-card:nth-of-type(6n+2) .svc-img{background-image:url(assets/svc-calibracion.jpg)}.svc-card:nth-of-type(6n+3) .svc-img{background-image:url(assets/svc-integracion.jpg)}.svc-card:nth-of-type(6n+4) .svc-img{background-image:url(assets/svc-mejora.jpg)}.svc-card:nth-of-type(6n+5) .svc-img{background-image:url(assets/svc-aislamiento.jpg)}.svc-card:nth-of-type(6n+6) .svc-img{background-image:url(assets/svc-diagnostico.jpg)}.svc-card h3{font-size:1.15rem}.svc-card p{font-size:.92rem;color:var(--ink-soft)}.svc-meta{margin-top:auto;display:flex;justify-content:space-between;align-items:baseline;gap:10px}.price{color:var(--red-deep)}.svc-link{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--red)}.svc-link:hover{color:var(--red-deep)}.taller{display:grid;grid-template-columns:minmax(280px,5fr) minmax(320px,7fr);gap:clamp(24px,4vw,60px);align-items:center;padding:clamp(48px,7vh,84px) clamp(16px,4vw,56px);max-width:1280px;margin:auto}.taller-photo{position:relative}.taller-photo::after{content:"";position:absolute;right:-14px;bottom:-14px;width:52%;height:38%;background:var(--blue);z-index:-1}.taller-photo img{border:1.5px solid var(--ink);box-shadow:var(--shadow)}.taller-copy h2{margin-bottom:12px}.taller-copy>p{color:var(--ink-soft);margin-bottom:16px}.note-block{border-left:5px solid var(--red);background:#f2ebd9;padding:12px 16px;margin:10px 0;box-shadow:var(--shadow)}.note-block h3{font-size:1.05rem;margin-bottom:4px}.note-block p{font-size:.92rem;color:var(--ink-soft)}.amenity-band{margin-top:18px;border-top:1.5px solid var(--ink);padding-top:14px}.am-title{color:var(--ink-soft);margin-bottom:12px}.amenities{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.amenities li{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.92rem}.am-chip{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;background:#191510;color:var(--ochre)}.am-ico{width:20px;height:20px}.galeria{padding:clamp(44px,6vh,72px) clamp(16px,4vw,56px) clamp(52px,7vh,84px);background:#191510;box-shadow:inset 0 20px 40px rgba(0,0,0,.5),inset 0 -20px 40px rgba(0,0,0,.5)}.galeria .sec-head{margin-bottom:26px}.cream-note{color:#8f866e}.gal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;max-width:1240px;margin:auto}.gal-more{display:contents}.gal-tile{border:1.5px solid #3b342a;background:#211c15;padding:10px 10px 12px;cursor:zoom-in;text-align:left;min-width:0;transition:transform .18s,border-color .18s}.gal-tile:hover{transform:translateY(-4px);border-color:var(--ochre)}.gal-tile img{width:100%;aspect-ratio:4/3;object-fit:cover}.gal-cap{display:block;padding-top:9px;color:#bdb49c}.reviews{max-width:1240px;margin:26px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.review{border:1.5px solid #3b342a;background:#211c15;color:#e9e2ce;padding:16px 18px}.review footer{margin-top:8px;color:#8f866e}.preguntas{display:grid;grid-template-columns:minmax(320px,7fr) minmax(260px,4fr);gap:clamp(24px,3.5vw,52px);align-items:start;padding:clamp(48px,7vh,80px) clamp(16px,4vw,56px);max-width:1280px;margin:auto}.preguntas>:only-child{grid-column:1/-1;max-width:880px;margin:0 auto;width:100%}.faq-col h2{margin-bottom:16px}.faq{border:1.5px solid var(--ink);border-left:6px solid var(--blue);background:#f2ebd9;margin-bottom:10px;box-shadow:var(--shadow);interpolate-size:allow-keywords}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:14px;padding:14px 16px;font-weight:700}.faq summary::-webkit-details-marker{display:none}.faq[open] .plus{rotate:45deg}.faq p{padding:0 16px 14px;color:var(--ink-soft)}details::details-content{block-size:0;overflow:hidden;transition:block-size .3s ease,content-visibility .3s allow-discrete}details[open]::details-content{block-size:auto}.panel-cta{position:sticky;top:90px;background:var(--blue);color:#eaf0fc;padding:26px 24px;box-shadow:6px 6px 0 rgba(23,20,15,.85);display:flex;flex-direction:column;gap:16px}.panel-line{font-size:1.15rem;font-weight:700;line-height:1.35}.panel-note{color:#b9c8ea}.contacto{padding:clamp(44px,6vh,76px) clamp(16px,4vw,56px);background:var(--paper-2);border-top:1.5px solid var(--ink)}.contacto>h2{max-width:1280px;margin:0 auto 26px}.contact-grid{display:grid;grid-template-columns:minmax(250px,1fr) minmax(300px,1.25fr) minmax(280px,1.05fr);gap:clamp(14px,2vw,24px);max-width:1280px;margin:auto;align-items:stretch}.contact-card{background:var(--paper);border:1.5px solid var(--ink);padding:22px;box-shadow:var(--shadow)}.contact-rows{list-style:none}.contact-rows li{display:flex;gap:12px;align-items:flex-start;padding:8px 0;font-weight:600}.contact-rows a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--red)}.contact-rows address{font-style:normal}.c-ico{width:20px;height:20px;flex:none;color:var(--red-deep);margin-top:3px}.contact-card .btn-plate{margin-top:14px}.branches{margin-top:14px;border-top:1.5px solid var(--line);padding-top:10px}.branch{display:grid;gap:2px;padding:7px 0;font-size:.9rem}.map-frame{border:1.5px solid var(--ink);box-shadow:var(--shadow);min-height:300px;background:#191510}.map{width:100%;height:100%;min-height:300px;border:0;display:block;filter:grayscale(.35) sepia(.18) contrast(1.02)}.contact-form{background:var(--paper);border:1.5px solid var(--ink);box-shadow:var(--shadow);padding:0 0 18px;display:flex;flex-direction:column;gap:9px;min-width:0}.form-strip{height:64px;overflow:hidden;border-bottom:1.5px solid var(--ink);margin-bottom:6px}.form-strip img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}.contact-form label{font-family:"IBM Plex Mono",monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);display:grid;gap:5px;padding:0 18px}.contact-form input,.contact-form textarea{font-family:"DM Sans",sans-serif;font-size:1rem;color:var(--ink);border:1.5px solid rgba(23,20,15,.4);background:#f7f2e4;padding:9px 12px;resize:vertical;min-width:0}.contact-form input:focus,.contact-form textarea:focus{outline:2.5px solid var(--blue)}.contact-form .btn-plate{margin:6px 18px 0}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-ok{color:#2e6b45;font-weight:700;padding:0 18px}.footer{position:relative;overflow:hidden;background:#191510;color:#bdb49c;border-top:6px solid var(--red);padding:clamp(40px,6vh,64px) clamp(16px,4vw,56px) 24px}.foot-ghost{position:absolute;left:50%;top:-6%;translate:-50% 0;white-space:nowrap;font-weight:800;letter-spacing:.04em;font-size:clamp(4rem,13vw,9.5rem);color:rgba(237,229,210,.05);pointer-events:none}.foot-grid{position:relative;display:grid;gap:clamp(20px,3vw,44px);grid-template-columns:minmax(240px,1.4fr) auto auto auto;max-width:1280px;margin:auto}.wordmark-foot{font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#f2ecda;overflow-wrap:anywhere;display:block;margin-bottom:8px}.foot-brand p{font-size:.92rem}.foot-nav{display:grid;gap:8px}.foot-nav a,.foot-social a{color:#d8cfb6;text-decoration:none;font-size:.92rem}.foot-nav a:hover,.foot-social a:hover{color:#fff}.foot-social{display:grid;gap:8px;align-content:start}.foot-social h4,.foot-hours h4{color:#8f866e;margin-bottom:4px}.foot-hours p{display:flex;justify-content:space-between;gap:14px;font-size:.85rem;border-bottom:1px solid rgba(237,229,210,.15);padding:4px 0}.foot-bottom{position:relative;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;max-width:1280px;margin:30px auto 0;padding-top:14px;border-top:1px solid rgba(237,229,210,.2);color:#8f866e}.foot-bottom a{color:#d8cfb6}.go-up{position:fixed;right:18px;bottom:18px;z-index:60;width:46px;height:46px;background:rgba(237,229,210,.5);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);border:1.5px solid var(--ink);color:var(--ink);font-size:1.2rem;font-weight:800;cursor:pointer;box-shadow:3px 3px 0 rgba(23,20,15,.7);transition:transform .15s,background .2s}.go-up:hover{background:rgba(237,229,210,.9);transform:translate(-1px,-1px)}.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(12,10,7,.95);display:flex;align-items:center;justify-content:center;padding:46px}.lightbox figure{margin:0;max-width:min(920px,100%)}.lb-img{max-height:76vh;margin:auto;border:1.5px solid var(--paper)}.lightbox figcaption{color:#d8cfb6;text-align:center;padding:12px}.lb-close{position:absolute;right:20px;top:12px;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer}#lb-cookie-notice{position:fixed;z-index:9990;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#191510;color:#e9e2ce;padding:14px 18px;font-size:.88rem;border:1.5px solid var(--ochre);box-shadow:0 6px 22px rgba(0,0,0,.4)}#lb-cookie-notice[hidden]{display:none}#lb-cookie-notice p{margin:0;flex:1 1 280px}#lb-cookie-notice a{color:#ebc97e;text-decoration:underline}#lb-cookie-btn{min-height:44px;padding:10px 24px;border:0;cursor:pointer;background:var(--ochre);color:#191510;font-weight:800;font-family:"DM Sans",sans-serif}.title-reveal{position:relative}html.js .title-reveal::after{content:"";position:absolute;inset:0 auto 0 0;width:0;background:var(--red);opacity:0;pointer-events:none}html.js .title-reveal.is-revealed::after{animation:barsweep .7s cubic-bezier(.2,.7,.2,1) 1}@keyframes barsweep{0%{width:0;opacity:.95;left:0}55%{width:100%;left:0}100%{width:0;left:100%;opacity:0}}html.js .tile-title{transition:letter-spacing .3s}html.js .tile.reveal:not(.is-revealed) .tile-title{letter-spacing:.02em}@media(max-width:1020px){.hero{grid-template-columns:1fr;background-image:none}.portrait{min-height:340px;border-top:1.5px solid var(--ink)}.tiles{grid-template-columns:1fr}.tile{border-right:0;border-bottom:1px solid var(--line)}.taller{grid-template-columns:1fr}.preguntas{grid-template-columns:1fr}.panel-cta{position:static}.contact-grid{grid-template-columns:1fr 1fr}.contact-form{grid-column:1/-1}.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.footer{padding-bottom:200px}.nav-links{display:none;position:fixed;inset:60px 0 0 0;z-index:49;background:var(--paper);flex-direction:column;align-items:flex-start;padding:28px 24px;gap:6px;border-top:1.5px solid var(--ink)}.nav-links.open{display:flex}.nav-links a{padding:12px 2px;font-size:1rem}.nav-cta{display:none}.menu-btn{display:block;margin-left:auto;background:none;border:1.5px solid var(--ink);color:var(--ink);font-family:"IBM Plex Mono",monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:9px 14px;cursor:pointer}.contact-grid{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr}.gal-grid{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}