/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--ink:#202020;--red:#ea1744;--blue:#19558a;--yellow:#ffe800;--ease:cubic-bezier(.645,.045,.355,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{color:var(--ink);font-family:var(--font-sans),Arial,sans-serif;-webkit-font-smoothing:antialiased;background:#fff;margin:0;padding:30px 30px 0;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{object-fit:cover;max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:6px}main{z-index:2;background:#fff;position:relative}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:700}small[lang=es],.translation{font-weight:400;display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.eyebrow{letter-spacing:.13em;font-size:14px;font-weight:600;line-height:1.8}.eyebrow span{letter-spacing:.05em;font-size:13px;font-weight:400;display:block}.navigation{color:#fff;z-index:20;justify-content:space-between;align-items:center;width:100%;padding:22px 28px;display:flex;position:absolute;top:0;left:0}.nav-left{align-items:center;gap:22px;display:flex}.brand-logo{width:112px;display:block}.brand-logo img{width:100%;height:auto}.nav-contact{padding-right:28px;font-size:14px;font-weight:600;position:relative}.nav-contact span{font-size:12px;font-weight:400;display:block}.nav-contact b{font-size:22px;position:absolute;top:3px;right:0}.hamburger{z-index:31;background:0 0;border:1px solid #ffffff80;border-radius:50%;flex-shrink:0;width:46px;height:46px;position:relative}.hamburger span{background:#fff;width:20px;height:2px;transition:transform .3s,top .3s,opacity .3s;position:absolute;top:15px;left:12px}.hamburger span:nth-child(2){top:21px}.hamburger span:nth-child(3){top:27px}.hamburger.open{position:fixed;top:75px;left:58px}.hamburger.open span:first-child{top:21px;transform:rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){top:21px;transform:rotate(-45deg)}.nav-menu{z-index:30;visibility:hidden;opacity:0;transition:all .3s var(--ease);padding:50px;position:fixed;inset:0}.nav-menu.open{visibility:visible;opacity:1;padding:30px}.menu-inner{background:var(--red);flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex;position:relative;overflow:auto}.menu-links{z-index:1;text-align:center;position:relative}.menu-links>div{padding:9px 0;overflow:hidden}.menu-links a{transition:transform .6s var(--ease);transition-delay:calc(var(--order)*70ms);font-size:clamp(25px,3.6vw,48px);font-weight:700;line-height:1.15;display:block;transform:translateY(160%)}.menu-links a small{letter-spacing:.15em;margin-top:5px;font-size:14px}.nav-menu.open .menu-links a{transform:translateY(0)}.menu-links a:hover{color:var(--yellow)}.menu-inner>p{letter-spacing:.1em;font-size:12px;position:absolute;bottom:18px}.menu-particles{pointer-events:none;position:absolute;inset:0;overflow:hidden}.menu-particles i{opacity:.28;background:#fff;border-radius:50%;width:4px;height:4px;animation:8s ease-in-out infinite alternate drift;position:absolute}.menu-particles i:after{content:"";background:#ffffff28;width:95px;height:1px;position:absolute;top:1px;left:1px;transform:rotate(35deg)}@keyframes drift{to{transform:translate(60px,-45px)}}.transition-overlay{z-index:100;background:var(--red);visibility:hidden;opacity:0;transition:opacity .5s .135s var(--ease),transform .5s .135s var(--ease);position:fixed;inset:0;transform:scale(.95)}.transition-overlay.active{visibility:visible;opacity:1;transform:scale(1)}.preloader{display:none}.motion-ready .preloader{background:var(--red);z-index:110;pointer-events:none;color:#fff;letter-spacing:.12em;transform-origin:top;transition:transform .6s .15s var(--ease),visibility .8s;place-items:center;font-size:24px;font-weight:700;display:grid;position:fixed;inset:0}.page-loaded .preloader{visibility:hidden;transform:scaleY(0)}.page-loaded .navigation .brand-logo{animation:.8s .3s both nav-down}.page-loaded .navigation .hamburger:not(.open){animation:.8s .2s both nav-left}.page-loaded .nav-contact{animation:.8s .4s both nav-right}@keyframes nav-down{0%{opacity:0;transform:translateY(-70px)}}@keyframes nav-left{0%{opacity:0;transform:translate(-70px)}}@keyframes nav-right{0%{opacity:0;transform:translate(70px)}}.upper-hero{color:#fff;--parallax:0px;background:#111;height:calc(100svh - 60px);min-height:640px;max-height:1250px;position:relative;overflow:hidden}.hero-slide{opacity:0;visibility:hidden;transition:opacity .8s ease-in-out,visibility .8s;position:absolute;inset:0;overflow:hidden}.hero-slide.is-active{opacity:1;visibility:visible}.hero-image{object-position:center;width:100%;height:115%;transform:translateY(var(--parallax));filter:saturate(.7);position:absolute;top:-7.5%}.hero-shade{background:linear-gradient(#0008,#0005 40%,#0009);position:absolute;inset:0}.hero-caption{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:110px 8% 95px;display:flex;position:absolute;inset:0}.hero-caption>*{opacity:0;transition:transform .8s ease-in-out,opacity .8s;transform:translate(-100vw)}.is-active .hero-caption>*{opacity:1;transform:translate(0)}.hero-kicker{letter-spacing:.13em;margin:0 0 22px;font-size:clamp(15px,1.65vw,26px);font-weight:600}.hero-kicker span{letter-spacing:.08em;margin-top:6px;font-size:13px;font-weight:400;display:block}.hero-caption h2{letter-spacing:-.05em;white-space:nowrap;margin:0;font-size:clamp(62px,10.7vw,160px);line-height:1.05}.hero-spanish{letter-spacing:.025em;margin:12px 0 28px;font-size:clamp(22px,2.65vw,42px);font-weight:300}.slide-link{border-bottom:3px solid #fff;padding:7px 3px;font-size:14px;font-weight:700;line-height:1.6}.slide-link small{letter-spacing:.03em;font-size:12px;font-weight:400}.slide-link:hover{border-color:var(--red)}.slide-arrow{z-index:4;color:#fff;opacity:.7;background:0 0;border:0;width:64px;height:80px;font-size:35px;transition:transform .3s,opacity .3s;position:absolute;top:47%}.slide-arrow:hover{opacity:1;transform:scale(1.15)}.prev{left:12px}.next{right:12px}.hero-bottom{letter-spacing:.08em;justify-content:space-between;align-items:center;gap:20px;font-size:12px;display:flex;position:absolute;bottom:30px;left:32px;right:32px}.hero-bottom>a span{margin-left:15px;font-size:20px}.slide-controls{align-items:center;gap:10px;display:flex}.slide-controls button{background:0 0;border:1px solid #fff;border-radius:50%;width:10px;height:10px;padding:0;position:relative}.slide-controls button:after{content:"";position:absolute;inset:-10px}.slide-controls button.selected{background:#fff}.slide-controls .pause{border:0;width:30px;height:30px;font-size:14px;line-height:30px}.slide-count{margin-right:12px;font-size:12px}.section-intro{text-align:center;padding:120px 6vw 80px}.section-intro h2{letter-spacing:-.04em;margin:25px 0;font-size:clamp(40px,5vw,68px);line-height:1.15}.section-intro h2>span{color:var(--red)}.section-intro>p:not(.eyebrow){color:#666;font-size:22px;font-weight:300}.underlined{border-bottom:2px solid var(--red);padding:12px 0;font-size:14px;font-weight:600;display:inline-block}.footer{z-index:0;color:#fff;text-align:center;background:#141414;flex-direction:column;justify-content:center;align-items:center;min-height:440px;padding:60px 40px 25px;display:flex;position:sticky;bottom:0}.footer-brand{width:150px;margin-bottom:20px}.footer-brand img{width:100%;height:auto}.footer p{color:#aaa;margin:0 0 8px;font-size:14px;line-height:1.7}.footer>a:not(.footer-brand){font-size:15px}.footer .footer-region{letter-spacing:.14em;margin-top:22px;font-size:12px}.footer-bottom{color:#aaa;border-top:1px solid #ffffff28;justify-content:space-between;width:100%;margin-top:35px;padding-top:20px;font-size:12px;display:flex}.whatsapp-float{z-index:24;color:#fff;background:#171717;border:1px solid #fff5;border-radius:3px;align-items:center;gap:10px;padding:10px 15px;font-size:14px;display:flex;position:fixed;bottom:30px;right:40px;box-shadow:0 5px 20px #0002}.whatsapp-float svg{color:#6ce894;width:32px;height:32px}.whatsapp-float small{font-size:12px;display:block}.whatsapp-float:hover{background:var(--blue)}@media (width<=900px){body{padding:20px 20px 0}.upper-hero{height:calc(100svh - 40px);min-height:640px}.hero-caption h2{font-size:10.5vw}.hero-bottom>span{display:none}.hero-bottom{justify-content:center}.hero-bottom>a{display:none}.nav-menu.open{padding:20px}.hamburger.open{top:65px;left:48px}.footer{position:relative}}@media (width<=560px){body{padding:12px 12px 0}.navigation{padding:18px 16px}.nav-left{gap:12px}.brand-logo{width:82px}.nav-contact{padding-right:20px;font-size:12px}.nav-contact span{font-size:12px}.upper-hero{height:calc(100svh - 24px);min-height:580px}.hero-caption{padding:120px 20px 105px}.hero-caption h2{letter-spacing:-.045em;font-size:10.6vw}.hero-kicker{letter-spacing:.07em;max-width:270px;font-size:14px}.hero-kicker span{font-size:12px}.hero-spanish{margin-top:16px;font-size:22px}.slide-arrow{width:44px;height:44px;font-size:26px;top:auto;bottom:22px}.hero-bottom{bottom:28px;left:50px;right:50px}.slide-count{display:none}.nav-menu.open{padding:12px}.hamburger.open{top:40px;left:28px}.section-intro{padding:80px 18px 55px}.section-intro h2{font-size:38px}.section-intro>p:not(.eyebrow){font-size:18px}.footer{padding:60px 22px 90px}.footer-bottom{flex-direction:column;gap:12px}.whatsapp-float{padding:8px 11px;bottom:20px;right:22px}.whatsapp-float>span,.whatsapp-float small{font-size:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.preloader{display:none!important}.hero-image{transform:none!important}}.translation{color:#6b6b6b;margin-top:12px;font-size:.86em;line-height:1.7}.section-intro>p{max-width:750px;margin-left:auto;margin-right:auto}.vertical-line{opacity:.55;background:currentColor;width:1px;height:75px;margin:44px auto 0;display:block}.section-tail{text-align:center;padding-top:45px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.project-card{aspect-ratio:1/1.08;background:#1a1a1a;position:relative;overflow:hidden}.project-card:nth-child(3n+2){aspect-ratio:1/1.08}.project-card button{text-align:center;color:#fff;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.project-card img{width:100%;height:100%;transition:transform .8s var(--ease)}.project-card:hover img{transform:scale(1.05)}.project-caption{background:linear-gradient(#0000 30%,#000c);flex-direction:column;justify-content:center;align-items:center;padding:30px;transition:background .3s;display:flex;position:absolute;inset:0}.project-caption h3{transition:transform .3s var(--ease);margin:15px 0 6px;font-size:clamp(22px,2vw,31px);line-height:1.2;transform:translateY(80px)}.project-caption>p{font-size:15px;transition:transform .3s;transform:translateY(80px)}.project-caption>span{opacity:0;text-transform:uppercase;letter-spacing:.08em;font-size:14px;transition:all .3s;transform:translateY(-15px)}.project-caption small{letter-spacing:.02em;font-size:12px}.project-caption i{opacity:0;font-size:38px;font-style:normal;transition:opacity .3s}.project-card:hover .project-caption,.project-card:focus-within .project-caption{background:#e71943eb}.project-card:hover .project-caption h3,.project-card:hover .project-caption>p,.project-card:focus-within .project-caption h3,.project-card:focus-within .project-caption>p{transform:none}.project-card:hover .project-caption>span,.project-card:hover .project-caption i,.project-card:focus-within .project-caption>span,.project-card:focus-within .project-caption i{opacity:1;transform:none}.lightbox{color:#fff;background:0 0;border:0;max-width:90vw;max-height:95svh;margin:auto;padding:0;overflow:visible}.lightbox::backdrop{background:#000e}.lightbox-inner{max-width:1000px;position:relative}.lightbox-inner>img{object-fit:contain;max-width:85vw;max-height:72svh;margin:auto}.lightbox-close{background:var(--red);color:#fff;z-index:2;border:0;border-radius:50%;width:44px;height:44px;font-size:30px;position:absolute;top:-20px;right:-15px}.lightbox-bar{background:#181818;justify-content:space-between;align-items:center;gap:30px;padding:20px;display:flex}.lightbox-bar>button{background:0 0;border:1px solid #fff6;width:44px;height:44px;font-size:24px}.lightbox-bar h3{margin:0;font-size:18px}.lightbox-bar p{margin:4px 0 0;font-size:14px}.featured-services{grid-template-columns:40% 1fr;gap:5%;padding:140px 4%;display:grid}.featured-services h2,.about-page h2{letter-spacing:-.04em;margin:25px 0;font-size:clamp(42px,4.6vw,70px);line-height:1.12}.featured-services h2 span,.about-page h2 span,.technology h2 span{color:var(--red)}.section-spanish{color:#777;font-size:24px;font-weight:300;line-height:1.3}.service-grid{grid-template-columns:1fr 1fr;gap:50px 35px;display:grid}.service-number{font-family:var(--font-serif),Georgia,serif;color:var(--red);margin-bottom:28px;font-size:42px;display:block}.service-grid h3{margin-bottom:22px;font-size:21px;line-height:1.3}.service-grid h3 small{color:#777;margin-top:8px;font-size:16px}.service-grid p{color:#555;margin-bottom:12px;font-size:16px;line-height:1.75}.service-grid p.translation{color:#6b6b6b;font-size:14px}.service-grid article:after{content:"";background:#202020;width:25px;height:2px;margin-top:24px;display:block}.introduction{grid-template-columns:1fr 1fr;min-height:750px;display:grid;overflow:hidden}.intro-image{background:#111;position:relative;overflow:hidden}.intro-image img{filter:brightness(.55);width:100%;height:100%}.intro-image h2{font-family:var(--font-serif),Georgia,serif;color:#fff;white-space:nowrap;text-align:center;letter-spacing:.03em;font-size:6vw;font-weight:400;line-height:1.2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg)}.intro-image h2 span{font-size:7vw}.intro-copy{color:#fff;text-align:center;background:#222;flex-direction:column;justify-content:center;align-items:center;padding:85px 9%;display:flex}.intro-copy h3{margin:25px 0 16px;font-size:clamp(32px,3.5vw,52px);font-weight:300;line-height:1.2}.intro-copy>p{color:#ccc;max-width:470px;font-size:16px;line-height:1.7}.intro-copy .eyebrow{color:#fff;font-size:14px}.intro-copy .intro-es{color:#fff;margin-bottom:35px;font-size:21px;font-weight:300}.intro-copy .translation{color:#aaa;margin:0 0 28px;font-size:14px}.intro-copy .underlined{border-color:var(--red);color:#fff}.underlined small{letter-spacing:.035em;margin-top:4px;font-size:12px}.contact{text-align:center;background:#fff;padding:130px 25px}.contact h2{letter-spacing:-.045em;margin:40px 0 15px;font-size:clamp(55px,7.5vw,108px);line-height:1.02}.contact h2>span{color:var(--red)}.contact-es{margin-bottom:40px;font-size:clamp(22px,2.5vw,35px);font-weight:300}.contact-cta{border-bottom:2px solid var(--red);padding:12px 35px 12px 0;font-size:16px;font-weight:600;line-height:1.7;display:inline-block;position:relative}.contact-cta small{font-size:13px}.contact-cta b{font-size:24px;position:absolute;top:18px;right:0}.phone{margin-top:25px;font-size:20px;display:block}.inner-hero{color:#fff;background:#111;place-items:center;height:75svh;min-height:570px;display:grid;position:relative;overflow:hidden}.inner-hero>img{object-fit:cover;filter:brightness(.35);width:100%;height:100%;position:absolute}.inner-hero-copy{text-align:center;animation:inner-in .8s var(--ease);padding:140px 6vw 50px;position:relative}.inner-hero h1{letter-spacing:-.05em;margin:25px 0 18px;font-size:clamp(55px,7vw,106px);line-height:1.1}.inner-hero-copy>p:last-of-type{font-size:clamp(22px,3vw,38px);font-weight:300}.inner-hero .vertical-line{height:55px;margin-top:35px}@keyframes inner-in{0%{opacity:0;transform:translate(100px)}}.services-detail{padding:0 5% 90px}.services-detail article{border-top:1px solid #ddd;grid-template-columns:60px 1.3fr 1fr;align-items:center;gap:45px;padding:65px 0;display:grid}.services-detail h2{letter-spacing:-.02em;font-size:34px;line-height:1.2}.services-detail h2 small{color:#666;margin-top:10px;font-size:23px}.services-detail p{max-width:580px;line-height:1.8}.services-detail img{object-fit:cover;width:100%;height:300px}.services-detail article:first-child img{object-fit:contain}.projects-page .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;padding:0 25px 60px}.projects-page .project-card,.projects-page .project-card:nth-child(3n+2){aspect-ratio:1.2}.about-page{grid-template-columns:1fr 1fr;gap:9%;padding:120px 6%;display:grid}.about-page p:not(.eyebrow){color:#666;font-size:18px;line-height:1.85}.technology{background:#f5f5f5;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.technology-image{background:#fff;align-items:center;padding:55px 30px;display:flex}.technology-image img{object-fit:contain;width:100%;max-height:500px}.technology-copy{padding:70px 8%}.technology h2{letter-spacing:-.035em;font-size:42px;line-height:1.2}.technology-copy>p:not(.eyebrow){font-size:22px;font-weight:300}.stats{border-top:1px solid #ccc;flex-direction:column;gap:25px;margin-top:40px;padding-top:30px;display:flex}.stats>div{align-items:center;gap:25px;display:flex}.stats b{color:var(--red);font-variant-numeric:tabular-nums;min-width:105px;font-size:55px;font-weight:600}.stats span{letter-spacing:.05em;font-size:13px}.stats small{letter-spacing:0;margin-top:4px;font-size:12px}.motion-ready [data-reveal]{opacity:0;transition:opacity .85s var(--ease),transform .85s var(--ease);transform:translateY(45px)}.motion-ready [data-reveal=left]{transform:translate(-65px)}.motion-ready [data-reveal=right]{transform:translate(65px)}.motion-ready [data-reveal].revealed{opacity:1;transform:none}.motion-ready [data-reveal=curtain]{opacity:1;position:relative;overflow:hidden;transform:none}.motion-ready [data-reveal=curtain]:after{content:"";background:var(--red);transform-origin:bottom;transition:transform .85s var(--ease);pointer-events:none;z-index:3;position:absolute;inset:0;transform:scaleY(1)}.motion-ready [data-reveal=curtain].revealed:after{transform:scaleY(0)}@media (width<=1000px){.featured-services{grid-template-columns:1fr;gap:65px;padding:90px 6%}.featured-services h2 br{display:none}.featured-services h2{max-width:600px}.section-spanish br{display:none}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.introduction{min-height:650px}.intro-copy{padding:65px 8%}.services-detail article{grid-template-columns:40px 1fr;gap:30px}.services-detail img{grid-column:2}.technology h2{font-size:34px}.about-page{gap:7%;padding:90px 5%}.about-page h2{font-size:40px}}@media (width<=650px){.service-grid{grid-template-columns:1fr;gap:40px}.introduction{grid-template-columns:1fr}.intro-image{height:450px}.intro-image h2{font-size:48px}.intro-image h2 span{font-size:58px}.intro-copy{padding:65px 8%}.intro-copy h3{font-size:40px}.about-page{grid-template-columns:1fr;gap:45px;padding:70px 6%}.technology{grid-template-columns:1fr}.technology-copy{padding:60px 8%}.technology-image{padding:40px 25px}.contact{padding:90px 20px}.contact h2{font-size:60px}.inner-hero{height:650px;min-height:0}.inner-hero h1{font-size:48px}.inner-hero-copy{padding:140px 25px 65px}.inner-hero .eyebrow{font-size:12px}.project-grid,.projects-page .project-grid{grid-template-columns:1fr}.projects-page .project-grid{gap:18px;padding:0 0 40px}.project-card,.project-card:nth-child(3n+2){aspect-ratio:1.1}.project-caption h3,.project-caption>p{transform:translateY(45px)}.project-caption h3{font-size:29px}.project-caption>span{opacity:1;transform:translateY(40px)}.project-caption{padding:28px}.services-detail{padding:0 6% 50px}.services-detail article{grid-template-columns:1fr;gap:20px;padding:45px 0}.services-detail .service-number{margin:0}.services-detail img{grid-column:auto;height:280px}.services-detail h2{font-size:30px}.lightbox-bar{gap:15px;padding:16px}.lightbox-bar h3{font-size:16px}.lightbox-bar p{font-size:13px}.lightbox-bar>button{flex-shrink:0}.section-intro .translation{font-size:16px}}@media (prefers-reduced-motion:reduce){.motion-ready [data-reveal]{opacity:1;transform:none}.motion-ready [data-reveal=curtain]:after{display:none}}@keyframes upper-caption-in{0%{opacity:0;transform:translate(100vw)}to{opacity:1;transform:translate(0)}}.is-active .hero-caption>*{animation:.8s ease-in-out both upper-caption-in}body:has(.nav-menu.open) .whatsapp-float{visibility:hidden}@media (width<=560px){.upper-hero .hero-bottom{bottom:88px}.upper-hero .slide-arrow{bottom:82px}.upper-hero .hero-bottom>span{text-align:center;letter-spacing:.05em;font-size:12px;display:block;position:absolute;top:-34px;left:-30px;right:-30px}}.about-page{overflow:hidden}.hero-kicker{max-width:900px;font-size:clamp(14px,1.4vw,22px)}.hero-shade{background:linear-gradient(#0008,#0006 40%,#000a)}.transition-overlay{transition-duration:.3s;transition-delay:0s}.preloader{transition-duration:.35s!important}.hero-caption{padding-bottom:150px}.service-photo{object-fit:cover;width:100%;height:200px;margin-bottom:24px}.project-story{background:#181818;max-width:800px;padding:0 24px 24px}.project-story p{margin-bottom:8px;font-size:15px;line-height:1.6}.project-story p[lang=es]{color:#bbb;font-size:14px}.project-story a{color:#fff;margin-top:20px;font-size:13px;text-decoration:underline;display:block}.lightbox{max-width:96vw;max-height:96svh;padding:22px;overflow:hidden auto}.lightbox-inner>img{max-height:58svh}.lightbox-close{top:0;right:0}.lightbox-inner{max-width:800px}.lightbox-inner>img{max-width:100%}.equipment-section{background:#f5f5f5;padding:0 5% 90px}.equipment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;display:grid}.equipment-grid figure{background:#fff;margin:0 0 28px;padding:20px}.equipment-grid img{object-fit:contain;width:100%;height:180px}.equipment-grid figcaption{color:#777;margin-top:18px;font-size:12px;line-height:1.5}.equipment-grid h3{font-size:24px}.equipment-grid p{font-size:16px;line-height:1.7}.equipment-grid p[lang=es]{color:#666;font-size:14px}.equipment-grid a{font-size:12px;font-weight:600;text-decoration:underline}.workshop{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px;padding:100px 5%;display:grid}.workshop h2{letter-spacing:-.04em;font-size:48px;line-height:1.1}.workshop-copy>p{font-size:16px;line-height:1.7}.workshop figure{margin:0;position:relative}.workshop img{object-fit:cover;width:100%;height:440px}.workshop figcaption{color:#fff;letter-spacing:.07em;background:#202020;padding:15px;font-size:12px}.quote-panel{text-align:left;border-top:1px solid #ddd;grid-template-columns:1fr 1.3fr;gap:70px;max-width:1140px;margin:85px auto 40px;padding-top:70px;scroll-margin-top:40px;display:grid}.quote-intro h3{letter-spacing:-.04em;font-size:42px;line-height:1.15}.quote-intro p{font-size:17px;line-height:1.7}.quote-panel label{margin-bottom:22px;font-size:14px;font-weight:500;display:block}.quote-panel input:not([type=checkbox]),.quote-panel select,.quote-panel textarea{width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #aaa;border-radius:0;min-height:48px;margin-top:7px;padding:12px;font-size:16px;display:block}.quote-panel input:disabled,.quote-panel select:disabled{color:#999;background:#eee}.quote-panel fieldset{border:0;min-width:0;margin:0 0 12px;padding:0}.quote-panel legend{margin-bottom:12px;font-size:14px;font-weight:500}.quote-panel .check-line{align-items:center;gap:10px;font-weight:400;line-height:1.5;display:flex}.quote-panel input[type=checkbox]{width:20px;height:20px;accent-color:var(--red)}.dimensions{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}.quote-row{grid-template-columns:1fr 1.5fr;gap:18px;display:grid}.quote-submit{background:var(--red);color:#fff;border:0;width:100%;padding:18px;font-size:15px;font-weight:600}.quote-submit small{margin-top:6px;font-size:13px;font-weight:400;display:block}.quote-submit:hover{background:#ba1237}.quote-note,.quote-status{margin-top:18px;font-size:13px;line-height:1.65}.quote-note span,.quote-status span{display:block}.quote-status{background:#e7f4eb;padding:16px}.optional{font-size:12px;font-weight:400}.quote-panel :focus-visible{outline:3px solid var(--blue);outline-offset:3px}.location-link{margin-top:16px}.nav-contact{max-width:190px}.nav-contact span{line-height:1.5}@media (width<=1000px){.equipment-grid{gap:20px}.workshop{grid-template-columns:1fr 1fr}.workshop-copy{grid-column:1/-1}.quote-panel{gap:35px}.equipment-grid h3{font-size:20px}}@media (width<=650px){.equipment-grid{grid-template-columns:1fr}.equipment-grid img{height:210px}.equipment-section{padding:0 6% 65px}.workshop{grid-template-columns:1fr;padding:70px 6%}.workshop-copy{grid-column:auto}.workshop img{height:auto;max-height:520px}.quote-panel{grid-template-columns:1fr;gap:20px;margin-top:60px;padding-top:45px}.quote-intro h3{font-size:34px}.quote-row{grid-template-columns:1fr}.dimensions{gap:8px}.quote-panel label{font-size:13px}.quote-panel input:not([type=checkbox]),.quote-panel select{padding:10px 6px}.project-story{padding:0 16px 20px}.hero-kicker{max-width:290px;font-size:13px}.hero-caption{padding-bottom:165px}.nav-contact{max-width:148px;font-size:12px}.nav-contact span{font-size:11px}.lightbox{padding:15px}.lightbox-inner>img{max-height:50svh}}.quote-preview{border-block:1px solid #ddd;margin:15px 0 25px;padding:14px 0}.quote-preview summary{cursor:pointer;font-size:13px;font-weight:600}.quote-preview pre{font:14px/1.7 var(--font-sans),sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:18px}.contact:has(#quote:focus-within)~.whatsapp-float{visibility:hidden}body:has(#quote:focus-within)>.whatsapp-float{visibility:hidden}.clients-section{background:#fff;padding:70px 6% 0}.clients-intro{text-align:center;max-width:1000px;margin:0 auto 75px}.clients-intro h2{margin-bottom:30px}.clients-intro>p{color:#555;font-size:clamp(19px,2vw,28px);font-weight:300;line-height:1.65}.clients-grid{border-top:1px solid #e8e8e8;border-left:1px solid #e8e8e8;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.clients-grid li{border-bottom:1px solid #e8e8e8;border-right:1px solid #e8e8e8;min-width:0}.client-tile{min-height:220px;transition:transform .4s var(--ease),box-shadow .4s var(--ease);background:#fff;place-items:center;padding:35px 25px;display:grid;position:relative}.client-logo{width:100%;max-width:230px;height:150px;display:block}.client-logo img{object-fit:contain;filter:grayscale();opacity:.85;width:100%;min-width:0;height:150px;min-height:0;transition:filter .4s,opacity .4s;display:block}.client-logo img.padded{object-fit:cover}.client-logo img[src$=firstlight\.jpg]{object-position:center 40%}@media (hover:hover){.client-tile:hover{z-index:1;transform:translateY(-7px);box-shadow:0 16px 40px #00000012}.client-tile:hover img{filter:none;opacity:1}}@media (width<=900px){.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clients-section{padding:50px 6% 0}}@media (width<=560px){.clients-intro{margin-bottom:40px}.client-tile{min-height:160px;padding:24px 16px}.client-logo,.client-logo img{height:110px}.client-logo img{filter:none;opacity:1}.clients-section{padding:40px 4% 0}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
