:root{--black:#0a0a0a;--white:#fff;--grey-50:#fafafa;--grey-100:#f2f2f0;--grey-200:#e4e4e1;--grey-400:#a3a39d;--grey-600:#6b6b66;--max-width:1240px;--gutter:clamp(1.5rem, 5vw, 4rem);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--white);color:var(--black);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;line-height:1.5}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}ul{list-style:none}.container{max-width:var(--max-width);padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--grey-600);margin-bottom:1rem;font-size:.75rem;font-weight:600;display:inline-block}.section{padding-block:clamp(4rem,10vw,8rem)}.section-heading{letter-spacing:-.02em;font-size:clamp(2rem,4vw,3.25rem);font-weight:700;line-height:1.1}.btn{letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--black);white-space:nowrap;border-radius:2px;justify-content:center;align-items:center;gap:.6rem;padding:.95rem 2.1rem;font-size:.9rem;font-weight:600;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-primary{background:var(--black);color:var(--white)}.btn-primary:hover{background:var(--grey-600);border-color:var(--grey-600)}.btn-outline{color:var(--black);background:0 0}.btn-outline:hover{background:var(--black);color:var(--white)}.header{z-index:100;background:0 0;border-bottom:1px solid #0000;transition:background-color .25s,box-shadow .25s,border-color .25s;position:fixed;top:0;left:0;right:0}.header--scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--grey-200);background:#ffffffeb}.header__inner{justify-content:space-between;align-items:center;height:84px;display:flex}.header__logo{letter-spacing:.08em;font-size:1.05rem;font-weight:800}.header__logo span{color:var(--grey-600);font-weight:400}.header__nav{align-items:center;gap:2.5rem;display:flex}.header__nav ul{gap:2.25rem;display:flex}.header__nav a{letter-spacing:.03em;text-transform:uppercase;font-size:.85rem;font-weight:500;position:relative}.header__nav ul a:after{content:"";background:var(--black);width:0;height:1px;transition:width .2s;position:absolute;bottom:-6px;left:0}.header__nav ul a:hover:after{width:100%}.header__cta{padding:.7rem 1.5rem;font-size:.8rem}.header__toggle{background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;display:none}.header__toggle span{background:var(--black);width:100%;height:2px;transition:transform .25s,opacity .25s;display:block}.header__toggle--open span:first-child{transform:translateY(7px)rotate(45deg)}.header__toggle--open span:nth-child(2){opacity:0}.header__toggle--open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=860px){.header__toggle{display:flex}.header__nav{background:var(--white);padding:2.5rem var(--gutter) 3rem;border-bottom:1px solid var(--grey-200);opacity:0;pointer-events:none;flex-direction:column;align-items:flex-start;gap:2rem;transition:transform .25s,opacity .25s;position:fixed;top:84px;left:0;right:0;transform:translateY(-8px)}.header__nav--open{opacity:1;pointer-events:auto;transform:translateY(0)}.header__nav ul{flex-direction:column;gap:1.5rem}.header--scrolled,.header{background:var(--white)}}.hero{background:var(--grey-50);align-items:center;min-height:100vh;padding-top:84px;display:flex;position:relative;overflow:hidden}.hero__inner{z-index:1;padding-block:clamp(3rem,8vw,5rem);position:relative}.hero__title{letter-spacing:-.03em;text-transform:uppercase;font-size:clamp(3.2rem,12vw,8.5rem);font-weight:800;line-height:.95}.hero__title span{color:var(--grey-400);font-weight:300}.hero__tagline{color:var(--grey-600);max-width:32ch;margin-top:1.75rem;font-size:clamp(1.1rem,2.2vw,1.6rem);font-weight:400}.hero__actions{flex-wrap:wrap;gap:1rem;margin-top:2.75rem;display:flex}.hero__grid{z-index:0;pointer-events:none;background-image:linear-gradient(to right, var(--grey-200) 1px, transparent 1px), linear-gradient(to bottom, var(--grey-200) 1px, transparent 1px);opacity:.7;background-size:clamp(60px,8vw,120px) clamp(60px,8vw,120px);position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 70% 40%,#000,#0000);mask-image:radial-gradient(80% 60% at 70% 40%,#000,#0000)}@media (width<=640px){.hero{min-height:92vh}}.about{border-top:1px solid var(--grey-200)}.about__grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.about__text{color:var(--grey-600);max-width:52ch;padding-top:.5rem;font-size:clamp(1rem,1.4vw,1.2rem)}@media (width<=800px){.about__grid{grid-template-columns:1fr;gap:1.75rem}}.services{background:var(--grey-50);border-top:1px solid var(--grey-200)}.services__heading{margin-bottom:clamp(2.5rem,6vw,4rem)}.services__grid{border-top:1px solid var(--grey-200);border-left:1px solid var(--grey-200);grid-template-columns:repeat(4,1fr);display:grid}.service-card{border-right:1px solid var(--grey-200);border-bottom:1px solid var(--grey-200);background:var(--white);padding:2.5rem 2rem;transition:background-color .2s}.service-card:hover{background:var(--grey-100)}.service-card__number{color:var(--grey-400);margin-bottom:2.5rem;font-size:.8rem;font-weight:600;display:block}.service-card__title{letter-spacing:-.01em;margin-bottom:.9rem;font-size:1.3rem;font-weight:700}.service-card__text{color:var(--grey-600);font-size:.95rem;line-height:1.55}@media (width<=960px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.services__grid{grid-template-columns:1fr}}.projects{border-top:1px solid var(--grey-200)}.projects__heading{margin-bottom:clamp(2.5rem,6vw,4rem)}.projects__grid{grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,3vw,2.5rem);display:grid}.project-card__image{aspect-ratio:4/3;background:linear-gradient(135deg, var(--grey-200) 0%, var(--grey-100) 100%);border:1px solid var(--grey-200);align-items:flex-end;padding:1rem;display:flex;position:relative;overflow:hidden}.project-card__image:before{content:"";background-image:linear-gradient(45deg, transparent 48%, var(--grey-200) 48%, var(--grey-200) 52%, transparent 52%);opacity:.6;position:absolute;inset:0}.project-card__image span{letter-spacing:.1em;text-transform:uppercase;color:var(--grey-600);background:var(--white);padding:.4rem .7rem;font-size:.7rem;font-weight:600;position:relative}.project-card__meta{justify-content:space-between;align-items:baseline;gap:1rem;margin-top:1rem;display:flex}.project-card__meta h3{font-size:1.1rem;font-weight:700}.project-card__meta p{color:var(--grey-600);white-space:nowrap;font-size:.85rem}@media (width<=960px){.projects__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.projects__grid{grid-template-columns:1fr}}.contact{background:var(--black);color:var(--white)}.contact__grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:clamp(2.5rem,6vw,6rem);display:grid}.contact .eyebrow{color:var(--grey-400)}.contact__text{color:var(--grey-400);max-width:40ch;margin-top:1.5rem;font-size:clamp(1rem,1.4vw,1.15rem)}.contact__list{border-top:1px solid #ffffff26;flex-direction:column;gap:1.75rem;padding-top:1.75rem;display:flex}.contact__list li{border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.75rem;display:flex}.contact__label{letter-spacing:.1em;text-transform:uppercase;color:var(--grey-400);font-size:.8rem;font-weight:600}.contact__value{font-size:clamp(1.1rem,2vw,1.4rem);font-weight:600}.contact__value:hover{color:var(--grey-400)}.contact__whatsapp{color:var(--black);background:#25d366;border-color:#25d366}.contact__whatsapp:hover{background:var(--white);border-color:var(--white);color:var(--black)}@media (width<=800px){.contact__grid{grid-template-columns:1fr;gap:2.5rem}.contact__list li{flex-direction:column;align-items:flex-start;gap:.75rem}}.footer{background:var(--black);color:var(--grey-400);border-top:1px solid #ffffff26}.footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.75rem;font-size:.85rem;display:flex}.footer__inner a:hover{color:var(--white)}
