@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
html,body{overflow-x:hidden}
:root{--bg:#08080c;--panel:#111118;--text:#f7f4f8;--muted:#aaa7b1;--cyan:#54c8ff;--pink:#ff4fa3;--violet:#8d5cff;--coral:#ff7868;--line:#292832;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;line-height:1.6}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;color:#000;padding:.7rem}.header{position:fixed;z-index:50;top:0;left:0;right:0;height:82px;display:flex;align-items:center;padding:0 max(24px,calc((100% - var(--max))/2));background:rgba(8,8,12,.82);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.08)}.brand{margin-right:auto}.brand img{width:150px;height:48px;object-fit:contain;object-position:left}.header nav{display:flex;gap:30px;font-size:.88rem}.header nav a:hover,.social a:hover{color:var(--cyan)}.header-cta{margin-left:32px;border:1px solid #555260;padding:10px 17px;border-radius:99px;font-weight:600}.menu{display:none;background:none;border:1px solid #444;color:#fff;border-radius:99px;padding:8px 14px}.hero{min-height:780px;padding:145px max(24px,calc((100% - var(--max))/2)) 60px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;overflow:hidden;background:radial-gradient(circle at 68% 25%,rgba(141,92,255,.15),transparent 32%),radial-gradient(circle at 25% 65%,rgba(255,79,163,.10),transparent 30%)}.hero-copy{position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;color:#d7d2dc}.eyebrow span{display:inline-block;width:22px;height:1px;background:var(--pink);vertical-align:middle;margin-right:8px}.hero h1{font-family:'Manrope';font-size:clamp(3.2rem,6vw,6.2rem);line-height:.96;letter-spacing:-.065em;margin:22px 0;max-width:820px}.hero h1 em{font-weight:400;color:var(--pink)}.lead{font-size:1.15rem;max-width:640px;color:#c7c3cc}.actions{display:flex;gap:12px;margin:30px 0}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 23px;border-radius:99px;border:1px solid transparent;font-weight:700;font:inherit;cursor:pointer}.primary{background:linear-gradient(105deg,var(--pink),var(--violet));color:#fff;box-shadow:0 8px 36px rgba(255,79,163,.2)}.secondary{border-color:#4b4952}.hero-proof{display:flex;gap:18px;align-items:center;color:var(--muted);font-size:.82rem;margin-top:46px}.hero-proof strong{color:#fff}.hero-visual{height:680px;position:relative;margin-left:-60px}.hero-visual:after{content:"";position:absolute;inset:auto 0 0;background:linear-gradient(transparent,var(--bg));height:25%}.hero-visual img{height:100%;width:100%;object-fit:cover;object-position:center top;mask-image:linear-gradient(to bottom,#000 75%,transparent 100%)}.ai-note{position:absolute;right:5px;bottom:25px;z-index:2;color:#8f8b95;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.marquee{overflow:hidden;border-block:1px solid var(--line);padding:18px 0;color:#6f6b77;white-space:nowrap;font-weight:800;letter-spacing:.12em}.marquee div{font-family:'Manrope';font-size:1.05rem;text-align:center}.marquee i{color:var(--pink);padding:0 22px}.section{max-width:var(--max);margin:auto;padding:120px 24px}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:20px;margin-bottom:56px}.section-head h2,.offer h2,.brief h2{font-family:'Manrope';font-size:clamp(2.4rem,5vw,4.8rem);letter-spacing:-.055em;line-height:1.05;margin:0}.section-head>p:last-child{color:var(--muted);max-width:460px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service-grid article{min-height:430px;padding:28px;border-right:1px solid var(--line);transition:.25s;background:linear-gradient(180deg,transparent,rgba(255,255,255,.02))}.service-grid article:last-child{border:0}.service-grid article:hover{background:#17151e;transform:translateY(-5px)}.service-grid article>span{color:#686572;font-size:.75rem}.icon{font-family:monospace;color:var(--cyan);font-size:1.6rem;margin:55px 0 28px}.service-grid h3{font-family:'Manrope';font-size:1.5rem}.service-grid p,.service-grid li{color:var(--muted);font-size:.9rem}.service-grid ul{padding:0;list-style:none}.service-grid li{border-top:1px solid var(--line);padding:8px 0}.offer{max-width:var(--max);margin:20px auto 100px;padding:75px;display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:center;border-radius:32px;background:radial-gradient(circle at 85% 15%,rgba(84,200,255,.2),transparent 32%),linear-gradient(130deg,#20102e,#101016 60%);border:1px solid #3c2e4a}.offer-card{padding:35px;background:rgba(8,8,12,.7);border:1px solid #50405c;border-radius:22px}.tag{font-size:.68rem;letter-spacing:.15em;color:var(--cyan)}.offer-card h3{font:700 1.7rem 'Manrope'}.offer-card p{color:#c3bdca}.offer-card .bonus{border-left:2px solid var(--pink);padding-left:15px}.offer-card .btn{width:100%;margin:12px 0}.offer-card small{display:block;color:#78737f;line-height:1.4}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.project{min-height:380px;border-radius:24px;padding:38px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12)}.project:before{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(255,255,255,.16);border-radius:50%;right:-35px;top:-40px;box-shadow:0 0 0 38px rgba(255,255,255,.03),0 0 0 75px rgba(255,255,255,.02)}.project:hover{transform:translateY(-4px)}.project span,.project p,.project b{position:relative}.project span{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em}.project h3{font:700 clamp(2.1rem,4vw,3.8rem) 'Manrope';letter-spacing:-.05em;margin:15px 0 3px;position:relative}.project p{max-width:530px;color:rgba(255,255,255,.75)}.project b{margin-top:15px}.pink{background:linear-gradient(145deg,#74154c,#e63f96)}.blue{background:linear-gradient(145deg,#0b3b69,#127bc7)}.violet{background:linear-gradient(145deg,#25125b,#6f45ca)}.pearl{background:linear-gradient(145deg,#43545d,#9d777f)}.ecosystem{max-width:var(--max);margin:auto;padding:100px 24px}.companies{display:grid;grid-template-columns:1fr 1fr;gap:18px}.companies a{min-height:330px;border-radius:25px;padding:46px;background:#101015;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end}.companies img{width:320px;max-height:90px;object-fit:contain;object-position:left;margin-bottom:auto}.companies p{color:var(--muted)}.companies span{font-weight:700}.companies .light{background:#f4f5f7;color:#15151a}.companies .light p{color:#555}.brief{max-width:var(--max);margin:100px auto;padding:90px 70px;display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;background:#f3f0f4;color:#141219;border-radius:30px}.brief-copy>p{color:#5f5a64}.brief .eyebrow{color:#5f5a64}.steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:35px}.steps span{border:1px solid #ccc5cf;border-radius:99px;padding:7px 12px;font-size:.75rem}form{background:#fff;border-radius:20px;padding:30px;box-shadow:0 20px 70px rgba(25,10,30,.09)}label{display:block;font-size:.77rem;font-weight:700;margin-bottom:16px}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}input,select,textarea{width:100%;border:1px solid #d7d2da;border-radius:10px;background:#faf9fb;padding:13px;margin-top:7px;font:inherit;color:#17141a}textarea{resize:vertical}.check{display:flex;gap:8px;font-weight:400;color:#625c65}.check input{width:auto;margin:4px 0}.brief button{width:100%}.form-note{text-align:center;color:#777;font-size:.72rem}footer{max-width:var(--max);margin:auto;padding:60px 24px 25px;text-align:center;border-top:1px solid var(--line)}footer>img{width:210px;height:80px;object-fit:contain;margin:auto}footer>p{color:var(--muted)}.social{display:flex;justify-content:center;gap:25px;margin:35px 0;font-weight:600}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;color:#777;font-size:.75rem}.float-wa{position:fixed;z-index:45;right:20px;bottom:20px;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#25d366;color:#07150c;font-weight:900;box-shadow:0 8px 30px rgba(0,0,0,.35)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.visible{opacity:1;transform:none}
@media(max-width:900px){.header{height:70px}.brand img{width:120px}.menu{display:block}.header nav{display:none;position:absolute;top:70px;left:15px;right:15px;padding:20px;background:#17171d;border:1px solid #34323b;border-radius:15px;flex-direction:column}.header nav.open{display:flex}.header-cta{display:none}.hero{min-height:auto;padding-top:115px;grid-template-columns:1fr}.hero h1{font-size:clamp(3rem,13vw,5rem)}.hero-visual{height:520px;margin:10px -50px -60px 0}.hero-proof{flex-wrap:wrap}.section{padding:80px 20px}.section-head{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.service-grid article{min-height:360px;border-bottom:1px solid var(--line)}.offer{margin:10px 20px 80px;padding:42px 26px;grid-template-columns:1fr;gap:30px}.brief{margin:60px 20px;padding:50px 24px;grid-template-columns:1fr}.companies{grid-template-columns:1fr}}
@media(max-width:600px){.hero{padding-inline:20px}.hero h1{font-size:3.3rem}.lead{font-size:1rem}.actions{flex-direction:column}.hero-visual{height:440px;margin-left:-70px}.marquee div{font-size:.8rem}.service-grid,.project-grid{grid-template-columns:1fr}.service-grid article{min-height:330px;border-right:0}.project{min-height:340px;padding:28px}.companies a{padding:30px;min-height:270px}.two{grid-template-columns:1fr}.brief{margin-inline:10px}.social{flex-wrap:wrap}.footer-bottom{gap:10px;flex-direction:column;align-items:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
.brief-photo{width:100%;max-height:330px;object-fit:cover;object-position:center 28%;border-radius:18px;margin-top:28px}

/* Paleta azul de Jairo Pinto y hero de ancho completo */
:root{--cyan:#54c8ff;--pink:#169ee8;--violet:#0879c9;--coral:#42d5e8}
.hero{padding-right:0;grid-template-columns:minmax(0,1fr) minmax(520px,1fr);background:radial-gradient(circle at 78% 22%,rgba(22,158,232,.2),transparent 34%),radial-gradient(circle at 22% 70%,rgba(66,213,232,.08),transparent 30%)}
.hero-copy{max-width:720px;padding-right:34px}
.hero-visual{margin-left:0;width:100%;height:720px}
.hero-visual img{object-position:center top}
.primary{background:linear-gradient(105deg,#169ee8,#0879c9);box-shadow:0 8px 36px rgba(22,158,232,.22)}
.offer{background:radial-gradient(circle at 85% 15%,rgba(84,200,255,.24),transparent 32%),linear-gradient(130deg,#082a46,#101820 60%);border-color:#174d70}
.offer-card{border-color:#25658b}
.pink{background:linear-gradient(145deg,#083b66,#0c8fd1)}
.violet{background:linear-gradient(145deg,#062d53,#126aa6)}
.pearl{background:linear-gradient(145deg,#16465c,#2686a2)}
@media(max-width:900px){.hero{padding-right:0;grid-template-columns:1fr}.hero-copy{padding:0 24px;max-width:none}.hero-visual{width:100%;height:560px;margin:10px 0 -60px}.hero-visual img{object-position:center top}}
@media(max-width:600px){.hero{padding-inline:0}.hero-copy{padding-inline:20px}.hero-visual{height:470px;margin-left:0}}

/* Hero editorial integrado: lienzo único, regla de tercios y glow azul */
.hero{position:relative;display:flex;align-items:center;min-height:860px;padding:140px max(24px,calc((100% - var(--max))/2)) 72px;isolation:isolate;background:transparent}
.hero-copy{position:relative;z-index:3;width:min(54%,760px);max-width:760px;padding-right:24px}
.hero-visual{position:absolute;z-index:0;inset:82px 0 0;width:100%;height:auto;margin:0;overflow:hidden;background:transparent}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:brightness(.88) saturate(.94) contrast(1.02);mask-image:none}
.hero-visual:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(7,10,15,.98) 0%,rgba(7,12,19,.91) 31%,rgba(7,15,24,.58) 48%,rgba(7,15,24,.08) 69%,rgba(7,15,24,.02) 100%);pointer-events:none}
.hero-visual:after{content:"";position:absolute;z-index:2;inset:0;background:radial-gradient(circle at 72% 38%,rgba(18,160,226,.09),transparent 25%),linear-gradient(180deg,rgba(3,8,13,.03) 65%,#08080c 100%);box-shadow:inset 0 0 90px rgba(0,0,0,.28);height:auto;pointer-events:none}
.hero h1{text-wrap:balance;text-shadow:0 4px 35px rgba(0,0,0,.48)}
@media(max-width:900px){.hero{display:flex;flex-direction:column;align-items:stretch;min-height:auto;padding:112px 0 0}.hero-copy{width:100%;max-width:none;padding:0 24px 36px}.hero-visual{position:relative;inset:auto;width:100%;height:540px;margin:0}.hero-visual img{object-position:67% center}.hero-visual:before{background:linear-gradient(180deg,#071019 0%,rgba(7,16,25,.12) 20%,rgba(7,16,25,.04) 68%,#08080c 100%)}}
@media(max-width:600px){.hero-copy{padding-inline:20px}.hero-visual{height:460px}.hero-visual img{object-position:66% center}}

/* Interacciones y microefectos */
.btn,.header-cta,.float-wa,.project,.companies a{transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,border-color .25s ease,color .25s ease,filter .25s ease}
.btn:hover{transform:translateY(-3px)}
.btn.primary:hover{filter:brightness(1.12);box-shadow:0 13px 42px rgba(22,158,232,.38)}
.btn.secondary:hover{color:#fff;border-color:var(--cyan);background:rgba(22,158,232,.1);box-shadow:0 10px 30px rgba(22,158,232,.12)}
.btn:active,.header-cta:active,.float-wa:active{transform:translateY(0) scale(.97)}
.header-cta:hover{transform:translateY(-2px);color:#fff;border-color:var(--cyan);background:rgba(22,158,232,.12);box-shadow:0 8px 26px rgba(22,158,232,.15)}
.float-wa:hover{transform:translateY(-4px) scale(1.06);filter:brightness(1.08);box-shadow:0 12px 34px rgba(37,211,102,.3)}
.project:hover{transform:translateY(-6px);filter:brightness(1.06);box-shadow:0 20px 55px rgba(4,108,170,.18)}
.companies a:hover{transform:translateY(-5px);border-color:#238bc4;box-shadow:0 20px 55px rgba(4,108,170,.14)}
.header nav a{position:relative;transition:color .22s ease}
.header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--cyan);transition:right .25s ease}
.header nav a:hover:after{right:0}
.btn:focus-visible,.header-cta:focus-visible,.float-wa:focus-visible,.header nav a:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
@media(prefers-reduced-motion:reduce){.btn,.header-cta,.float-wa,.project,.companies a,.header nav a,.header nav a:after{transition:none}.btn:hover,.header-cta:hover,.float-wa:hover,.project:hover,.companies a:hover{transform:none}}

/* Botones glow adaptados a la identidad azul/cyan */
.btn{--glow-color:#7bdcff;--glow-spread-color:rgba(12,153,221,.38);--enhanced-glow-color:#c8f3ff;--btn-color:#063a59;position:relative;isolation:isolate;overflow:visible;border:2px solid var(--glow-color);padding:0 28px;color:var(--glow-color);background:linear-gradient(145deg,#073c5b,#062d47);border-radius:14px;box-shadow:0 0 .75em .12em rgba(123,220,255,.52),0 0 2.4em .35em var(--glow-spread-color),inset 0 0 .65em .12em rgba(123,220,255,.38);text-shadow:0 0 .45em rgba(123,220,255,.8);transition:transform .3s ease,color .3s ease,background .3s ease,box-shadow .3s ease,border-color .3s ease,filter .3s ease}
.btn:after{pointer-events:none;content:"";position:absolute;z-index:-1;top:118%;left:8%;height:70%;width:84%;background:var(--glow-spread-color);filter:blur(1.45em);opacity:.46;transform:perspective(1.5em) rotateX(35deg) scale(1,.55);transition:opacity .3s ease,filter .3s ease}
.btn.primary{color:#e9faff;background:linear-gradient(145deg,#087fba,#07557e);border-color:#8be1ff;box-shadow:0 0 .8em .16em rgba(123,220,255,.55),0 0 2.8em .45em rgba(12,153,221,.34),inset 0 0 .7em .14em rgba(176,235,255,.35);text-shadow:0 0 .5em rgba(191,240,255,.72)}
.btn.secondary{color:#8adfff;background:rgba(4,28,43,.76);border-color:#4cadd2;box-shadow:0 0 .6em .08em rgba(76,173,210,.32),inset 0 0 .6em .08em rgba(76,173,210,.16);text-shadow:0 0 .45em rgba(76,173,210,.65)}
.btn:hover{transform:translateY(-3px);color:#032b42;background:var(--glow-color);border-color:var(--enhanced-glow-color);box-shadow:0 0 1em .22em var(--glow-color),0 0 3.5em .8em var(--glow-spread-color),inset 0 0 .75em .18em var(--enhanced-glow-color);text-shadow:none;filter:none}
.btn:hover:after{opacity:.72;filter:blur(1.8em)}
.btn:active{transform:translateY(0) scale(.98);box-shadow:0 0 .55em .16em var(--glow-color),0 0 2em .55em var(--glow-spread-color),inset 0 0 .5em .14em var(--glow-color)}
.offer-card .btn{margin-top:18px;margin-bottom:22px}
@media(max-width:600px){.btn{width:100%;padding-inline:20px;text-align:center}.btn:after{top:108%;height:45%}}
@media(prefers-reduced-motion:reduce){.btn,.btn:after{transition:none}.btn:hover,.btn:active{transform:none}}

/* Portafolio: tarjetas con identidad propia */
.project-grid{gap:22px}
.project{--brand:#169ee8;--brand-soft:rgba(22,158,232,.2);--card-bg:#0c2435;isolation:isolate;min-height:430px;padding:42px;background:var(--card-bg);border-color:color-mix(in srgb,var(--brand) 42%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 50px rgba(0,0,0,.18)}
.project:before{display:none}.project:after{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 83% 17%,var(--brand-soft),transparent 31%),linear-gradient(145deg,rgba(255,255,255,.035),transparent 48%);pointer-events:none}
.project>span{color:color-mix(in srgb,var(--brand) 78%,white);font-weight:700}.project h3{max-width:72%;font-size:clamp(2.2rem,4vw,4rem)}.project p{max-width:78%;margin-bottom:4px}.project b{color:color-mix(in srgb,var(--brand) 78%,white)}
.brand-art{position:absolute;z-index:-1;top:26px;right:25px;width:205px;height:205px;border-radius:50%;border:1px solid color-mix(in srgb,var(--brand) 48%,transparent);box-shadow:0 0 0 28px color-mix(in srgb,var(--brand) 9%,transparent),0 0 0 57px color-mix(in srgb,var(--brand) 5%,transparent),0 0 65px var(--brand-soft);transition:transform .45s ease,box-shadow .45s ease}
.brand-art i{position:absolute;inset:14%;border-radius:50%;border:1px solid color-mix(in srgb,var(--brand) 28%,transparent)}.brand-art i:nth-child(2){inset:31%}.brand-art i:nth-child(3){inset:44%;background:transparent;box-shadow:none}.brand-art strong{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:1.2rem;text-shadow:0 0 16px var(--brand)}
.project:hover .brand-art{transform:rotate(8deg) scale(1.05);box-shadow:0 0 0 32px color-mix(in srgb,var(--brand) 12%,transparent),0 0 0 65px color-mix(in srgb,var(--brand) 6%,transparent),0 0 85px var(--brand-soft)}
.project-rock{--brand:#f24f93;--brand-soft:rgba(242,79,147,.28);--card-bg:linear-gradient(145deg,#fff7fa,#f8dce7);color:#7b2750;border-color:#f09abb}.project-rock:after{background:radial-gradient(circle at 84% 16%,rgba(255,255,255,.9),transparent 27%),radial-gradient(circle at 18% 78%,rgba(242,79,147,.12),transparent 34%)}.project-rock h3{font-family:Georgia,serif;font-style:italic;font-weight:500;color:#e84188}.project-rock p{color:#71465b}.project-rock b{color:#d92e77}.project-rock .brand-art strong{font-size:2rem}
.project-radar{--brand:#c9fa3c;--brand-soft:rgba(201,250,60,.2);--card-bg:#070909;color:#f5f6ef}.project-radar .brand-art{background:repeating-conic-gradient(from 0deg,rgba(201,250,60,.16) 0 1deg,transparent 1deg 45deg)}.project-radar .brand-art:after{content:"";position:absolute;left:50%;top:50%;width:48%;height:2px;transform-origin:left;background:linear-gradient(90deg,#f3ffbe,transparent);box-shadow:0 0 13px #c9fa3c}.project-radar h3{color:#f5f6ef}.project-radar h3::after{content:"INSIGHTS";display:block;color:#c9fa3c;font:700 .22em 'DM Sans';letter-spacing:.32em;margin-top:8px}.project-radar p{color:#a9afa2}
.project-pearl{--brand:#68c9ee;--brand-soft:rgba(104,201,238,.26);--card-bg:linear-gradient(145deg,#0b1e34,#173c54);color:#f4fbff}.project-pearl:after{background:radial-gradient(circle at 82% 16%,rgba(104,201,238,.24),transparent 31%),linear-gradient(165deg,transparent 55%,rgba(255,255,255,.08))}.project-pearl h3{font-family:Georgia,serif;font-weight:400;color:#dff7ff}.project-pearl p{color:#c3dce7}.project-pearl .pearl-art{border-radius:48% 52% 56% 44%;animation:pearlFloat 6s ease-in-out infinite}.project-pearl .pearl-art i{border-radius:45% 55% 48% 52%}.project-pearl .brand-art strong{font-size:2.5rem;color:#bdefff}
.project-trofe{--brand:#f5ad22;--brand-soft:rgba(245,173,34,.24);--card-bg:linear-gradient(145deg,#f9fcfe,#e8f3f8);color:#075f83;border-color:#d6b365}.project-trofe:after{background:linear-gradient(160deg,transparent 55%,rgba(245,173,34,.16)),radial-gradient(circle at 84% 18%,rgba(255,199,73,.24),transparent 28%)}.project-trofe h3{color:#006f99}.project-trofe p{color:#486572}.project-trofe b{color:#b97700}.project-trofe .brand-art{border-radius:24%;transform:rotate(45deg)}.project-trofe .brand-art i,.project-trofe .brand-art strong{transform:rotate(-45deg)}.project-trofe .brand-art strong{font-size:2rem;color:#f7b42d}.project-trofe:hover .brand-art{transform:rotate(52deg) scale(1.05)}
@keyframes pearlFloat{50%{transform:translateY(-8px) rotate(4deg)}}
@media(max-width:600px){.project{min-height:390px;padding:30px}.project h3,.project p{max-width:100%}.brand-art{width:150px;height:150px;right:12px;top:18px;opacity:.72}}
@media(prefers-reduced-motion:reduce){.project-pearl .pearl-art{animation:none}.brand-art{transition:none}}

/* Fondo limpio con cuadrícula y reflejos ambientales */
body:before{opacity:1;background-image:linear-gradient(rgba(77,151,188,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(77,151,188,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,transparent 0,#000 12%,#000 88%,transparent 100%)}
body:after{content:"";position:fixed;z-index:-1;inset:-25%;pointer-events:none;background:radial-gradient(circle at 18% 24%,rgba(8,126,187,.13),transparent 18%),radial-gradient(circle at 83% 68%,rgba(38,181,224,.09),transparent 18%);animation:ambientLights 16s ease-in-out infinite alternate}
@keyframes ambientLights{to{transform:translate3d(5%,3%,0) scale(1.08)}}

/* Marquee en dos planos: fondo difuso + banda glass frontal */
.marquee{position:relative;z-index:12;height:176px;margin-top:-88px;margin-bottom:-88px;padding:0;overflow:visible;transform:none;background:transparent;border:0;isolation:isolate;pointer-events:none}
.marquee-ribbon{position:absolute;left:-10%;width:120%;height:58px;overflow:hidden;transform-origin:center;background:linear-gradient(100deg,rgba(15,31,44,.72),rgba(17,47,65,.43),rgba(10,24,35,.7));border:1px solid rgba(134,218,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 42px rgba(0,0,0,.24),0 0 35px rgba(22,158,232,.06)}
.marquee-ribbon-front{z-index:2;top:59px;transform:rotate(-2deg);backdrop-filter:blur(15px) saturate(135%);-webkit-backdrop-filter:blur(15px) saturate(135%)}
.marquee-ribbon-back{z-index:1;top:58px;transform:rotate(2.75deg);filter:blur(6px);opacity:.45}
.marquee-track{display:flex;width:max-content;height:100%;align-items:center;gap:30px;padding:0;font:800 .9rem 'Manrope';letter-spacing:.15em;white-space:nowrap;will-change:transform;animation:marqueeLeft 31s linear infinite}
.marquee-track.reverse{color:#299ed2;font-size:1rem;letter-spacing:.16em;gap:32px;text-shadow:0 0 18px rgba(30,158,218,.45);animation:marqueeRight 39s linear infinite}
.marquee-track i{color:var(--cyan);font-style:normal;text-shadow:0 0 14px rgba(84,200,255,.75)}
.marquee-track.reverse i{font-size:1.15em;text-shadow:0 0 28px rgba(84,200,255,.9)}
@keyframes marqueeLeft{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes marqueeRight{from{transform:translateX(-50%)}to{transform:translateX(0)}}

/* Círculos perfectos, logos centrales y bruma inferior */
.brand-art,.project-pearl .pearl-art,.project-trofe .brand-art{border-radius:50%;transform:none;animation:none}
.brand-art i,.project-pearl .pearl-art i,.project-trofe .brand-art i{border-radius:50%;transform:none}
.brand-art strong{padding:37px}.brand-art strong img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 10px var(--brand-soft))}
.project-trofe .brand-art strong{transform:none}.project-trofe:hover .brand-art{transform:rotate(7deg) scale(1.05)}
.project:before{display:block;content:"";position:absolute;z-index:0;width:82%;height:155px;left:9%;right:auto;top:auto;bottom:-88px;border:0;border-radius:50%;background:var(--brand);filter:blur(42px);opacity:.38;box-shadow:0 -18px 52px color-mix(in srgb,var(--brand) 22%,transparent);pointer-events:none}
.project{overflow:hidden;filter:saturate(.82)}.project:hover{filter:saturate(1) brightness(1.04)}
.project:after{backdrop-filter:saturate(.86)}
.pearl-logo{display:flex!important;align-items:center;justify-content:center;gap:5px;padding:30px!important;color:#63c8ee!important;font-family:'DM Sans';text-shadow:0 0 12px rgba(104,201,238,.6)}
.project-pearl .brand-art i:nth-child(3){display:none}
.pearl-logo em{display:grid;width:64px;height:64px;place-items:center;font-size:3.25rem;line-height:1;transform:translate(-4px,5px) rotate(-8deg);transform-origin:center;filter:drop-shadow(0 0 8px rgba(104,201,238,.65))}
.project-rock .brand-art i:nth-child(3){display:none}
.project-rock .brand-art .rock-logo{padding:0}
.project-rock .brand-art .rock-logo img{width:64px;height:64px;object-fit:contain;object-position:center;border-radius:50%;filter:drop-shadow(0 0 8px rgba(242,79,147,.5))}
.project-trofe .brand-art i:nth-child(3){display:none}
.project-trofe .brand-art .trofe-logo{padding:0}
.project-trofe .brand-art .trofe-logo img{width:64px;height:64px;object-fit:contain;object-position:center;filter:drop-shadow(0 0 8px rgba(245,173,34,.48))}

/* Tarjetas de clientes: cristal oscuro, borde luminoso y CTA flotante */
.project{border:1px solid color-mix(in srgb,var(--brand) 34%,rgba(255,255,255,.2));box-shadow:inset 0 1px 0 rgba(255,255,255,.1),inset 0 -70px 90px rgba(2,6,11,.18),0 18px 55px rgba(0,0,0,.24);backdrop-filter:blur(8px) saturate(112%);-webkit-backdrop-filter:blur(8px) saturate(112%);transition:transform .35s ease,filter .35s ease,border-color .35s ease,box-shadow .35s ease}
.project:after{background:linear-gradient(180deg,rgba(3,7,12,.08),rgba(4,9,15,.24)),radial-gradient(circle at 83% 17%,var(--brand-soft),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.05),transparent 48%)}
.project>span,.project>h3,.project>p,.project>b{z-index:2}
.project b{align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;min-width:190px;min-height:48px;margin-top:20px;padding:0 24px;border:2px solid color-mix(in srgb,var(--brand) 75%,white);border-radius:999px;background:rgba(5,10,16,.64);color:color-mix(in srgb,var(--brand) 72%,white);box-shadow:0 0 10px color-mix(in srgb,var(--brand) 64%,transparent),0 0 27px color-mix(in srgb,var(--brand) 32%,transparent),inset 0 0 13px color-mix(in srgb,var(--brand) 18%,transparent);text-shadow:0 0 10px color-mix(in srgb,var(--brand) 55%,transparent);transition:color .3s ease,background .3s ease,box-shadow .3s ease,transform .3s ease}
.project:hover{border-color:color-mix(in srgb,var(--brand) 72%,white);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -70px 90px rgba(2,6,11,.12),0 20px 60px rgba(0,0,0,.3),0 0 24px color-mix(in srgb,var(--brand) 24%,transparent)}
.project:hover b{transform:translateY(-2px);background:color-mix(in srgb,var(--brand) 80%,white);color:#061019;box-shadow:0 0 12px color-mix(in srgb,var(--brand) 85%,white),0 0 34px color-mix(in srgb,var(--brand) 55%,transparent),inset 0 0 10px rgba(255,255,255,.45);text-shadow:none}
.project:nth-child(-n+2){z-index:1}
.project:nth-child(n+3){z-index:3;margin-top:-16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 -85px 110px rgba(2,6,11,.2),0 -16px 46px rgba(0,0,0,.3),0 24px 65px rgba(0,0,0,.3)}
.project:nth-child(n+3):hover{z-index:4;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -85px 110px rgba(2,6,11,.14),0 -18px 52px rgba(0,0,0,.34),0 26px 70px rgba(0,0,0,.34),0 0 28px color-mix(in srgb,var(--brand) 25%,transparent)}
.project-rock,.project-trofe{color:#17212a}
.project-rock b,.project-trofe b{background:rgba(255,255,255,.58)}
@media(max-width:600px){.project b{min-width:0;min-height:44px;padding:0 19px}.project:nth-child(n+3){margin-top:0}}

/* Profundidad 3D y desaparición oscura en la base */
.project-grid{perspective:1500px;perspective-origin:50% 22%}
.project{transform:perspective(1500px) rotateX(-3.25deg);transform-origin:50% 12%;padding-bottom:64px;box-shadow:inset 0 -125px 105px -38px rgba(0,0,0,.92),inset 0 -42px 45px -25px #000,0 22px 55px rgba(0,0,0,.3)}
.project:after{z-index:0;background:linear-gradient(180deg,rgba(3,7,12,.02) 0%,rgba(3,7,12,.08) 48%,rgba(1,3,6,.72) 82%,rgba(0,0,0,.97) 100%),radial-gradient(circle at 83% 17%,var(--brand-soft),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.05),transparent 48%)}
.project>span,.project>h3,.project>p,.project>b,.project .brand-art{z-index:2}
.project b{margin-top:14px;transform:translateY(-10px)}
.project:hover{transform:perspective(1500px) rotateX(-2.4deg) translateY(-6px);box-shadow:inset 0 -135px 112px -38px rgba(0,0,0,.94),inset 0 -46px 48px -25px #000,0 28px 68px rgba(0,0,0,.38),0 0 24px color-mix(in srgb,var(--brand) 24%,transparent)}
.project:hover b{transform:translateY(-13px)}
.project:nth-child(-n+2){z-index:1}
.project:nth-child(n+3){z-index:5;margin-top:-24px;transform:perspective(1500px) rotateX(-3.25deg) translateZ(18px);box-shadow:inset 0 -125px 105px -38px rgba(0,0,0,.92),inset 0 -42px 45px -25px #000,0 -24px 52px rgba(0,0,0,.48),0 30px 68px rgba(0,0,0,.38)}
.project:nth-child(n+3):hover{z-index:6;transform:perspective(1500px) rotateX(-2.4deg) translateY(-6px) translateZ(24px)}
@media(max-width:600px){.project,.project:nth-child(n+3){padding-bottom:48px;margin-top:0;transform:none}.project:hover,.project:nth-child(n+3):hover{transform:translateY(-3px)}}

/* Bordes que se desvanecen y filas superpuestas como bolsillos */
.project{border:0;overflow:hidden;box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 32%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 32%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 46%,white),inset 0 -145px 115px -35px rgba(0,0,0,.96),0 24px 62px rgba(0,0,0,.34)}
.project:after{inset:0;z-index:0;border-radius:inherit;background:linear-gradient(180deg,rgba(3,7,12,.01) 0%,rgba(3,7,12,.08) 43%,rgba(1,3,6,.78) 76%,#000 100%),radial-gradient(circle at 83% 17%,var(--brand-soft),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.05),transparent 48%)}
.project:hover{border:0;box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 44%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 44%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 68%,white),inset 0 -150px 120px -34px rgba(0,0,0,.97),0 28px 70px rgba(0,0,0,.42),0 -4px 22px color-mix(in srgb,var(--brand) 17%,transparent)}
.project:nth-child(-n+2){z-index:1;margin-bottom:0}
.project:nth-child(n+3){z-index:8;margin-top:-78px;transform:perspective(1500px) rotateX(-3.25deg) translateZ(28px);box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 34%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 34%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 62%,white),inset 0 -145px 115px -35px rgba(0,0,0,.96),0 -30px 54px rgba(0,0,0,.68),0 -7px 20px color-mix(in srgb,var(--brand) 18%,transparent),0 32px 72px rgba(0,0,0,.42)}
.project:nth-child(n+3):hover{z-index:9;transform:perspective(1500px) rotateX(-2.4deg) translateY(-7px) translateZ(34px);box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 46%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 46%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 78%,white),inset 0 -150px 120px -34px rgba(0,0,0,.97),0 -34px 60px rgba(0,0,0,.72),0 -8px 26px color-mix(in srgb,var(--brand) 25%,transparent),0 34px 76px rgba(0,0,0,.45)}
@media(max-width:600px){.project:nth-child(n+3){margin-top:0;transform:none}.project:nth-child(n+3):hover{transform:translateY(-3px)}}

/* Contraste de los CTA por tipo de tarjeta */
.project b{font-weight:800;letter-spacing:.01em}
.project-radar b,.project-pearl b{color:#f7fbff;background:rgba(2,8,13,.9);text-shadow:0 1px 2px #000,0 0 8px color-mix(in srgb,var(--brand) 72%,transparent)}
.project-rock b{color:#65133b;background:rgba(255,238,247,.96);text-shadow:none}
.project-trofe b{color:#3e2a00;background:rgba(255,246,216,.97);text-shadow:none}
.project:hover b{color:#03131c;text-shadow:none}
.project-rock:hover b{color:#4b0828;background:#ffb4d4}
.project-trofe:hover b{color:#312000;background:#ffd879}

/* Desvanecimiento real de las tarjetas, sin brillo ni oscurecimiento inferior */
.project:before{display:none}
.card-bottom-blur{position:absolute;z-index:3;left:0;right:0;bottom:0;width:100%;height:30%;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.08) 0%,rgba(0,0,0,0) 50%);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);-webkit-mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.9) 50%,transparent 100%);mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.9) 50%,transparent 100%)}
.project>span,.project>h3,.project>p,.project>b,.project .brand-art{z-index:4}
.project,.project:nth-child(n+3){padding-bottom:100px;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 70%,transparent 100%);box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 30%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 30%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 48%,white),0 22px 52px rgba(0,0,0,.22)}
.project:after{background:radial-gradient(circle at 83% 17%,var(--brand-soft),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.05),transparent 50%)}
.project:hover{box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 42%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 42%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 68%,white),0 26px 58px rgba(0,0,0,.27)}
.project:nth-child(n+3){box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 32%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 32%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 62%,white),0 -25px 48px rgba(0,0,0,.52),0 28px 62px rgba(0,0,0,.28)}
.project:nth-child(n+3):hover{box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand) 44%,transparent),inset -1px 0 0 color-mix(in srgb,var(--brand) 44%,transparent),inset 0 1px 0 color-mix(in srgb,var(--brand) 76%,white),0 -28px 52px rgba(0,0,0,.58),0 30px 66px rgba(0,0,0,.31)}
@media(max-width:600px){.project,.project:nth-child(n+3){padding-bottom:76px;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 70%,transparent 100%)}.card-bottom-blur{height:30%;backdrop-filter:blur(34px);-webkit-backdrop-filter:blur(34px)}}

.solutions-showcase{margin-top:72px;display:grid;grid-template-columns:1.25fr repeat(2,1fr);gap:1px;overflow:hidden;border:1px solid rgba(84,200,255,.16);border-radius:24px;background:rgba(84,200,255,.13)}
.solutions-showcase>*{min-height:210px;padding:30px;background:rgba(7,14,22,.94)}
.solutions-showcase .solutions-intro{grid-row:span 2;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 15% 15%,rgba(22,158,232,.2),transparent 42%),rgba(7,14,22,.95)}
.solutions-showcase h3{max-width:390px;margin:10px 0 0;font:700 clamp(1.65rem,2.45vw,2.55rem)/1.08 'Manrope'}
.solutions-showcase article{transition:background .3s ease,transform .3s ease}.solutions-showcase article:hover{background:rgba(11,31,45,.98)}
.solutions-showcase article span{color:var(--cyan);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.solutions-showcase h4{margin:20px 0 8px;font:700 1.25rem 'Manrope'}.solutions-showcase article p{margin:0;color:var(--muted);font-size:.9rem}
@media(max-width:900px){.solutions-showcase{grid-template-columns:1fr 1fr}.solutions-showcase .solutions-intro{grid-column:1/-1;grid-row:auto;min-height:230px}}
@media(max-width:600px){.solutions-showcase{grid-template-columns:1fr}.solutions-showcase .solutions-intro{grid-column:auto}.solutions-showcase>*{min-height:180px}}

.work-in-progress{margin-top:90px}.wip-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.wip-heading h3{margin:8px 0 0;font:700 clamp(2rem,4vw,3.7rem)/1.05 'Manrope';letter-spacing:-.045em}.wip-heading>span{padding:8px 14px;border:1px solid rgba(84,200,255,.32);border-radius:99px;color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.wip-card{position:relative;overflow:hidden;display:grid;grid-template-columns:190px minmax(0,1.35fr) minmax(220px,.65fr);align-items:center;gap:36px;min-height:310px;padding:44px;border:1px solid rgba(142,156,255,.25);border-radius:28px;background:radial-gradient(circle at 8% 20%,rgba(111,104,255,.24),transparent 27%),linear-gradient(135deg,rgba(242,244,255,.96),rgba(206,213,240,.9));color:#10121a;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 28px 80px rgba(0,0,0,.22)}
.wip-card:after{content:"";position:absolute;right:-8%;bottom:-45%;width:45%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(84,104,230,.18);box-shadow:0 0 0 45px rgba(84,104,230,.06),0 0 0 90px rgba(84,104,230,.035)}
.wip-brand{position:relative;z-index:1;display:grid;place-items:center;gap:16px}.wip-brand img{width:112px;height:112px;object-fit:contain}.wip-brand small{padding:7px 12px;border-radius:99px;background:#111522;color:#fff;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.wip-copy{position:relative;z-index:1}.wip-copy>span{color:#555fc4;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.wip-copy h4{margin:12px 0;font:700 clamp(2.2rem,4vw,4rem)/1 'Manrope';letter-spacing:-.05em}.wip-copy p{max-width:650px;margin:0;color:#434857}.wip-features{position:relative;z-index:1;display:flex;flex-direction:column;gap:9px}.wip-features span{padding:10px 14px;border:1px solid rgba(28,34,68,.16);border-radius:12px;background:rgba(255,255,255,.48);font-size:.82rem;font-weight:700}
@media(max-width:900px){.wip-card{grid-template-columns:140px 1fr}.wip-features{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.wip-brand img{width:96px;height:96px}}
@media(max-width:600px){.wip-heading{align-items:flex-start;flex-direction:column}.wip-card{grid-template-columns:1fr;padding:30px}.wip-brand{justify-items:start}.wip-copy h4{font-size:2.5rem}.wip-features{grid-column:auto;grid-template-columns:1fr}}

/* Topics como pills sobre títulos protagonistas */
.section-head{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.section-head .eyebrow,.wip-heading .eyebrow,.solutions-intro .eyebrow{display:inline-flex;align-items:center;width:auto;margin:0;padding:8px 14px;border:1px solid rgba(84,200,255,.28);border-radius:999px;background:rgba(10,37,54,.52);color:#8bddff;font-size:.68rem;line-height:1;letter-spacing:.11em;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 20px rgba(22,158,232,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.section-head h2{max-width:980px;font-size:clamp(2.8rem,5.4vw,5.2rem)}
.section-head>p:last-child:not(.eyebrow){margin:0;max-width:620px}
.wip-heading>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
@media(max-width:600px){.section-head{gap:14px}.section-head h2{font-size:clamp(2.45rem,12vw,3.7rem)}}

@media(prefers-reduced-motion:reduce){body:after,.marquee-track{animation:none}}

/* Footer sin separadores horizontales */
footer{border-top:0}
.footer-bottom{border-top:0;padding-top:20px}

/* Narii Online: identidad internacional sobre tarjeta oscura */
.companies .narii-card{position:relative;overflow:hidden;background:radial-gradient(circle at 86% 16%,rgba(17,132,255,.2),transparent 32%),linear-gradient(145deg,#292d34,#181c22);color:#f5f8fc;border-color:rgba(52,146,255,.3);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 22px 60px rgba(0,0,0,.22)}
.companies .narii-card:after{content:"";position:absolute;right:-70px;bottom:-100px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(30,139,255,.18);box-shadow:0 0 0 42px rgba(30,139,255,.05),0 0 0 84px rgba(30,139,255,.025);pointer-events:none}
.companies .narii-card img{position:relative;z-index:1;width:260px;filter:drop-shadow(0 0 18px rgba(17,132,255,.22))}
.companies .narii-card p{position:relative;z-index:1;max-width:480px;color:#b9c0ca}.companies .narii-card span{position:relative;z-index:1;color:#69b7ff}
.companies .maeva-card{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 85%,rgba(18,181,224,.08),transparent 30%),#101015}
.companies .maeva-card:before{content:"";position:absolute;left:-82px;bottom:-126px;width:280px;height:280px;border-radius:50%;border:1px solid rgba(84,200,255,.2);box-shadow:0 0 0 42px rgba(23,137,224,.052),0 0 0 84px rgba(17,218,218,.026),0 0 48px rgba(31,175,232,.1);pointer-events:none}
.companies .maeva-card:after{content:"";position:absolute;left:55px;bottom:11px;width:18px;height:18px;border-radius:50%;background:#54c8ff;box-shadow:0 0 18px #54c8ff;opacity:.42;pointer-events:none}
.companies .maeva-card img,.companies .maeva-card p,.companies .maeva-card span{position:relative;z-index:1}

/* Brief oscuro, integrado con la identidad general */
.brief{position:relative;overflow:hidden;background:radial-gradient(circle at 8% 12%,rgba(22,158,232,.14),transparent 28%),linear-gradient(145deg,#111923,#090e14);color:#f4f8fb;border:1px solid rgba(84,200,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 28px 80px rgba(0,0,0,.28)}
.brief:after{content:"";position:absolute;z-index:0;right:-12%;bottom:-30%;width:55%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(84,200,255,.1);box-shadow:0 0 0 55px rgba(22,158,232,.025),0 0 0 110px rgba(22,158,232,.014);pointer-events:none}
.brief-copy,.brief form{position:relative;z-index:1}.brief-copy>p{color:#aeb9c3}.brief .eyebrow{color:#86dfff}.steps span{border-color:rgba(117,197,232,.24);background:rgba(12,41,58,.42);color:#c3eefe}
.brief form{background:rgba(8,15,22,.84);border:1px solid rgba(84,200,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 22px 60px rgba(0,0,0,.25);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.brief label{color:#dce7ee}.brief input,.brief select,.brief textarea{border-color:rgba(129,178,202,.25);background:#101a24;color:#f2f7fa;box-shadow:inset 0 1px 7px rgba(0,0,0,.2);transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}
.brief input::placeholder,.brief textarea::placeholder{color:#71808c}.brief input:focus,.brief select:focus,.brief textarea:focus{outline:none;border-color:#52c9f5;background:#132330;box-shadow:0 0 0 3px rgba(82,201,245,.1),0 0 20px rgba(22,158,232,.1)}
.brief select{color-scheme:dark}.brief .check{color:#aeb9c3}.brief .form-note{color:#74838e}
.brief button.btn.primary{position:relative;z-index:5;isolation:auto;overflow:hidden;opacity:1;visibility:visible;transform:none;filter:none}
.brief button.btn.primary:after{display:none}
.brief button.btn.primary:hover,.brief button.btn.primary:focus-visible{opacity:1;visibility:visible;transform:none;filter:none;color:#fff;background:#087fba;border-color:#bceeff;box-shadow:0 0 18px rgba(123,220,255,.72),0 0 38px rgba(12,153,221,.34),inset 0 0 10px rgba(214,247,255,.28);text-shadow:0 0 7px rgba(255,255,255,.5)}

/* WhatsApp flotante con icono y pulso */
.float-wa{width:58px;height:58px;color:#fff;border:1px solid rgba(255,255,255,.55);background:linear-gradient(145deg,#2be875,#16b953);box-shadow:0 10px 30px rgba(9,110,49,.38),0 0 0 0 rgba(37,211,102,.35);animation:waPulse 2.8s ease-out infinite}
.float-wa svg{width:31px;height:31px;display:block;filter:drop-shadow(0 2px 3px rgba(0,0,0,.2));transition:transform .25s ease}
.float-wa:hover{transform:translateY(-5px) scale(1.08) rotate(-3deg);filter:brightness(1.08);box-shadow:0 15px 38px rgba(9,110,49,.46),0 0 24px rgba(37,211,102,.38)}
.float-wa:hover svg{transform:rotate(7deg) scale(1.05)}
@keyframes waPulse{0%,55%,100%{box-shadow:0 10px 30px rgba(9,110,49,.38),0 0 0 0 rgba(37,211,102,.3)}75%{box-shadow:0 10px 30px rgba(9,110,49,.38),0 0 0 13px rgba(37,211,102,0)}}
@media(prefers-reduced-motion:reduce){.float-wa{animation:none}.float-wa svg{transition:none}}

/* Hero alternativo para móvil */
.hero-visual picture{display:block;width:100%;height:100%}.hero-mobile-note{display:none}
@media(max-width:900px){.hero-visual{height:680px}.hero-visual picture,.hero-visual picture img{width:100%;height:100%}.hero-visual picture img{object-fit:cover;object-position:center}.hero-mobile-note{position:absolute;z-index:4;left:24px;top:58%;display:flex;max-width:43%;flex-direction:column;gap:9px;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.65)}.hero-mobile-note span{color:#70d4ff;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.hero-mobile-note strong{font:700 clamp(1.45rem,6vw,2.25rem)/1.03 'Manrope';letter-spacing:-.045em}.hero-visual:after{background:linear-gradient(90deg,rgba(4,10,16,.55),transparent 58%),linear-gradient(180deg,transparent 72%,var(--bg) 100%)}}
@media(max-width:600px){.hero-visual{height:620px}.hero-mobile-note{top:56%;left:20px;max-width:46%}}

/* Integración continua entre copy e imagen del hero móvil */
@media(max-width:900px){.hero-copy{z-index:4;padding-bottom:92px}.hero-visual{z-index:1;margin-top:-92px}.hero-visual:before{z-index:2;background:linear-gradient(180deg,#08080c 0%,rgba(8,8,12,.96) 8%,rgba(7,14,22,.72) 20%,rgba(7,14,22,.28) 34%,transparent 48%)}.hero-visual picture{position:relative;z-index:0}.hero-visual:after{z-index:3;background:linear-gradient(90deg,rgba(4,10,16,.58),transparent 62%),linear-gradient(180deg,transparent 68%,var(--bg) 100%)}}
@media(max-width:600px){.hero-copy{padding-bottom:78px}.hero-visual{margin-top:-78px}}

/* Móvil: una cinta cubre la unión y la otra permanece al cierre */
@media(max-width:900px){.hero-copy{padding-bottom:36px}.hero-visual{margin-top:0}.hero-visual:before{background:linear-gradient(180deg,#071019 0%,rgba(7,16,25,.12) 20%,rgba(7,16,25,.04) 68%,#08080c 100%)}.marquee-ribbon-back{top:-610px;transform:rotate(2.25deg);filter:blur(6px);opacity:.5}.marquee-ribbon-front{top:59px;transform:rotate(-2deg)}}
@media(max-width:600px){.hero-copy{padding-bottom:36px}.hero-visual{margin-top:0}.marquee-ribbon-back{top:-550px;transform:rotate(2deg)}}
.marquee,.marquee-ribbon-back,.marquee-ribbon-front{opacity:1!important;visibility:visible!important}
