:root{color-scheme:dark;--ease:cubic-bezier(.16,1,.3,1)}html{scroll-behavior:smooth;scroll-padding-top:120px;scrollbar-color:#ff2a14 #16161a}body{caret-color:#ff2a14}h1,h2,h3{text-wrap:balance}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #ff2a14;outline-offset:5px}::selection{background:#ff2a14;color:#080808}#hero{min-height:calc(100svh - 80px)}#hero h1{font-size:clamp(2.5rem,5.6vw,5rem);max-width:1050px}#hero h1 .text-white-chalk\/40{color:#aaa6a1}#hero>div:nth-child(3){background:linear-gradient(90deg,rgba(8,8,8,.8),rgba(8,8,8,.15) 70%)}#hero-threejs-container{opacity:.8}#custom-cursor-dot{display:none}#cursor-viewport{opacity:.65}#nosotros h2{line-height:1.12}#nosotros .text-vermilion-flame{color:#c92310}.reveal-ready{opacity:0;transform:translateY(36px);transition:opacity .75s var(--ease),transform .95s var(--ease);transition-delay:var(--delay,0ms)}.reveal-ready.is-visible{opacity:1;transform:none}.reveal-image{clip-path:inset(8% 0 8% 0);transform:translateY(40px)}.reveal-image.is-visible{clip-path:inset(0);transition:clip-path 1.1s var(--ease),opacity .9s var(--ease),transform 1.1s var(--ease)}.reveal-heading{transform:translateY(28px);filter:blur(5px)}.reveal-heading.is-visible{filter:blur(0);transition:filter .7s var(--ease),opacity .75s var(--ease),transform .9s var(--ease)}#servicios .cursor-row{position:relative;transition:background .25s ease,padding .4s var(--ease)}#servicios .cursor-row:hover{padding-left:30px}#proyectos article{transition:border-color .3s ease}#proyectos article:hover{border-color:#ff2a14}#proyectos article img{transition:transform 1.1s var(--ease)}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;background:#ff2a14;z-index:100;transform:scaleX(0);transform-origin:left;pointer-events:none}.site-footer{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:35px 5% 100px;border-top:1px solid #ffffff20;font-size:12px;color:#a09d98}.site-footer a{color:#f8f7f4}.menu-toggle{display:none}.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:#f8f7f4;color:#080808;padding:12px}.skip-link:focus{top:12px}#mobile-nav{position:absolute;top:100%;left:0;right:0;background:#16161a;padding:24px;border-bottom:1px solid #ffffff20}#mobile-nav:not([hidden]){display:grid;gap:24px}input,select,textarea{font-size:16px!important}#contacto a[href^="mailto"]{overflow-wrap:anywhere}#hero .relative.z-20.my-auto{animation:hero-enter 1s var(--ease) both}@keyframes hero-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@media(max-width:1023px){header nav.md\:flex{gap:18px}header .gap-4{gap:10px}}@media(max-width:767px){.menu-toggle{display:flex;gap:12px;align-items:center;font:11px 'Space Mono',monospace;padding:12px}header>div{padding:8px 16px!important}header svg{height:56px!important}header a[href="#contacto"]{display:none}header .gap-4{gap:4px}#sound-toggle-btn{padding:9px;font-size:9px}#hero{padding-top:24px;min-height:820px}#hero h1{font-size:clamp(2.4rem,9.1vw,4rem);line-height:1.06}#hero-threejs-container{opacity:.45}#hero>div:last-child>div:last-child{flex-wrap:wrap;gap:10px;font-size:9px}#hero>div:nth-child(3){background:linear-gradient(90deg,rgba(8,8,8,.75),rgba(8,8,8,.3))}section:not(#hero){padding-top:72px!important;padding-bottom:72px!important}#servicios .flex.items-center.gap-8{gap:16px}#servicios .flex.items-center.gap-3{flex-wrap:wrap}#proyectos article>div:last-child{padding:24px}#proyectos article .flex.justify-between{flex-wrap:wrap;gap:8px}#contacto .p-8{padding:22px}#contacto .flex.justify-between{gap:15px;flex-wrap:wrap}.fixed.bottom-8.right-8{bottom:18px;right:16px}.fixed.bottom-8.right-8 a{padding:12px 16px}.fixed.bottom-8.right-8 .font-mono{font-size:10px}.site-footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0ms!important}.reveal-ready{opacity:1;transform:none;filter:none;clip-path:none}#cursor-viewport{display:none}}

@media(max-width:767px){#mobile-nav a[href="#contacto"]{display:block}#hero>div:last-child>div:last-child{font-size:11px}.fixed.bottom-8.right-8 .font-mono{font-size:11px}#sound-toggle-btn{font-size:11px}}
