@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Montserrat:wght@700;800;900&family=Space+Mono:wght@400;700&display=swap);
:root{--color-bg-white:#fff;--color-bg-offwhite:#fafafa;--color-text-black:#0f0f0f;--color-accent-vinotinto:#7b1113;--color-accent-vinotinto-hover:#5a0c0e;--color-gray-light:#f3f4f6;--color-gray-medium:#9ca3af;--color-gray-dark:#4b5563;--font-heading:"Montserrat",sans-serif;--font-body:"Inter",sans-serif;--font-accent:"Space Mono",monospace;--section-padding:120px 0;--mobile-padding:60px 0;--container-padding:5vw;--max-width:1440px;--transition-smooth:all 0.4s cubic-bezier(0.25,1,0.5,1);--transition-fast:all 0.2s ease-in-out}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg-white);font-family:var(--font-body);font-size:16px;line-height:1.6;overflow-x:hidden}body,h1,h2,h3,h4,h5,h6{color:var(--color-text-black)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:800;letter-spacing:-.02em;line-height:1.1;text-transform:uppercase}p{color:var(--color-gray-dark);font-family:var(--font-body);font-weight:400;margin-bottom:1.5rem}a{color:inherit;text-decoration:none;transition:var(--transition-fast)}ul{list-style:none}img{display:block;height:auto;max-width:100%}.text-vinotinto{color:var(--color-accent-vinotinto)}.text-black{color:var(--color-text-black)}.text-gray{color:var(--color-gray-medium)}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}.font-accent{font-family:var(--font-accent)}.container{margin:0 auto;max-width:var(--max-width);padding:0 var(--container-padding);width:100%}.omni-header{backdrop-filter:blur(12px);background:hsla(0,0%,100%,.96);border-bottom:1px solid rgba(0,0,0,.05);left:0;padding:24px 0;position:sticky;top:0;transition:var(--transition-fast);width:100%;z-index:1000}.omni-header .container{align-items:center;display:flex;justify-content:space-between}.omni-header .logo{color:var(--color-text-black);font-family:var(--font-heading);font-size:26px;font-weight:800;letter-spacing:-.04em}.omni-header .logo span{color:var(--color-accent-vinotinto)}.desktop-nav ul{align-items:center;display:flex;gap:48px}.nav-link{color:var(--color-text-black);font-family:var(--font-accent);font-size:12px;font-weight:700;letter-spacing:.15em;padding-bottom:4px;position:relative;text-transform:uppercase}.nav-link:after{background-color:var(--color-accent-vinotinto);bottom:0;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link:hover{color:var(--color-accent-vinotinto)}.nav-link:hover:after{width:100%}.header-actions{gap:24px}.header-actions,.lang-switcher{align-items:center;display:flex}.lang-switcher{gap:8px;margin-right:12px}.lang-option{align-items:center;cursor:pointer;display:flex;justify-content:center}.lang-flag,.lang-option{transition:var(--transition-fast)}.lang-flag{border-radius:2px;height:14px;-o-object-fit:cover;object-fit:cover;opacity:.5;width:20px}.lang-option.active .lang-flag,.lang-option:hover .lang-flag{opacity:1}.lang-option.active{cursor:default}.lang-divider{background-color:var(--color-gray-light);height:12px;width:1px}.header-cta{background-color:var(--color-text-black);border-radius:40px;color:var(--color-bg-white);display:inline-block;font-family:var(--font-accent);font-size:11px;font-weight:700;letter-spacing:.1em;padding:12px 28px;text-transform:uppercase;transition:var(--transition-smooth)}.header-cta:hover{background-color:var(--color-accent-vinotinto);box-shadow:0 4px 12px rgba(123,17,19,.2);color:var(--color-bg-white);transform:translateY(-2px)}.menu-toggle{background:none;border:none;cursor:pointer;display:none;height:20px;padding:0;position:relative;width:30px}.hamburger,.hamburger:after,.hamburger:before{background-color:var(--color-text-black);content:"";display:block;height:2px;position:absolute;transition:var(--transition-smooth);width:100%}.hamburger{top:50%;transform:translateY(-50%)}.hamburger:before{top:-8px}.hamburger:after{bottom:-8px}body.menu-open .hamburger{background-color:transparent}body.menu-open .hamburger:before{top:0;transform:rotate(45deg)}body.menu-open .hamburger:after{bottom:0;transform:rotate(-45deg)}.hero{align-items:center;background-color:var(--color-bg-offwhite);display:flex;min-height:80vh;padding:160px 0 100px}.hero h1{font-size:clamp(40px,8vw,110px);max-width:1000px}.slogan-accent{color:var(--color-accent-vinotinto)}section{padding:var(--section-padding)}.section-label{color:var(--color-gray-medium);display:block;font-family:var(--font-accent);font-size:12px;font-weight:700;letter-spacing:.2em;margin-bottom:24px;text-transform:uppercase}.grid-asymmetric{display:grid;gap:40px;grid-template-columns:repeat(12,1fr)}.work-item{grid-column:span 6;margin-bottom:60px}.work-item.large{grid-column:span 8}.work-item.small{grid-column:span 4;margin-top:80px}.work-img{aspect-ratio:16/10;background:var(--color-gray-light);margin-bottom:24px;overflow:hidden}.work-img img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .8s cubic-bezier(.2,0,0,1);width:100%}.work-item:hover .work-img img{transform:scale(1.05)}.work-info h3{font-family:var(--font-heading);font-size:24px;letter-spacing:0;margin-bottom:8px;text-transform:none}.work-info p{color:var(--color-gray-dark);font-family:var(--font-body);font-size:15px}.news-grid{display:grid;gap:60px;grid-template-columns:repeat(3,1fr)}.news-article{border-top:2px solid var(--color-text-black);padding-top:24px;transition:var(--transition-fast)}.news-article:hover{border-color:var(--color-accent-vinotinto)}.news-date{color:var(--color-gray-medium);display:block;font-family:var(--font-accent);font-size:12px;margin-bottom:16px}.news-article h3{font-size:24px;letter-spacing:-.01em;margin-bottom:16px;text-transform:none;transition:color var(--transition-fast)}.news-article:hover h3{color:var(--color-accent-vinotinto)}.news-article p{color:var(--color-gray-dark);font-size:15px;line-height:1.6}.cta-button{background:var(--color-text-black);border:1px solid transparent;color:var(--color-bg-white);display:inline-block;font-family:var(--font-accent);font-size:13px;font-weight:700;letter-spacing:.1em;margin-top:40px;padding:16px 40px;text-transform:uppercase}.cta-button:hover{background:var(--color-bg-white);border-color:var(--color-accent-vinotinto);color:var(--color-accent-vinotinto)}.cta-button.vinotinto{background:var(--color-accent-vinotinto);color:var(--color-bg-white)}.cta-button.vinotinto:hover{background:var(--color-bg-white);border-color:var(--color-text-black);color:var(--color-text-black)}.omni-footer{background:var(--color-text-black);border-top:1px solid hsla(0,0%,100%,.05);color:var(--color-bg-white);padding:120px 0 40px}.footer-grid{display:grid;gap:60px;grid-template-columns:4fr 2fr 3fr 3fr;margin-bottom:80px}.footer-brand{padding-right:40px}.footer-logo{color:var(--color-bg-white);display:inline-block;font-family:var(--font-heading);font-size:32px;font-weight:800;margin-bottom:24px}.footer-logo span{color:var(--color-accent-vinotinto)}.footer-slogan{color:hsla(0,0%,100%,.6);font-size:16px;line-height:1.6;margin-bottom:0;max-width:300px}.footer-col h4{color:var(--color-bg-white);font-family:var(--font-accent);font-size:13px;font-weight:700;letter-spacing:.15em;margin-bottom:32px;text-transform:uppercase}.footer-links{display:flex;flex-direction:column;gap:16px}.footer-link{color:hsla(0,0%,100%,.6);font-family:var(--font-body);font-size:15px;padding-bottom:2px;position:relative;width:-moz-fit-content;width:fit-content}.footer-link:after{background-color:var(--color-accent-vinotinto);bottom:0;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.footer-link:hover{color:var(--color-bg-white)}.footer-link:hover:after{width:100%}.footer-contact-item{color:hsla(0,0%,100%,.6);display:flex;flex-direction:column;font-family:var(--font-body);font-size:15px;margin-bottom:16px}.footer-contact-item span{color:var(--color-bg-white);font-weight:500;margin-bottom:4px}.footer-bottom{align-items:center;border-top:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding-top:40px}.footer-copyright{color:hsla(0,0%,100%,.4);font-family:var(--font-body);font-size:14px}.footer-legal-links{display:flex;gap:24px}.footer-legal-link{color:hsla(0,0%,100%,.4);font-family:var(--font-accent);font-size:11px;letter-spacing:.1em;text-transform:uppercase;transition:color .3s ease}.footer-legal-link:hover{color:var(--color-bg-white)}.hero-split{align-items:center;display:grid;gap:60px;grid-template-columns:5fr 5fr;min-height:85vh;padding-top:80px}.hero-content h1{font-size:clamp(40px,5.5vw,80px);letter-spacing:-.03em;line-height:1.05;margin-bottom:24px;text-transform:none}.hero-subtitle{color:var(--color-gray-dark);font-size:18px;line-height:1.6;margin-bottom:48px;max-width:90%}.hero-actions{align-items:center;display:flex;gap:20px}.hero-actions .btn-secondary{color:var(--color-text-black);font-family:var(--font-accent);font-size:13px;font-weight:700;letter-spacing:.1em;padding-bottom:4px;position:relative;text-transform:uppercase}.hero-actions .btn-secondary:after{background-color:var(--color-accent-vinotinto);bottom:0;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.hero-actions .btn-secondary:hover:after{width:100%}.marquee-wrapper{background:var(--color-bg-offwhite);border-bottom:1px solid var(--color-gray-light);border-top:1px solid var(--color-gray-light);overflow:hidden;padding:60px 0;position:relative;white-space:nowrap}.marquee-content{align-items:center;animation:scroll Marquee 40s linear infinite;display:inline-flex;gap:80px;padding-right:80px}@keyframes scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.marquee-logo{filter:grayscale(100%);height:40px;opacity:.4;transition:var(--transition-smooth)}.marquee-logo:hover{filter:none;opacity:1}.services-section{background:var(--color-bg-white);padding:140px 0}.services-grid{display:grid;gap:40px;grid-template-columns:repeat(2,1fr);margin-top:60px}.service-card{background:var(--color-bg-offwhite);border:1px solid transparent;border-radius:8px;padding:60px;transition:var(--transition-smooth)}.service-card:hover{background:var(--color-bg-white);border-color:var(--color-gray-light);box-shadow:0 20px 40px rgba(0,0,0,.03);transform:translateY(-8px)}.service-icon{color:var(--color-accent-vinotinto);font-size:32px;margin-bottom:24px}.service-card h3{font-size:24px;letter-spacing:-.01em;margin-bottom:16px;text-transform:none}.service-card p{font-size:15px;line-height:1.6;margin-bottom:0}.contact-section{background:var(--color-text-black);padding:160px 0}.contact-section,.contact-section h2,.contact-section p{color:var(--color-bg-white)}.minimal-form{margin:0 auto;max-width:600px}.form-group{margin-bottom:40px;position:relative}.minimal-input{background:transparent;border:none;border-bottom:1px solid hsla(0,0%,100%,.2);color:#fff;font-family:var(--font-body);font-size:16px;padding:16px 0;transition:var(--transition-fast);width:100%}.minimal-input:focus{border-bottom-color:var(--color-accent-vinotinto);outline:none}.minimal-input::-moz-placeholder{color:hsla(0,0%,100%,.4);font-family:var(--font-accent);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.minimal-input::placeholder{color:hsla(0,0%,100%,.4);font-family:var(--font-accent);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.work-hero{align-items:center;background-color:var(--color-bg-white);border-bottom:1px solid var(--color-gray-light);display:flex;min-height:70vh;padding-top:120px}.work-hero h1{font-size:clamp(48px,7vw,100px);letter-spacing:-.04em;line-height:1.05;margin-bottom:24px;max-width:1100px;text-transform:none}.work-hero p.subtitle{color:var(--color-gray-dark);font-size:clamp(18px,2vw,24px);font-weight:300;max-width:700px}.methodology-section{background-color:var(--color-bg-offwhite);padding:140px 0}.method-grid{display:grid;gap:40px;grid-template-columns:repeat(4,1fr);margin-top:80px}.method-step{border-top:2px solid var(--color-gray-light);padding-top:32px;position:relative;transition:var(--transition-smooth)}.method-step:hover{border-top-color:var(--color-text-black)}.method-number{color:var(--color-gray-light);display:block;font-family:var(--font-accent);font-size:40px;font-weight:700;line-height:1;margin-bottom:24px;transition:var(--transition-smooth)}.method-step:hover .method-number{color:var(--color-text-black)}.method-step h3{font-size:20px;margin-bottom:12px;text-transform:none}.showcase-section{background-color:var(--color-bg-white);padding:160px 0 80px}.project-block{align-items:center;display:grid;gap:80px;grid-template-columns:6fr 4fr;margin-bottom:160px}.project-block.reverse{grid-template-columns:4fr 6fr}.project-block.reverse .project-content{order:-1}.project-image-wrapper{aspect-ratio:4/3;background-color:var(--color-gray-light);overflow:hidden;position:relative}.project-image-wrapper img{height:120%;-o-object-fit:cover;object-fit:cover;transform:translateY(-10%);transition:transform 1.2s cubic-bezier(.19,1,.22,1);width:100%}.project-block:hover .project-image-wrapper img{transform:translateY(0)}.project-meta{color:var(--color-gray-medium);display:flex;flex-wrap:wrap;font-family:var(--font-accent);font-size:11px;gap:12px;letter-spacing:.2em;margin-bottom:24px;text-transform:uppercase}.project-content h2{font-size:clamp(32px,4vw,56px);letter-spacing:-.02em;line-height:1.1;margin-bottom:24px;text-transform:none}.project-content p{color:var(--color-gray-dark);font-size:18px;margin-bottom:40px}.btn-inline{align-items:center;color:var(--color-text-black);display:inline-flex;font-family:var(--font-accent);font-size:13px;font-weight:700;gap:12px;letter-spacing:.1em;padding-bottom:4px;position:relative;text-transform:uppercase}.btn-inline:after{background-color:var(--color-text-black);bottom:0;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.btn-inline:hover:after{width:100%}.btn-inline svg{transition:transform .3s ease}.btn-inline:hover svg{transform:translateX(8px)}.lab-section{background-color:#050505;color:#fff;padding:160px 0}.lab-grid{display:grid;gap:40px;grid-template-columns:repeat(3,1fr);margin-top:80px}.lab-card{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.05);padding:40px;transition:var(--transition-smooth)}.lab-card:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.2)}.lab-card .badge{background:var(--color-accent-vinotinto);border-radius:40px;color:#fff;display:inline-block;font-family:var(--font-accent);font-size:10px;letter-spacing:.1em;margin-bottom:24px;padding:4px 12px;text-transform:uppercase}.lab-card h4{color:#fff;font-size:20px;margin-bottom:16px;text-transform:none}.lab-card p{color:hsla(0,0%,100%,.5);font-size:14px;margin-bottom:0}@media (max-width:1024px){.grid-asymmetric,.news-grid{grid-template-columns:1fr}.desktop-nav{align-items:flex-start;backdrop-filter:blur(15px);background:hsla(0,0%,100%,.98);display:none;flex-direction:column;height:calc(100vh - 80px);justify-content:flex-start;left:0;padding:40px 5vw;position:fixed;top:80px;width:100%;z-index:999}body.menu-open .desktop-nav{display:flex}body.menu-open{overflow:hidden}.desktop-nav ul{align-items:flex-start;flex-direction:column;gap:32px;width:100%}.nav-link{font-size:24px;letter-spacing:.05em}.header-cta{display:none}.menu-toggle{display:block}.footer-grid{gap:40px;grid-template-columns:1fr}.footer-brand{margin-bottom:20px;padding-right:0}.footer-bottom{align-items:flex-start;flex-direction:column;gap:20px}.footer-legal-links{flex-wrap:wrap}.lab-grid{grid-template-columns:1fr 1fr}.project-block,.project-block.reverse{gap:40px;grid-template-columns:1fr}.project-block.reverse .project-content{order:0}.work-item,.work-item.large,.work-item.small{grid-column:span 1;margin-top:0}.hero h1{font-size:60px}}@media (max-width:768px){section{padding:var(--mobile-padding)}.hero{padding:120px 0 80px}.hero h1{font-size:40px}.footer-content{align-items:flex-start;flex-direction:column;gap:40px}.omni-footer{padding:80px 0 40px}.lab-grid,.method-grid{grid-template-columns:1fr}.project-image-wrapper{aspect-ratio:16/9}}
