@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{--ink:#14151a;--surface:#1e2027;--paper:#f4f3ef;--lime:#ceff59;--blue:#394cff;--muted:#b2b5c1;--display:'Space Grotesk',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ink);color:var(--paper);font:1rem/1.6 var(--body);overflow-x:clip}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:var(--display)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}a:focus-visible,button:focus-visible,summary:focus-visible,canvas:focus-visible{outline:3px solid var(--lime);outline-offset:5px}img{display:block;max-width:100%;height:auto}button{color:inherit}.skip{position:fixed;z-index:30;top:1rem;left:1rem;padding:.7rem 1rem;background:var(--paper);color:var(--ink);transform:translateY(-200%)}.skip:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.2rem 5%;border-bottom:1px solid #ffffff1b;background:#14151af2;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:.75rem}.brand img{width:104px;height:auto}.brand>span{font-size:.75rem;letter-spacing:.16em;writing-mode:horizontal-tb;line-height:1}.header nav{display:flex;align-items:center;gap:2.2rem;font-size:.9375rem;font-weight:500}.header nav>a:not(.nav-contact):hover{color:var(--lime)}.nav-contact{border:1px solid #ffffff55;padding:.55rem 1rem;border-radius:99px;display:flex;gap:2rem;transition:background .2s,color .2s}.nav-contact:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}.hero{padding:1.5rem 5% 0;display:grid;grid-template-columns:1fr 1.15fr;column-gap:1rem;max-width:1720px;margin:auto;align-items:center}.hero-copy{padding:2.5rem 0 2rem;position:relative;z-index:2}.eyebrow{font-size:.75rem;letter-spacing:.12em;font-weight:600}.hero h1{font-size:clamp(4rem,7.4vw,7.6rem);line-height:.96;letter-spacing:-.07em;font-weight:700;margin:1.4rem 0}.hero h1 span{color:var(--lime);display:inline-block;transform-origin:0 70%;animation:word-in .8s cubic-bezier(.2,.8,.2,1) both}.hero-intro{font-size:1.125rem;color:var(--muted);line-height:1.5}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.5rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.8rem;padding:.85rem 1.15rem;background:var(--lime);color:var(--ink);border-radius:8px;font-weight:700;font-size:.9375rem;box-shadow:0 4px 0 #799932;transition:transform .18s,box-shadow .18s}.button:hover{transform:translateY(-3px);box-shadow:0 7px 0 #799932}.button:active{transform:translateY(3px);box-shadow:0 1px 0 #799932}.button>span{font-size:1.4rem;line-height:1}.secondary{font-size:.9375rem;border-bottom:1px solid #ffffff55;padding-block:.3rem}.secondary:hover{color:var(--lime);border-color:var(--lime)}.playground{position:relative;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-top:.5rem}.scene-label{display:flex;align-items:center;justify-content:space-between;padding:.4rem 1rem 0;font-size:.75rem;letter-spacing:.08em;color:#aeb2c2;gap:1rem;position:relative;z-index:2}.scene-label button{background:transparent;border:1px solid #ffffff2b;border-radius:99px;letter-spacing:0;font-size:.75rem;padding:.3rem .6rem;display:flex;gap:.4rem;align-items:center;min-height:36px;min-width:75px;justify-content:center}.scene-label button:hover{color:white;border-color:#ffffff77}.scene{height:clamp(330px,26vw,430px);position:relative;width:100%;min-width:0}.scene canvas{width:100%;height:100%;display:block;position:relative;z-index:1;touch-action:pan-y;cursor:grab}.scene canvas:active{cursor:grabbing}.scene-fallback{position:absolute;inset:8%;width:84%;height:84%;object-fit:cover;border-radius:24px;opacity:.9}.scene-ready .scene-fallback{display:none}.scene-controls{display:flex;justify-content:center;gap:.65rem;position:relative;z-index:2;margin-top:-.5rem}.scene-controls[hidden]{display:none}.scene-controls button{background:#292c36;border:1px solid #ffffff22;min-height:44px;padding:.6rem .95rem;border-radius:99px;font-size:.8125rem;font-weight:500;transition:background .15s,transform .15s}.scene-controls button:first-child{background:var(--lime);color:var(--ink);border-color:var(--lime)}.scene-controls button:hover{transform:translateY(-2px);background:#3b4050}.scene-controls button:first-child:hover{background:#e0ff98}.scene-controls button:active{transform:scale(.97)}.scene-controls button:disabled{opacity:.55;transform:none}.scene-hint{min-height:1.5rem;font-size:.75rem;color:#9097a9;text-align:center;margin:.6rem 0 .5rem}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 0 1.3rem;margin-top:1.5rem;border-top:1px solid #ffffff25}.hero-bottom>a{display:flex;align-items:center;gap:1rem;font-size:.8125rem}.tiny-slurp{font-family:var(--display);font-weight:700;font-size:1.3rem;letter-spacing:-.07em;color:var(--lime);transform:rotate(-6deg)}.hero-bottom>a:hover{color:var(--lime)}.hero-note{font-size:.75rem;letter-spacing:.07em;color:#999eae}.section-pad{padding:4rem max(5%,calc((100vw - 1550px)/2))}.game-section{background:var(--paper);color:var(--ink);border-radius:26px 26px 0 0;position:relative;z-index:3}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.status{font-size:.75rem;letter-spacing:.05em;border:1px solid #14151a44;border-radius:99px;padding:.3rem .75rem}.game-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:3rem;align-items:center}.game-copy h2{font-weight:700;font-size:clamp(5rem,9vw,9rem);line-height:1;letter-spacing:-.09em;transform:rotate(-3deg);transform-origin:left bottom;margin-bottom:1.1rem}.game-copy h2>span{color:var(--blue)}.game-copy h3{font-size:clamp(1.8rem,2.7vw,2.7rem);line-height:1.08;letter-spacing:-.055em}.game-copy>p{max-width:28rem;color:#555966;line-height:1.6;margin-top:1.2rem;font-size:1rem}.game-words{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.3rem}.game-words span{font-size:.75rem;letter-spacing:.05em;padding:.25rem .6rem;border:1px solid #14151a33;border-radius:99px}.text-link{display:inline-block;margin-top:1.6rem;font-size:.9375rem;border-bottom:1px solid #14151a55;padding-bottom:.3rem}.text-link>span{margin-left:1.4rem}.game-art{position:relative;perspective:900px;transform:rotate(2deg);transition:transform .4s}.game-art:hover{transform:rotate(0deg)}.game-art>img{border-radius:18px;width:100%;aspect-ratio:1.4;object-fit:cover;box-shadow:0 18px 30px #14151a24}.art-caption{position:absolute;bottom:.8rem;left:1rem;right:1rem;font-size:.75rem;color:#fff;text-shadow:0 1px 5px #14151a;letter-spacing:.02em}.game-ticket{position:absolute;right:-.5rem;top:-1rem;background:var(--lime);color:var(--ink);padding:.8rem 1rem;border:1px solid var(--ink);box-shadow:3px 4px 0 var(--ink);transform:rotate(7deg);display:flex;flex-direction:column;gap:.15rem}.game-ticket>span{font-size:.75rem;font-weight:700;letter-spacing:.04em}.game-ticket>strong{font:700 1.7rem/1.1 var(--display);letter-spacing:-.06em}.loop{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding-top:3rem;scroll-margin-top:2rem}.loop details{border-top:1px solid #14151a44}.loop summary{font-size:1rem;font-weight:600;gap:.7rem;align-items:start}.loop summary>span:first-child{font-size:.75rem;color:#646877;padding-top:.25rem}.loop p{font-size:.9375rem;line-height:1.6;color:#555966;padding:0 0 1rem 1.7rem}.release-note{font-size:.75rem;color:#666a77;margin-top:1.2rem}.game-section a:focus-visible,.game-section summary:focus-visible{outline-color:var(--blue)}details summary{list-style:none;cursor:pointer;display:flex;align-items:center;padding:1.15rem 0;min-height:56px}summary::-webkit-details-marker{display:none}.plus{margin-left:auto;display:inline-block;transition:transform .2s;font-size:1.1rem;line-height:1.5}details[open] .plus{transform:rotate(45deg)}details[open]>p{animation:detail-in .25s ease-out}.services{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-block:4.5rem 5rem}.services-title h2{font-size:clamp(2.5rem,4.2vw,4.5rem);line-height:1.02;letter-spacing:-.065em;margin:1.5rem 0}.services-title h2>span{color:var(--lime)}.services-title>p:last-child{font-size:1rem;line-height:1.7;max-width:26rem;color:var(--muted)}.service-list{align-self:center}.service-list details{border-top:1px solid #ffffff30}.service-list details:last-child{border-bottom:1px solid #ffffff30}.service-list summary{font:500 clamp(1.1rem,1.8vw,1.6rem)/1.3 var(--display);padding-block:1.35rem;gap:1.2rem;letter-spacing:-.02em}.service-list summary>span:first-child{font:400 .75rem var(--body);color:#a9aebc}.service-list details>p{font-size:1rem;color:var(--muted);line-height:1.6;padding:0 1rem 1.5rem 2.25rem}.service-list summary:hover{color:var(--lime)}.contact{background:var(--blue);padding-block:3rem 3.5rem}.contact-row{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin:1.5rem 0}.contact h2{font-size:clamp(3.5rem,7.3vw,7rem);line-height:.97;letter-spacing:-.065em}.contact h2 span{color:var(--lime)}.contact-arrow{font:400 clamp(4rem,9vw,8rem)/1 var(--body);width:1.25em;height:1.25em;display:grid;place-items:center;border:1px solid #ffffff55;border-radius:50%;transition:transform .3s,background .3s,color .3s}.contact-arrow:hover{transform:rotate(10deg);background:var(--lime);color:var(--ink)}.email{display:inline-block;font-size:clamp(1.25rem,2.3vw,2rem);letter-spacing:-.04em;border-bottom:1px solid #ffffff88;overflow-wrap:anywhere}.contact>p:last-child{margin-top:.8rem;font-size:.9375rem;color:#e1e5ff}.footer{padding:2rem 5% 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.footer>p{font-size:.9375rem;color:var(--muted)}.footer>a:last-of-type{font-size:.8125rem}.footer-legal{display:flex;justify-content:space-between;gap:2rem;width:100%;padding-top:1.3rem;border-top:1px solid #ffffff1f;font-size:.75rem;color:#9399a9}.is-paused *, .is-paused *::before,.is-paused *::after{animation-play-state:paused!important}.reveal-ready{opacity:0;transform:translateY(25px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}
@keyframes word-in{from{opacity:0;transform:translateY(25px) rotate(4deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes detail-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.hero{padding-top:2rem}.hero-copy{padding-block:3rem}.scene{height:500px}}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(3.7rem,8vw,5.5rem)}.hero-copy{padding:2rem 0}.hero-actions{gap:1.25rem}.hero-note{display:none}.scene{height:360px}.game-layout{gap:2rem}.game-copy h2{font-size:6rem}.services{gap:3rem}.loop{gap:1.3rem}.loop summary{font-size:.9375rem}.loop summary>.plus{font-size:1rem}}
@media(max-width:700px){html{scroll-padding-top:1rem}.header{padding:1rem 5%;gap:1rem}.brand img{width:87px}.brand>span{font-size:.75rem;letter-spacing:.12em}.header nav{gap:1rem;font-size:.8125rem}.nav-contact{padding:.4rem .7rem;gap:.5rem}.header nav>a[href='#servicios']{display:none}.hero{grid-template-columns:1fr;padding-top:1.25rem;gap:0}.hero-copy{padding:0}.hero h1{font-size:clamp(3.5rem,13.5vw,5.3rem);margin:1rem 0 .8rem;line-height:.95;letter-spacing:-.07em}.hero h1 br{display:initial}.hero h1>span{display:inline-block}.hero-intro{font-size:1rem;line-height:1.45}.hero-intro br{display:none}.hero-actions{margin-top:1.25rem;gap:1rem}.hero-actions .button{font-size:.875rem;padding:.7rem .9rem;gap:1.3rem}.secondary{font-size:.875rem}.playground{padding-top:1.5rem}.scene-label{padding-inline:.1rem;font-size:.75rem;letter-spacing:.08em}.scene{height:270px;margin-top:-.5rem}.scene-controls{margin-top:-.8rem;gap:.5rem}.scene-controls button{font-size:.75rem;padding:.5rem .85rem}.scene-hint{font-size:.75rem;margin:.45rem 0 .25rem}.hero-bottom{margin-top:.7rem;padding-block:.85rem}.hero-bottom>a{font-size:.75rem;gap:.65rem}.hero-bottom>a>span:nth-child(2){max-width:14rem;line-height:1.3}.tiny-slurp{font-size:1.2rem}.section-pad{padding:2.5rem 5%}.game-section{border-radius:18px 18px 0 0}.section-heading{margin-bottom:1.2rem;align-items:center;gap:.8rem}.section-heading .eyebrow{font-size:.75rem;max-width:8rem}.status{font-size:.75rem;padding:.3rem .55rem;white-space:nowrap}.game-layout{grid-template-columns:1fr;gap:2rem}.game-copy h2{font-size:5.8rem;margin-bottom:.7rem}.game-copy h3{font-size:2rem}.game-copy>p{max-width:none;margin-top:1rem}.game-words{margin-top:1rem}.game-art{margin:.4rem .25rem .5rem;transform:rotate(1deg)}.game-art>img{aspect-ratio:1.4;border-radius:12px}.game-ticket{right:.2rem;top:-.65rem;padding:.55rem .7rem}.game-ticket>strong{font-size:1.35rem}.game-ticket>span{font-size:.75rem}.art-caption{font-size:.75rem;left:.65rem;bottom:.6rem}.text-link{margin-top:1.25rem}.loop{grid-template-columns:1fr;gap:0;padding-top:1.4rem}.loop summary{font-size:1rem;padding:1rem 0}.loop p{padding-left:1.7rem}.release-note{margin-top:1rem}.services{grid-template-columns:1fr;gap:2rem;padding-block:3rem}.services-title h2{font-size:clamp(2.5rem,9vw,3.7rem);margin:1.1rem 0}.service-list summary{font-size:1.2rem;padding-block:1.2rem;gap:.9rem}.service-list details>p{padding-left:1.9rem}.contact{padding-block:2.5rem}.contact h2{font-size:3.7rem}.contact-row{gap:1rem}.contact-arrow{font-size:4.2rem;flex-shrink:0}.email{font-size:clamp(1.1rem,5vw,1.4rem)}.contact>p:last-child{font-size:.875rem}.footer{padding:1.75rem 5% 1rem;gap:1.3rem}.footer>p{display:none}.footer-legal{flex-direction:column;gap:.5rem;font-size:.75rem;padding-top:1rem}}
@media(max-width:370px){.header nav{gap:.7rem}.hero-actions{gap:.85rem}.hero-actions .button{gap:.8rem;font-size:.8125rem}.secondary{font-size:.8125rem}.scene{height:255px}.hero h1{font-size:3.5rem}.hero-bottom>a{font-size:.75rem}.contact h2{font-size:3.3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
