
:root{--ink:#161616;--paper:#f4f2ed;--cyan:#00bfd7;--pink:#f12788;--yellow:#f8e52a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--pink);outline-offset:5px}.notice{background:#f8e52a;padding:10px 5%;font-size:12px;text-align:center}.wrap{max-width:1240px;margin:auto;padding:0 6%}header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 0}.brand{font-size:27px;font-weight:900;letter-spacing:-1.5px;text-decoration:none}.brand small{font-size:11px;letter-spacing:3px;display:block;font-weight:400;margin-top:2px}nav{display:flex;align-items:center;gap:26px;font-size:13px}nav a{text-decoration:none}.cta{display:inline-flex;padding:16px 23px;background:var(--ink);color:white;text-decoration:none;font-size:14px;font-weight:bold;align-items:center;gap:24px;border:0;border-radius:0;cursor:pointer}.hero{padding:65px 0 72px;display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}.eyebrow{font-size:11px;font-weight:bold;letter-spacing:2px;text-transform:uppercase}.hero h1{font-size:clamp(46px,6.5vw,84px);line-height:.98;letter-spacing:-4px;margin:26px 0}.hero h1 em{font-style:normal;color:#b51060}.lead{font-size:17px;line-height:1.65;max-width:440px;color:#505050}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px}.text-link{font-size:14px;text-underline-offset:6px}.art{background:#171717;aspect-ratio:1/1.06;position:relative;overflow:hidden;display:grid;place-items:center}.art .letter{font-size:260px;font-weight:900;line-height:1;color:var(--paper);text-shadow:-18px 0 var(--cyan),18px 0 var(--pink);transform:rotate(-9deg);user-select:none}.art:before{content:'';position:absolute;width:140px;height:140px;border:30px solid var(--yellow);border-radius:50%;right:-50px;top:-35px}.art:after{content:'';position:absolute;height:8px;background:linear-gradient(90deg,var(--cyan) 33%,var(--pink) 33%,var(--pink) 66%,var(--yellow) 66%);bottom:0;width:100%}.art-label{position:absolute;bottom:24px;left:24px;color:#eee;font-size:11px;letter-spacing:2px}.ticker{background:var(--ink);color:var(--paper);padding:22px 6%;display:flex;flex-wrap:wrap;justify-content:center;gap:24px;font-size:12px;letter-spacing:1px}.ticker span:before{content:'+';color:var(--cyan);margin-right:20px}.section{padding:80px 0}.section-head{display:flex;gap:28px;justify-content:space-between;align-items:end;margin-bottom:36px}.section h2{font-size:clamp(32px,4vw,49px);line-height:1.1;letter-spacing:-1.8px;margin:12px 0 0;max-width:600px}.section-head p{max-width:290px;font-size:14px;line-height:1.6;color:#555}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cac7c0;border-left:1px solid #cac7c0}.service{padding:30px;border-right:1px solid #cac7c0;border-bottom:1px solid #cac7c0}.number{font-size:12px;color:#666}.service h3{font-size:21px;letter-spacing:-.6px;margin:28px 0 12px}.service p{font-size:14px;line-height:1.7;color:#555;margin-bottom:0}.dark{background:#1b1b1b;color:#f4f2ed}.dark .section-head p{color:#bbb}.gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:26px}.project .placeholder{min-height:265px;background:#2c2c2c;display:flex;align-items:center;justify-content:center;border:1px solid #4d4d4d;color:#bababa;text-align:center;padding:24px;font-size:13px}.project:first-child .placeholder{min-height:340px}.project h3{font-size:20px;margin:18px 0 8px}.project p{font-size:13px;color:#bcbcbc;margin:0}.gallery-note{color:#aaa;font-size:12px;line-height:1.6;margin-top:30px}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}.step{border-top:3px solid var(--ink);padding-top:20px}.step h3{font-size:18px}.step p{font-size:14px;line-height:1.6;color:#555}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;border-top:1px solid #ccc;padding-top:40px}.about p{font-size:18px;line-height:1.65;margin-top:12px}.contact{background:var(--cyan);padding:64px 0}.contact .wrap{display:flex;align-items:center;justify-content:space-between;gap:32px}.contact h2{font-size:clamp(34px,4vw,54px);letter-spacing:-2px;max-width:640px;margin:10px 0 20px}.contact p{line-height:1.6}.contact .cta{white-space:nowrap}footer{padding:30px 0;font-size:12px}footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}#menu{display:none}a:hover{text-decoration:underline;text-underline-offset:4px}@media(max-width:760px){header{flex-wrap:wrap}#menu{display:block;background:none;border:1px solid #bbb;padding:12px;font-size:14px}nav{display:none;width:100%;flex-wrap:wrap;padding:16px 0}nav.open{display:flex}.hero{grid-template-columns:1fr;padding:35px 0 45px;gap:36px}.hero h1{letter-spacing:-2.5px}.art{aspect-ratio:1.5}.art .letter{font-size:210px}.services{grid-template-columns:repeat(2,1fr)}.section-head,.contact .wrap{align-items:start;flex-direction:column}.section{padding:55px 0}.section-head p{max-width:none}.gallery,.about{grid-template-columns:1fr}.process{grid-template-columns:repeat(2,1fr)}.about{gap:15px}.contact .cta{white-space:normal}.project:first-child .placeholder{min-height:265px}}@media(max-width:420px){.services{grid-template-columns:1fr}.service{padding:24px}.ticker{justify-content:start;gap:15px}.process{gap:20px}.hero h1{font-size:49px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Identidad oficial: imágenes originales, sin deformación ni recorte. */
.official-logo{display:block;position:relative;width:175px;height:72px;overflow:hidden;flex-shrink:0}.official-logo img{position:absolute;display:block;width:175px;height:175px;max-width:none;left:0;top:-52px}.brand-wallpaper img{display:block;width:100%;height:auto}.hero{grid-template-columns:1fr 1.18fr;gap:40px}.hero h1{font-size:clamp(43px,5vw,68px);line-height:1.04;letter-spacing:-3px}.hero h1 em{color:#ba1664}footer{background:#161616;color:#f4f2ed}footer .wrap{align-items:center}.footer-logo{width:135px;height:55px}.footer-logo img{width:135px;height:135px;top:-40px}@media(max-width:760px){.hero{grid-template-columns:1fr}.hero h1{font-size:clamp(42px,8vw,60px);letter-spacing:-2px}.brand-wallpaper{margin-top:4px}}@media(max-width:380px){.hero h1{font-size:40px}}

/* Movimiento y profundidad, con pausa y preferencias de accesibilidad. */
html{scroll-padding-top:28px}.hero{position:relative;isolation:isolate}.hero:before{content:'';position:absolute;z-index:-1;width:70%;height:70%;right:-3%;top:8%;background:radial-gradient(ellipse,rgba(0,191,215,.13),rgba(241,39,136,.08) 45%,transparent 70%);animation:halo 10s ease-in-out infinite alternate;pointer-events:none}.brand-wallpaper{transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s ease;box-shadow:0 22px 55px #17171730;will-change:transform;position:relative}.brand-wallpaper img{animation:float-image 6s ease-in-out infinite}.hero h1{animation:hero-enter .85s cubic-bezier(.2,.8,.2,1) both}.hero .lead{animation:hero-enter .85s .12s both}.hero .actions{animation:hero-enter .85s .24s both}.hero h1 em{background:linear-gradient(100deg,#ae145c,#7c277d,#006f8c,#ae145c);background-size:300% 100%;color:transparent;background-clip:text;-webkit-background-clip:text;animation:color-travel 7s ease-in-out infinite}.cta{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.cta:hover{transform:translateY(-4px);box-shadow:5px 5px 0 var(--pink);text-decoration:none}.service{position:relative;transition:transform .3s ease,background .3s ease,box-shadow .3s ease}.service:hover{transform:translateY(-7px);background:white;box-shadow:0 16px 32px #00000012;z-index:1}.service:after{content:'';position:absolute;bottom:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,var(--cyan),var(--pink),var(--yellow));transform:scaleX(0);transform-origin:left;transition:transform .35s ease}.service:hover:after{transform:scaleX(1)}.project{transition:transform .35s ease}.project:hover{transform:translateY(-6px)}.motion-enabled .reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.8,.2,1);transition-delay:var(--delay,0ms)}.motion-enabled .reveal.visible{opacity:1;transform:translateY(0)}.ticker{display:block;overflow:hidden;padding:22px 0}.ticker-track{display:flex;width:max-content;animation:marquee 26s linear infinite}.ticker-group{display:flex;gap:32px;padding-right:32px;white-space:nowrap}.ticker:hover .ticker-track{animation-play-state:paused}.motion-controls{display:flex;justify-content:flex-end;margin-top:18px}.motion-toggle{font:inherit;font-size:12px;padding:10px 14px;border:1px solid #bbb;background:transparent;color:var(--ink);cursor:pointer;min-height:44px}.motion-toggle:hover{background:white}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .reveal{opacity:1;transform:none;transition:none}.motion-paused .brand-wallpaper{transform:none}.motion-paused .cta:hover,.motion-paused .service:hover,.motion-paused .project:hover{transform:none}.motion-paused{scroll-behavior:auto}.scroll-progress{position:fixed;left:0;top:0;height:3px;background:linear-gradient(90deg,var(--cyan),var(--pink),var(--yellow));width:100%;transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}@keyframes hero-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes float-image{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes halo{from{transform:translate(-3%,3%) scale(.92)}to{transform:translate(3%,-3%) scale(1.08)}}@keyframes color-travel{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes marquee{to{transform:translateX(-50%)}}@media(pointer:coarse){.brand-wallpaper{transform:none!important}.service:hover,.project:hover{transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-enabled .reveal{opacity:1;transform:none}.brand-wallpaper{transform:none!important}.ticker-track{width:auto;animation:none}.ticker-group{flex-wrap:wrap;white-space:normal;padding:0 6%}.ticker-group[aria-hidden]{display:none}.scroll-progress{display:none}} 

/* Universo visual HACHE: superficies oscuras y curvas luminosas CMYK. */
:root{--ink:#f6f5fb;--paper:#090910;--cyan:#16c8ee;--pink:#ff2b99;--yellow:#ffe533;color-scheme:dark}body{background:#090910;color:#f6f5fb;position:relative;isolation:isolate;overflow-x:clip}.ambient-scene{position:fixed;inset:0;overflow:hidden;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 48% 32%,#161525 0%,#090910 65%)}.ambient-glow{position:absolute;width:65vw;height:65vw;min-width:350px;min-height:350px;border-radius:50%;filter:blur(70px);opacity:.25;animation:ambient-drift 18s ease-in-out infinite alternate}.glow-cyan{left:-28%;bottom:-32%;background:radial-gradient(circle,#00bde9,transparent 66%)}.glow-magenta{right:-27%;top:-25%;background:radial-gradient(circle,#ee0b83,transparent 66%);animation-delay:-6s}.glow-yellow{left:-35%;top:5%;background:radial-gradient(circle,#be8b00,transparent 66%);opacity:.19;animation-delay:-12s}.light-curve{position:absolute;width:140%;height:90%;border-radius:48%;border:1px solid transparent;transform:rotate(-22deg);animation:curve-breathe 14s ease-in-out infinite alternate}.curve-one{left:-18%;top:-63%;border-bottom-color:#ff2b9980;box-shadow:0 2px 2px #ff2b9940,0 12px 45px #ff2b9919}.curve-two{left:-28%;bottom:-52%;border-top-color:#14c9edaa;box-shadow:0 -2px 3px #00cffd60,0 -16px 65px #00a8df22;transform:rotate(12deg);animation-delay:-7s}.curve-three{left:-80%;top:-22%;border-right-color:#ffda2590;box-shadow:3px 0 4px #e9be2233,12px 0 50px #ffd12c15;transform:rotate(-32deg)}.notice{background:#0e0e18e6;color:#c4c3d1;border-bottom:1px solid #ffffff12}.wrap{position:relative}header{border-bottom:1px solid #ffffff13}nav{color:#d6d4e4}.eyebrow{color:#69ddef}.hero{padding:78px 0 88px;gap:55px}.hero:before{background:radial-gradient(ellipse,#ec158716,#11bfff12 45%,transparent 72%);width:100%;right:-15%}.hero h1{color:#fff}.hero h1 em{background-image:linear-gradient(100deg,#ff68b8,#72d9ff,#ffe86a,#ff68b8)}.lead,.section-head p,.service p,.step p{color:#bcbaca}.brand-wallpaper{border-radius:22px;overflow:hidden;background:#0d0c16;box-shadow:0 0 0 1px #ffffff19,0 28px 80px #0008,15px -12px 75px #f3228815,-20px 20px 65px #00bbdf14}.brand-wallpaper img{animation:none}.cta{background:linear-gradient(115deg,#de167a,#a82bc2);color:white;border:1px solid #ff68b740;border-radius:100px;box-shadow:0 7px 25px #e71e7e20}.cta:hover{background:linear-gradient(115deg,#f52391,#c843df);box-shadow:0 0 30px #f1278848;transform:translateY(-4px)}.text-link{color:#f0eaf8}.motion-toggle{color:#d4d0e1;border-color:#ffffff25;border-radius:100px;background:#ffffff05}.motion-toggle:hover{background:#ffffff12}.ticker{background:linear-gradient(90deg,#121320e6,#211021d9,#121823e6);border-top:1px solid #f62d952f;border-bottom:1px solid #18b6de33;color:#eae7f4;box-shadow:0 0 40px #e0208010}.section{padding-top:92px;padding-bottom:92px}.section h2{color:#faf8ff}.section-head p{color:#bcbaca}.services{border:0;gap:18px}.service{border:1px solid #ffffff15;border-radius:20px;background:linear-gradient(145deg,#23223499,#101018d9);box-shadow:0 12px 35px #0002;overflow:hidden;backdrop-filter:blur(14px);padding:31px;min-height:250px}.service .number{color:#8dd9e8}.service h3{color:#fff}.service:hover{background:linear-gradient(145deg,#312039e6,#141726ed);border-color:#f9359355;box-shadow:0 18px 44px #0005,0 0 24px #f62c9210}.service:nth-child(3n+2):hover{border-color:#21cae95c;box-shadow:0 18px 44px #0005,0 0 25px #12cde315}.service:nth-child(3n):hover{border-color:#e8d53066}.dark{background:radial-gradient(ellipse at 95% 80%,#c70f6c1c,transparent 55%),linear-gradient(125deg,#080a11d9,#16101cbd);border-top:1px solid #ffffff0e;border-bottom:1px solid #ffffff0e;position:relative}.dark:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 0% 100%,#00bdf817,transparent 60%)}.project .placeholder{border-radius:20px;background:radial-gradient(ellipse at 0% 100%,#07658555,transparent 65%),radial-gradient(ellipse at 100% 0%,#87184944,transparent 65%),linear-gradient(135deg,#171827,#0c0d16);border:1px solid #ffffff20;color:#bfb9cd;position:relative;overflow:hidden}.project .placeholder:before{content:'';position:absolute;width:140%;height:100%;left:-25%;top:-65%;border-radius:50%;border-bottom:1px solid #ff4e9d66;box-shadow:0 10px 40px #e0298c17;transform:rotate(-20deg)}.project p,.gallery-note{color:#aaa5ba}.project h3{color:#f7f3fd}.step{border-top:1px solid #19bed47f;position:relative}.step:nth-child(2){border-top-color:#f2278880}.step:nth-child(3){border-top-color:#fae33580}.step:nth-child(4){border-top-color:#aa7ef580}.step .number{color:#b7b1c6}.step h3{color:#f5f2fd}.about{border-top:1px solid #ffffff1a}.about p{color:#c1bccf}.about strong{display:block;margin-top:22px;color:#f9f6ff}.contact{background:radial-gradient(ellipse at 90% 100%,#a4127040,transparent 58%),radial-gradient(ellipse at 0% 100%,#0083b32c,transparent 60%),linear-gradient(135deg,#161220ee,#10121eef);border-top:1px solid #fa258e40;border-bottom:1px solid #00beec33;position:relative;overflow:hidden;padding:85px 0}.contact:before{content:'';position:absolute;width:100%;height:190%;top:-164%;left:30%;border-radius:50%;border-bottom:2px solid #f1389573;box-shadow:0 10px 55px #f02c951a;transform:rotate(-15deg)}.contact p{color:#c9c3d6}.contact h2{color:#fff}footer{background:#08080ee8;color:#aaa5ba;border-top:1px solid #ffffff09}#menu{color:#eee;border-color:#ffffff35;background:#ffffff08;border-radius:8px}.motion-paused .ambient-scene *{animation-play-state:paused!important}@keyframes ambient-drift{from{transform:translate3d(-3%,-2%,0) scale(.95)}to{transform:translate3d(9%,7%,0) scale(1.12)}}@keyframes curve-breathe{from{opacity:.5}to{opacity:1}}@media(max-width:760px){.hero{padding:45px 0 62px;gap:38px}.section{padding-top:62px;padding-bottom:62px}.service{min-height:230px;padding:26px}.ambient-glow{filter:blur(45px);opacity:.2}.contact{padding:60px 0}.brand-wallpaper{border-radius:15px}.light-curve{width:190%}.curve-two{left:-40%;bottom:-48%}}@media(prefers-reduced-motion:reduce){.ambient-scene *{animation:none!important}}

/* Animación de marca: conserva el logo oficial y anima su entorno. */
.brand-wallpaper.logo-stage{aspect-ratio:1/1.07;min-height:440px;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 44%,#27223985,transparent 65%),linear-gradient(150deg,#16101eaa,#070c16cc);border:1px solid #ffffff12;border-radius:28px;box-shadow:0 40px 95px #0005,inset 0 0 80px #0002;isolation:isolate;overflow:hidden}.logo-haze{position:absolute;width:80%;height:65%;border-radius:50%;opacity:.4;filter:blur(35px);pointer-events:none;animation:logo-haze-drift 11s ease-in-out infinite alternate}.haze-c{left:-25%;bottom:-20%;background:radial-gradient(ellipse,#00bde977,transparent 68%)}.haze-m{right:-27%;top:-18%;background:radial-gradient(ellipse,#e7248577,transparent 68%);animation-delay:-4s}.haze-y{left:-25%;top:10%;background:radial-gradient(ellipse,#f4d01733,transparent 68%);animation-delay:-8s}.logo-orbit{position:absolute;width:135%;height:67%;border-radius:50%;border:1px solid transparent;pointer-events:none;animation:logo-orbit-drift 12s ease-in-out infinite alternate}.orbit-c{left:-19%;bottom:-36%;border-top:2px solid #4ae6ffb0;box-shadow:0 -3px 13px #00caff39,0 -13px 55px #00b8fa25;transform:rotate(-18deg)}.orbit-m{right:-25%;top:-34%;border-bottom:2px solid #ff5aaa9f;box-shadow:0 3px 14px #fa208c38,0 15px 55px #ed258321;transform:rotate(-24deg);animation-delay:-4s}.orbit-y{left:-117%;top:0;width:155%;height:105%;border-right:2px solid #ffe43e9c;box-shadow:3px 0 15px #f9d82327;transform:rotate(26deg);animation-delay:-8s}.logo-core{width:74%;position:relative;z-index:2;animation:logo-hover 7s ease-in-out infinite;filter:drop-shadow(0 5px 20px #10bddd22);margin-top:-8%}.logo-crop{position:relative;width:100%;aspect-ratio:1080/432;overflow:hidden}.brand-wallpaper .logo-crop img{position:absolute;width:100%;height:auto;max-width:none;left:0;top:-75%;animation:none;display:block}.logo-caption{position:absolute;left:8%;right:8%;bottom:24%;display:flex;justify-content:center;gap:8px;flex-wrap:wrap;font-size:10px;font-weight:bold;letter-spacing:1.9px;text-align:center;line-height:1.8;color:#d9d7e6}.logo-caption span:last-child{color:#fc67b0}.logo-spectrum{position:absolute;bottom:15%;left:40%;width:20%;display:flex;gap:5px}.logo-spectrum i{height:3px;flex:1;border-radius:8px;background:#ffe42d;box-shadow:0 0 12px #ffe42d60;animation:spectrum-breathe 3s ease-in-out infinite}.logo-spectrum i:nth-child(2){background:#1fcbed;box-shadow:0 0 12px #1fcbed70;animation-delay:.5s}.logo-spectrum i:nth-child(3){background:#fb2d91;box-shadow:0 0 12px #fb2d9170;animation-delay:1s}@keyframes logo-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes logo-haze-drift{from{transform:translate(-3%,-2%) scale(.9);opacity:.3}to{transform:translate(10%,9%) scale(1.15);opacity:.55}}@keyframes logo-orbit-drift{from{translate:0 -8px}to{translate:12px 14px}}@keyframes spectrum-breathe{0%,100%{opacity:.4;transform:scaleX(.8)}50%{opacity:1;transform:scaleX(1)}}@media(max-width:760px){.brand-wallpaper.logo-stage{min-height:0;aspect-ratio:1.12;border-radius:22px}.logo-caption{font-size:9px;letter-spacing:1.1px;bottom:22%}.logo-core{width:72%}.logo-haze{filter:blur(25px)}}@media(prefers-reduced-motion:reduce){.logo-stage *{animation:none!important;transition:none!important}}

/* Logo integrado directamente sobre el fondo general. */
.brand-wallpaper.logo-stage{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;backdrop-filter:none;isolation:auto}
.logo-stage .logo-haze,.logo-stage .logo-orbit{display:none}
.logo-stage .logo-core{filter:drop-shadow(0 5px 20px #10bddd15)}
@media(max-width:760px){.brand-wallpaper.logo-stage{border-radius:0;background:none;border:0;box-shadow:none}}

/* Secuencia recreada con el PNG oficial; no contiene la grabación de referencia. */
.logo-stage{--symbol-source:url("../media/fb69d2f85add4619.png")}.brand-reveal{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;perspective:950px;pointer-events:none}.symbol-turn{width:46%;aspect-ratio:424/432;position:relative;transform-style:preserve-3d;animation:symbol-cinema 14s cubic-bezier(.42,0,.22,1) infinite}.symbol-volume{position:absolute;inset:0;transform-style:preserve-3d}.symbol-layer{position:absolute;inset:0;background-image:var(--symbol-source);background-size:254.717% 250%;background-position:.914634% 50%;background-repeat:no-repeat;transform:translateZ(var(--depth));filter:brightness(.42) saturate(.8);backface-visibility:visible}.symbol-front{filter:drop-shadow(0 0 10px #04cee835);animation:face-light 14s ease-in-out infinite}.symbol-gloss{position:absolute;inset:0;transform:translateZ(1px);mask-image:var(--symbol-source);mask-size:254.717% 250%;mask-position:.914634% 50%;mask-repeat:no-repeat;-webkit-mask-image:var(--symbol-source);-webkit-mask-size:254.717% 250%;-webkit-mask-position:.914634% 50%;-webkit-mask-repeat:no-repeat;background:linear-gradient(112deg,transparent 30%,#e9fbff30 39%,#fff 45%,#ffffff55 49%,transparent 57%);background-size:360% 100%;mix-blend-mode:screen;animation:symbol-shine 14s ease-in-out infinite;pointer-events:none}.brand-signature{margin-top:38px;color:#faf7ff;font-size:19px;letter-spacing:4px;font-weight:bold;text-align:center;animation:signature-reveal 14s ease-in-out infinite}.brand-signature span{font-weight:400}.logo-stage .logo-caption{bottom:13%;font-size:9px;letter-spacing:1.4px}.logo-stage .logo-spectrum{bottom:7%;width:14%;left:43%}.logo-stage .logo-core{display:none}@keyframes symbol-cinema{0%{opacity:1;transform:rotateX(0) rotateY(0) scale(.92)}8%{opacity:0;transform:rotateX(12deg) rotateY(-75deg) scale(.82)}14%{opacity:.25;transform:rotateX(14deg) rotateY(-62deg) scale(.9)}29%{opacity:1;transform:rotateX(9deg) rotateY(-26deg) rotateZ(-8deg) scale(1.2)}42%{opacity:1;transform:rotateX(-7deg) rotateY(30deg) rotateZ(5deg) scale(1.3)}56%{opacity:1;transform:rotateX(0) rotateY(0) rotateZ(0) scale(.92)}90%{opacity:1;transform:rotateX(0) rotateY(0) scale(.92)}100%{opacity:1;transform:rotateX(0) rotateY(0) scale(.92)}}@keyframes symbol-shine{0%,8%{opacity:0;background-position:130% 0}16%{opacity:1;background-position:115% 0}46%{opacity:.95;background-position:-15% 0}57%,100%{opacity:0;background-position:-30% 0}}@keyframes face-light{0%,8%{filter:brightness(1) drop-shadow(0 0 8px #00c4ee20)}15%{filter:brightness(.4) drop-shadow(0 0 7px #36dfff80)}35%{filter:brightness(1.16) drop-shadow(0 0 16px #46e9ff60)}50%{filter:brightness(1.1) drop-shadow(0 0 14px #f9349370)}62%,100%{filter:brightness(1) drop-shadow(0 0 8px #00c4ee20)}}@keyframes signature-reveal{0%{opacity:1;transform:translateY(0)}7%,48%{opacity:0;transform:translateY(10px)}62%,100%{opacity:1;transform:translateY(0)}}.motion-paused .symbol-turn{transform:rotateX(0) rotateY(0) scale(.92)!important;opacity:1!important;animation:none!important}.motion-paused .symbol-gloss{opacity:0!important}.motion-paused .brand-signature{opacity:1!important;transform:none!important;animation:none!important}@media(max-width:760px){.symbol-turn{width:43%}.brand-signature{margin-top:24px;font-size:15px;letter-spacing:3px}.logo-stage .logo-caption{font-size:8px;letter-spacing:.7px;bottom:11%}.logo-stage .logo-spectrum{bottom:5%}}@media(prefers-reduced-motion:reduce){.symbol-turn{transform:scale(.92)!important;opacity:1!important}.symbol-gloss{display:none}.brand-signature{opacity:1!important;transform:none!important}}

/* Símbolo oficial independiente, sin recortes. */
.symbol-turn{aspect-ratio:1;width:55%}.symbol-layer{background-size:100% 100%;background-position:center}.symbol-gloss{mask-size:100% 100%;mask-position:center;-webkit-mask-size:100% 100%;-webkit-mask-position:center}@media(max-width:760px){.symbol-turn{width:51%}}

/* Encabezado: símbolo oficial CMYK y letras oficiales blancas. */
.brand.official-logo .header-color-symbol{clip-path:inset(0 60% 0 0)}
/* Movimiento continuo: sin desapariciones, saltos ni cambios bruscos de escala. */
.symbol-turn{animation:symbol-flow 12s ease-in-out infinite;will-change:transform;opacity:1;transform-origin:50% 50%}.symbol-front{animation:none;filter:drop-shadow(0 0 9px #00c4ee25)}.symbol-gloss{animation:gloss-flow 12s ease-in-out infinite;background-size:360% 100%;mix-blend-mode:screen}.brand-reveal{perspective:1200px}.symbol-layer{backface-visibility:hidden}.motion-paused .symbol-turn{transform:scale(1)!important}.brand-wallpaper.logo-stage{transform:none!important}
@keyframes symbol-flow{0%,100%{transform:translateY(0) rotateX(2deg) rotateY(-16deg) rotateZ(-2deg) scale(1)}25%{transform:translateY(-7px) rotateX(-3deg) rotateY(0deg) rotateZ(0deg) scale(1.025)}50%{transform:translateY(0) rotateX(2deg) rotateY(16deg) rotateZ(2deg) scale(1)}75%{transform:translateY(7px) rotateX(4deg) rotateY(0deg) rotateZ(0deg) scale(.985)}}
@keyframes gloss-flow{0%,100%{opacity:0;background-position:125% 0}15%{opacity:0;background-position:125% 0}30%{opacity:.55;background-position:65% 0}48%{opacity:0;background-position:-20% 0}49%,99%{opacity:0;background-position:125% 0}}
@media(prefers-reduced-motion:reduce){.symbol-turn{animation:none!important;transform:none!important}.symbol-gloss{display:none}}

/* Cuerpo cromado: capas de espesor con la silueta exacta del símbolo oficial. */
.symbol-volume{transform-style:preserve-3d}.symbol-layer.metal-side,.symbol-layer.metal-rim{background-image:linear-gradient(125deg,#141b27 0%,#47566b 12%,#eef8ff 24%,#7c8b9c 31%,#182131 43%,#e7edf3 52%,#596878 61%,#101722 70%,#9eb4c5 82%,#f1f6fd 88%,#364050 100%);background-size:240% 180%;background-position:var(--metal-shift,50%) 50%;mask-image:var(--symbol-source);mask-size:100% 100%;mask-position:center;mask-repeat:no-repeat;-webkit-mask-image:var(--symbol-source);-webkit-mask-size:100% 100%;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;filter:none;backface-visibility:visible;transform:translateZ(var(--depth))}.symbol-layer.metal-rim{transform:translateZ(0px) scale(1.025);background-size:150% 150%;background-position:50% 50%}.symbol-layer.symbol-front{transform:translateZ(1px);filter:none;backface-visibility:hidden}.symbol-gloss{transform:translateZ(2px);mix-blend-mode:screen;animation:metal-gloss 12s ease-in-out infinite}.symbol-turn{animation:metal-turn 12s ease-in-out infinite;will-change:transform}.brand-reveal{perspective:1000px}
@keyframes metal-turn{0%,100%{transform:translateY(0) rotateX(7deg) rotateY(-27deg) rotateZ(-2deg) scale(1)}25%{transform:translateY(-6px) rotateX(2deg) rotateY(0deg) rotateZ(0deg) scale(1.015)}50%{transform:translateY(0) rotateX(-5deg) rotateY(27deg) rotateZ(2deg) scale(1)}75%{transform:translateY(6px) rotateX(2deg) rotateY(0deg) rotateZ(0deg) scale(.985)}}
@keyframes metal-gloss{0%,100%{opacity:0;background-position:125% 0}12%{opacity:0;background-position:125% 0}26%{opacity:.42;background-position:75% 0}45%{opacity:0;background-position:-20% 0}46%,99%{opacity:0;background-position:125% 0}}
.motion-paused .symbol-turn{transform:rotateX(5deg) rotateY(-22deg) scale(1)!important;animation:none!important;opacity:1!important}@media(prefers-reduced-motion:reduce){.symbol-turn{transform:rotateX(5deg) rotateY(-22deg)!important;animation:none!important}.symbol-gloss{display:none}}

/* Portfolio real: fotografías completas, detalles y video a demanda. */
.gallery.real-work{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 26px}
.real-work .project{min-width:0}.real-work .project-featured{grid-column:1/-1}
.project-photo,.project-video{display:block;width:100%;height:440px;object-fit:contain;background:#08090e;border:1px solid #ffffff20;border-radius:18px}
.altea-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.altea-photos img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid #ffffff20}
.real-work .project p{line-height:1.7;max-width:620px}.project-category{display:block;margin-top:18px;color:#69ddef;font-size:10px;font-weight:bold;letter-spacing:1.8px;text-transform:uppercase}
.real-work .project h3{margin-top:8px}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:18px;flex-shrink:0}.contact-email{font-size:16px;text-underline-offset:5px}.contact-number{color:#bcbaca;font-size:14px}
@media(max-width:760px){.gallery.real-work{grid-template-columns:1fr}.altea-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.project-photo,.project-video{height:400px}.contact-links{width:100%}}

/* Fondo continuo: una sola escena negra con ondas CMYK entre secciones. */
.dark,.contact,footer{background:transparent;border-top:0;border-bottom:0;box-shadow:none}
.dark:before,.contact:before{content:none}
.about{border-top:0}
/* El ritmo y las tarjetas separan el contenido, sin franjas sobre las ondas. */
#trabajos{isolation:auto}
.contact{overflow:visible}

/* Cinta continua: copias calculadas para cubrir cualquier ancho de pantalla. */
.ticker-track{animation:none!important;display:flex;flex-wrap:nowrap;width:max-content;gap:0;will-change:transform}.ticker-group{display:flex;flex:0 0 auto;flex-wrap:nowrap;gap:32px;padding:0 32px 0 0;white-space:nowrap}.ticker-group span{flex:0 0 auto}.ticker:hover .ticker-track{animation-play-state:running}.motion-paused .ticker-track{animation:none!important}@media(prefers-reduced-motion:reduce){.ticker-track{width:auto;transform:none!important;will-change:auto}.ticker-group{flex-wrap:wrap;white-space:normal;padding:0 6%}.ticker-group[aria-hidden="true"]{display:none}}

.trusted-clients{padding-top:70px;padding-bottom:70px;text-align:center}
.trusted-clients h2{max-width:780px;margin:0 auto;font-size:clamp(28px,3.5vw,44px)}
.client-logos{list-style:none;padding:0;margin:28px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,64px);align-items:center;max-width:1050px}
.client-logos li{display:flex;align-items:center;justify-content:center;min-width:0}
.client-logos img{display:block;width:100%;max-width:280px;height:auto;aspect-ratio:1;object-fit:contain}
@media(max-width:600px){.client-logos{grid-template-columns:1fr;gap:0;margin-top:16px}.client-logos img{max-width:260px}.trusted-clients{padding-top:48px;padding-bottom:48px}}

/* Cinco marcas: tres arriba y dos centradas debajo. */
.client-logos{grid-template-columns:repeat(6,minmax(0,1fr));row-gap:0}
.client-logos li{grid-column:span 2}
.client-logos li:nth-child(4){grid-column:2 / span 2}
.client-logos li:nth-child(5){grid-column:4 / span 2}
@media(max-width:600px){.client-logos{grid-template-columns:1fr}.client-logos li,.client-logos li:nth-child(4),.client-logos li:nth-child(5){grid-column:auto}}

/* Seis empresas, distribuidas en dos filas de tres. */
.client-logos{grid-template-columns:repeat(3,minmax(0,1fr))}
.client-logos li,.client-logos li:nth-child(4),.client-logos li:nth-child(5){grid-column:auto}
@media(max-width:760px){.client-logos{grid-template-columns:1fr}}

/* Diseño adaptable: móvil, tablet, orientación horizontal y escritorio. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-width:0}.wrap{width:100%;padding-left:max(6%,env(safe-area-inset-left));padding-right:max(6%,env(safe-area-inset-right))}.hero>*,.section-head>*,.about>*,.contact .wrap>*,.services>*,.process>*{min-width:0}.services{grid-template-columns:repeat(3,minmax(0,1fr))}.lead,.service p,.step p,.about p,.contact p{overflow-wrap:break-word}.contact-email,footer a{overflow-wrap:anywhere}.contact .wrap{flex-wrap:wrap}.contact-links{max-width:100%;flex-shrink:1}.cta{min-height:48px;text-align:center;justify-content:center;white-space:normal}.project-photo,.project-video{max-width:100%;height:clamp(300px,42vw,480px)}.client-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 32px}.client-logos li,.client-logos li:nth-child(4),.client-logos li:nth-child(5){grid-column:auto}.client-logos img{max-width:240px}.motion-toggle,#menu{min-height:44px;min-width:44px}nav a{display:inline-flex;min-height:44px;align-items:center}button,a{-webkit-tap-highlight-color:#ff2b9926}a:focus-visible,button:focus-visible{outline-offset:4px}
@media(max-width:1024px){header{flex-wrap:wrap;gap:16px}#menu{display:block}nav{display:none;width:100%;padding:12px 0;flex-wrap:wrap;gap:12px 24px}nav.open{display:flex}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:52px 0 60px}.hero h1{font-size:clamp(38px,5.6vw,58px);letter-spacing:-2px}.brand-wallpaper.logo-stage{min-height:0;aspect-ratio:1/1.15}.services{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{align-items:flex-start}.process{grid-template-columns:repeat(2,minmax(0,1fr))}.about{gap:32px}.altea-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.contact h2{max-width:100%}.contact .wrap{gap:30px}.section{padding-top:60px;padding-bottom:60px}}
@media(max-width:767px){.wrap{padding-left:max(6%,env(safe-area-inset-left));padding-right:max(6%,env(safe-area-inset-right))}.hero{grid-template-columns:minmax(0,1fr);gap:10px;padding-top:36px;padding-bottom:38px}.hero h1{font-size:clamp(38px,10.8vw,62px);line-height:1.05;letter-spacing:-1.8px}.lead{font-size:16px;max-width:100%}.brand-wallpaper.logo-stage{width:100%;max-width:440px;justify-self:center;aspect-ratio:1.15;min-height:0}.section-head{flex-direction:column;gap:16px}.section-head p{max-width:100%}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service{padding:22px;min-height:0}.service h3{font-size:20px}.gallery.real-work{grid-template-columns:minmax(0,1fr);gap:30px}.project-photo,.project-video{height:clamp(280px,100vw,460px)}.about{grid-template-columns:minmax(0,1fr);gap:18px}.about p{font-size:16px}.contact .wrap{flex-direction:column;align-items:stretch}.contact-links{width:100%}.contact p br{display:none}.client-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}.client-logos img{max-width:220px}.section{padding-top:48px;padding-bottom:48px}footer .wrap{gap:22px;align-items:flex-start;flex-direction:column}.logo-stage .logo-caption{font-size:9px;letter-spacing:1px}.motion-controls{margin-top:14px}.notice{font-size:11px;line-height:1.5}}
@media(max-width:480px){.services{grid-template-columns:minmax(0,1fr)}.hero .actions{align-items:stretch;flex-direction:column;gap:18px}.hero .actions .text-link{padding:10px 0;min-height:44px;text-align:center}.contact .cta{width:100%}.contact-links{align-items:stretch}.contact-number{font-size:12px;line-height:1.6}.process{gap:22px 18px}.step h3{font-size:17px}.step p{font-size:14px}.section h2{font-size:32px}.client-logos{gap:0 16px}.altea-photos{gap:8px}.brand.official-logo{width:155px;height:64px}.brand.official-logo img{width:155px;height:155px;top:-46px}.logo-stage .logo-caption{letter-spacing:.5px;font-size:8px}}
@media(hover:none),(pointer:coarse){.cta:hover,.service:hover,.project:hover{transform:none}.service{backdrop-filter:none}.ambient-glow{filter:blur(32px)}.symbol-layer.metal-side:nth-child(even){display:none}.brand-wallpaper{will-change:auto}.symbol-turn{animation-duration:14s}.symbol-gloss{animation-duration:14s}}

/* WordPress integration */
body.admin-bar .scroll-progress{top:32px}@media(max-width:782px){body.admin-bar .scroll-progress{top:46px}}.hache-content{padding-top:60px;padding-bottom:70px;min-height:65vh}.hache-content a{color:#71d9f5}.hache-content img{max-width:100%;height:auto}.hache-content p{line-height:1.7}.hache-skip{position:absolute;left:16px;top:-100px;z-index:10000;background:#fff;color:#111;padding:14px}.hache-skip:focus{top:50px}

/* Redes sociales oficiales */
.hache-socials{display:flex;flex-wrap:wrap;align-items:center;gap:10px;max-width:100%}
.hache-socials a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 14px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.035);color:#fff;text-decoration:none;font-size:13px;line-height:1.3;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.hache-socials svg{display:block;width:19px;height:19px;flex:none}
.hache-socials a:hover,.hache-socials a:focus-visible{background:rgba(241,39,136,.14);border-color:#f12788;transform:translateY(-2px)}
footer .wrap{flex-wrap:wrap;gap:20px}
@media(prefers-reduced-motion:reduce){.hache-socials a{transition:none}.hache-socials a:hover,.hache-socials a:focus-visible{transform:none}}
