:root{--paper:#fff7fa;--ink:#25101d;--pink:#ff0064;--fuchsia:#d7007f;--blush:#ffd6e6;--plum:#65003f;--yellow:var(--blush);--blue:var(--plum);--line:rgba(37,16,29,.24);--muted:#6d4559;--display:"Syne",Arial,sans-serif;--body:"DM Sans",Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.5 var(--body);overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:999;background:var(--ink);color:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:78px;padding:0 clamp(1.1rem,3vw,3rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid transparent;transition:background .35s,border-color .35s}.site-header.is-scrolled{background:rgba(244,241,234,.9);border-color:var(--line);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:.7rem;font-family:var(--display);font-weight:700}.brand-mark{display:grid;place-items:center;width:43px;aspect-ratio:1;border:1.5px solid;border-radius:50%;font-size:.8rem;transition:transform .55s var(--ease),background .3s}.brand:hover .brand-mark{transform:rotate(20deg);background:var(--pink)}.brand-name{font-size:1.04rem}.main-nav{display:flex;align-items:center;gap:clamp(1.2rem,2.8vw,3.2rem);font-size:.95rem;font-weight:500}.main-nav a{position:relative}.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-.3rem;height:2px;background:var(--pink);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}.main-nav a:hover::after,.main-nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}.nav-toggle{display:none;width:46px;height:46px;border:0;background:transparent;padding:12px}.nav-toggle span{display:block;height:2px;background:currentColor;margin:6px 0;transition:transform .3s}
.hero{min-height:100svh;padding:112px clamp(1.1rem,3vw,3rem) 0;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.hero-kicker{display:flex;justify-content:space-between;border-top:1px solid;padding-top:.65rem;font-size:.76rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.hero-title{font:700 clamp(4.1rem,14.5vw,13.8rem)/.74 var(--display);letter-spacing:-.075em;text-transform:uppercase;padding:clamp(3rem,8vh,7rem) 0}.hero-title .line{display:block;overflow:hidden}.hero-title .line>span{display:block;transform:translateY(110%);animation:title-in 1.05s var(--ease) forwards}.hero-title .line-accent{text-align:right}.hero-title .line-accent>span{animation-delay:.12s}.hero-dot{color:var(--pink)}.hero-bottom{display:grid;grid-template-columns:minmax(280px,570px) auto;align-items:end;justify-content:space-between;gap:2rem;padding-bottom:2rem}.hero-bottom p{font-size:clamp(1.05rem,1.65vw,1.4rem);line-height:1.25}.round-link{display:grid;place-items:center;width:76px;aspect-ratio:1;border-radius:50%;color:#fff;background:var(--ink);font-size:2rem;transition:background .3s,transform .4s var(--ease)}.round-link:hover{background:var(--pink);transform:rotate(-12deg)}.ticker{margin:0 calc(clamp(1.1rem,3vw,3rem)*-1);overflow:hidden;background:var(--yellow);border-block:1px solid;padding:.45rem 0}.ticker-track{display:flex;width:max-content;font:600 clamp(1.3rem,2vw,2rem)/1 var(--display);animation:ticker 22s linear infinite}.ticker-track span{white-space:nowrap}
.projects,.services{padding:clamp(6rem,11vw,10rem) clamp(1.1rem,3vw,3rem)}.section-head{display:grid;grid-template-columns:1fr 2.1fr 1fr;gap:2rem;align-items:end;margin-bottom:clamp(3rem,6vw,5.5rem)}.section-head h2{font:600 clamp(3.4rem,8vw,8.5rem)/.85 var(--display);letter-spacing:-.06em}.section-head>p:last-child{color:var(--muted);max-width:22rem}.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.4rem}.filter-btn{border:1px solid var(--ink);background:transparent;border-radius:100px;padding:.55rem 1rem;font-size:.84rem;cursor:pointer;transition:background .25s,color .25s}.filter-btn:hover,.filter-btn.is-active{background:var(--ink);color:var(--paper)}.filter-btn:focus-visible{outline:3px solid var(--pink);outline-offset:2px}.projects-list{border-top:1px solid}.project-card{position:relative;border-bottom:1px solid;overflow:hidden}.project-link{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.75fr);min-height:clamp(240px,30vw,430px)}.project-visual{position:relative;display:flex;align-items:flex-end;overflow:hidden;background:var(--project-color);isolation:isolate}.project-visual::before{content:attr(data-index);position:absolute;top:-.22em;right:-.02em;z-index:-1;font:700 clamp(11rem,27vw,29rem)/1 var(--display);letter-spacing:-.12em;color:rgba(16,16,16,.12)}.project-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 45%,rgba(255,255,255,.2) 45% 47%,transparent 47%);transform:translateX(-100%);transition:transform .8s var(--ease)}.project-card:hover .project-visual::after{transform:translateX(100%)}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.project-card:hover .project-image{transform:scale(1.035)}.project-monogram{padding:clamp(1rem,3vw,2.4rem);font:700 clamp(3rem,8vw,8.5rem)/.8 var(--display);letter-spacing:-.08em;text-transform:uppercase}.project-info{display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(1.3rem,3vw,2.8rem);background:var(--paper)}.project-top{display:flex;justify-content:space-between;gap:1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.project-info h3{font:600 clamp(1.8rem,3vw,3.6rem)/.95 var(--display);letter-spacing:-.045em}.project-info p{color:var(--muted);max-width:30rem;margin-top:1rem}.project-arrow{align-self:flex-end;font-size:2rem;transition:transform .35s var(--ease)}.project-card:hover .project-arrow{transform:translate(7px,-7px)}
.about{display:grid;grid-template-columns:1fr 1fr;min-height:100svh;background:var(--ink);color:var(--paper)}.about-photo-wrap{position:relative;min-height:620px;overflow:hidden}.about-photo{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.06);transition:filter .6s}.about-photo-wrap:hover .about-photo{filter:grayscale(0)}.photo-label{position:absolute;z-index:1;top:1.5rem;left:1.5rem;background:var(--yellow);color:var(--ink);border-radius:100px;padding:.65rem 1rem;font-size:.82rem;transform:rotate(-4deg)}.about-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,7rem)}.about-copy h2{font:600 clamp(2.5rem,5vw,6rem)/.94 var(--display);letter-spacing:-.055em;margin:2.4rem 0 1.8rem}.about-role{color:var(--pink);font-weight:600;margin-bottom:1rem}.about-bio{color:#c9c5bd;font-size:clamp(1rem,1.3vw,1.2rem);max-width:42rem}.about-meta{display:flex;flex-wrap:wrap;gap:1rem 2rem;border-top:1px solid rgba(255,255,255,.25);margin-top:3rem;padding-top:1.2rem;font-size:.86rem}.about-meta a{text-decoration:underline;text-underline-offset:4px}
.services{background:var(--blue);color:#fff}.services .section-head>p:last-child{color:#fff}.services-list{border-top:1px solid rgba(255,255,255,.7)}.service-card{display:grid;grid-template-columns:90px 1fr minmax(250px,.7fr);gap:2rem;align-items:center;padding:1.8rem 0;border-bottom:1px solid rgba(255,255,255,.7);transition:padding .4s var(--ease),background .3s}.service-card:hover{padding-inline:1.2rem;background:rgba(0,0,0,.12)}.service-index{font:500 1rem var(--display)}.service-title{font:600 clamp(1.5rem,3vw,3.2rem)/1 var(--display);letter-spacing:-.04em}.service-desc{color:rgba(255,255,255,.78)}
.contact{min-height:90svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6rem 1.1rem;background:var(--pink)}.contact h2{font:600 clamp(3.4rem,10vw,10rem)/.82 var(--display);letter-spacing:-.075em;margin:2rem 0}.contact h2 em{font-weight:500;color:var(--paper)}.contact-copy{font-size:clamp(1rem,1.5vw,1.3rem);max-width:36rem}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:2.2rem}.contact-link{display:inline-flex;align-items:center;gap:.6rem;border:1px solid;border-radius:100px;padding:.8rem 1.2rem;font-weight:600;transition:background .25s,color .25s,transform .3s}.contact-link:hover{background:var(--ink);color:#fff;transform:translateY(-3px)}.contact-link .ico{width:18px}.load-error{padding:3rem 0;color:var(--muted)}
.site-footer{display:flex;justify-content:space-between;gap:1rem;padding:1.4rem clamp(1.1rem,3vw,3rem);background:var(--ink);color:var(--paper);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.reveal{opacity:0;transform:translateY(34px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.cursor{position:fixed;z-index:200;width:76px;height:76px;margin:-38px 0 0 -38px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);pointer-events:none;transform:translate3d(-200px,-200px,0) scale(.25);opacity:0;transition:opacity .2s,transform .16s ease-out;font-size:.7rem;font-weight:700;mix-blend-mode:difference}.cursor.is-visible{opacity:1}.cursor.is-project{transform:translate3d(var(--cursor-x),var(--cursor-y),0) scale(1)}
@keyframes title-in{to{transform:none}}@keyframes ticker{to{transform:translateX(-50%)}}
.section-head>*,.project-link>*,.project-info,.about-copy,.service-card>*{min-width:0}.project-info h3,.project-info p,.service-title,.service-desc,.contact-link{overflow-wrap:anywhere}.project-image{min-width:100%}.project-video{display:block;background:var(--ink)}
@media(max-width:820px){.brand-name{display:none}.nav-toggle{display:block;position:relative;z-index:3}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{position:fixed;top:0;left:0;width:100vw;height:100dvh;z-index:2;background:var(--blush);flex-direction:column;align-items:center;justify-content:center;gap:1.35rem;padding:5rem 1.5rem;font:600 clamp(1.65rem,7vw,2.75rem)/1.05 var(--display);text-align:center;transform:translateY(-105%);transition:transform .55s var(--ease);overflow-y:auto}.main-nav.is-open{transform:translateY(0)}.main-nav a{display:block;width:min(100%,420px);padding:.35rem 0}.section-head{grid-template-columns:1fr}.section-head h2{order:-1}.project-link{grid-template-columns:1fr}.project-visual{min-height:56vw}.project-info{min-height:260px}.about{grid-template-columns:1fr}.about-photo-wrap{min-height:80vw}.service-card{grid-template-columns:54px 1fr}.service-desc{grid-column:2}.hero-bottom{grid-template-columns:1fr auto;gap:1.2rem}}
@media(max-width:560px){.hero-kicker span:last-child{display:none}.hero-title{font-size:clamp(3.8rem,21vw,7rem);padding-block:4rem}.hero-bottom{grid-template-columns:1fr auto}.round-link{width:60px}.project-info{padding:1.2rem}.about-copy{padding:4.5rem 1.2rem}.site-footer{flex-direction:column}.site-footer span:nth-child(2){display:none}}
@media(max-width:360px){.site-header,.hero,.projects,.services{padding-left:.9rem;padding-right:.9rem}.hero{padding-top:96px}.hero-title{font-size:19vw}.filter-btn{font-size:.76rem;padding:.45rem .72rem}.project-info h3{font-size:1.65rem}.contact h2{font-size:18vw}.service-card{grid-template-columns:38px 1fr;gap:1rem}}
@media(hover:none),(pointer:coarse){.cursor{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.hero-title .line>span{transform:none}}

/* Secciones IA y ecommerce */
.ai-lab,.ecommerce{padding:clamp(6rem,11vw,10rem) clamp(1.1rem,3vw,3rem)}.ai-lab{background:var(--blush)}.ai-feature{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.75fr);min-height:clamp(360px,50vw,720px);background:var(--ink);color:var(--paper);overflow:hidden}.ai-feature video{width:100%;height:100%;min-height:360px;object-fit:cover}.ai-feature>div{display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(1.5rem,4vw,4rem)}.ai-feature h3{font:600 clamp(2.2rem,4vw,4.8rem)/.92 var(--display);letter-spacing:-.05em;margin:1.2rem 0}.ai-feature p{color:rgba(255,255,255,.72);max-width:30rem}.commerce-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--ink);border:1px solid var(--ink)}.commerce-card{min-height:390px;padding:clamp(1.4rem,3vw,2.8rem);display:flex;flex-direction:column;background:var(--blush);transition:background .3s,transform .4s var(--ease)}.commerce-card:nth-child(2){background:#ff94bc}.commerce-card--catalog{background:var(--pink);color:#fff}.commerce-card:hover{transform:translateY(-8px)}.commerce-type{font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.commerce-card h3{font:600 clamp(2rem,3.3vw,3.8rem)/.95 var(--display);letter-spacing:-.05em;margin:auto 0 1rem}.commerce-card p{color:inherit;opacity:.72;max-width:24rem}.commerce-status{align-self:flex-start;margin-top:2rem;border:1px solid currentColor;border-radius:100px;padding:.5rem .85rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}@media(max-width:900px){.ai-feature{grid-template-columns:1fr}.ai-feature video{aspect-ratio:16/9;min-height:0}.commerce-grid{grid-template-columns:1fr}.commerce-card{min-height:300px}}@media(max-width:560px){.ai-lab,.ecommerce{padding-left:1.1rem;padding-right:1.1rem}.commerce-card{min-height:260px}}
