@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg: #ffffff;--bg-2: #f7f7f7;--bg-3: #f0f0f0;--text-1: #0a0a0a;--text-2: #555555;--text-3: #999999;--border: #e8e8e8;--border-2: #d0d0d0;--accent: #0a0a0a;--accent-bg: rgba(10, 10, 10, .05);--font: "Inter", system-ui, sans-serif;--mono: "JetBrains Mono", monospace;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--r-full: 9999px;--nav-top: 24px;--nav-h: 80px}@media(max-width:960px){:root{--nav-top: 14px;--nav-h: 72px}}@media(max-width:480px){:root{--nav-top: 12px;--nav-h: 68px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font);background:var(--bg);color:var(--text-1);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{text-decoration:none;color:inherit}ul{list-style:none}img{display:block;max-width:100%}button{font-family:var(--font);cursor:pointer;border:none;outline:none;background:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:var(--r-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-2)}::selection{background:#0a0a0a1f;color:var(--text-1)}.navbar{position:relative;z-index:30;width:min(calc(100% - 4rem),1040px);height:var(--nav-h);display:flex;align-items:center;padding:0 1.75rem;background:#fffffff0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(0,0,0,.06);border-radius:28px;box-shadow:0 12px 34px #0000000f;margin:var(--nav-top) auto 0;transition:box-shadow .35s ease,background .35s ease}.navbar:before,.navbar:after{display:none}.navbar.scrolled{background:#fffffff5;box-shadow:0 16px 42px #00000014}.navbar__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;height:100%;margin:0 auto;position:relative;z-index:1}.navbar__logo{display:flex;align-items:center;justify-content:center;cursor:pointer;justify-self:start;width:106px;height:calc(var(--nav-h) - 19px);padding:0;background:none;border:none;text-decoration:none;overflow:hidden}.navbar__logo-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .25s ease}.navbar__logo:hover .navbar__logo-image{transform:scale(1.03)}.navbar__links{display:flex;align-items:center;gap:18px;justify-self:center;padding:0;background:transparent;border:none}.navbar__link{position:relative;padding:10px 12px;font-size:.845rem;font-weight:500;color:#666;border-radius:8px;transition:color .18s ease,background .18s ease;letter-spacing:.008em;white-space:nowrap;background:none;border:none;cursor:pointer;line-height:1}.navbar__link:hover{color:#111}.navbar__link.active{color:#0a0a0a;font-weight:600}.navbar__right{display:flex;align-items:center;gap:10px;justify-self:end}.navbar__avail{display:none;align-items:center;gap:7px;padding:6px 13px;border:1px solid #e2e2e2;border-radius:100px;font-size:.72rem;font-weight:500;color:#555;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#fafafa;transition:border-color .2s,background .2s,color .2s;cursor:default}.navbar__avail:hover{border-color:#c5c5c5;background:#f5f5f5;color:#333}.navbar__avail-dot{width:7px;height:7px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 2px #16a34a33;animation:pulse-green 2.5s ease-in-out infinite;flex-shrink:0}@keyframes pulse-green{0%,to{box-shadow:0 0 0 2px #16a34a33}50%{box-shadow:0 0 0 4px #16a34a14}}.navbar__cta{display:inline-flex;align-items:center;gap:7px;padding:12px 24px;font-size:.86rem;font-weight:600;color:#fff;background:#0a0a0a;border:1px solid transparent;border-radius:18px;cursor:pointer;letter-spacing:.01em;white-space:nowrap;transition:background .2s ease,transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden}.navbar__cta:before{content:"";position:absolute;top:0;left:-60%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transform:skew(-20deg);transition:left .5s ease}.navbar__cta:hover:before{left:130%}.navbar__cta:hover{background:#1a1a1a;box-shadow:0 6px 22px #0000002e;transform:translateY(-1px)}.navbar__cta:active{transform:translateY(0);box-shadow:none}.navbar__cta-arrow{font-size:.75rem;transition:transform .2s ease;display:inline-block}.navbar__cta:hover .navbar__cta-arrow{transform:translate(3px)}.navbar__hamburger{display:none;flex-direction:column;gap:5px;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid #e4e4e4;border-radius:10px;background:#fafafa;cursor:pointer;transition:border-color .2s,background .2s}.navbar__hamburger:hover{border-color:#ccc;background:#f0f0f0}.navbar__bar{width:16px;height:1.5px;background:#333;border-radius:2px;transition:transform .3s ease,opacity .2s ease,width .2s ease}.navbar__hamburger.open .navbar__bar:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.navbar__hamburger.open .navbar__bar:nth-child(2){opacity:0;width:0}.navbar__hamburger.open .navbar__bar:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.navbar__mobile{position:fixed;top:calc(var(--nav-top) + var(--nav-h));left:0;right:0;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.07);box-shadow:0 16px 40px #00000014;padding:12px 20px 24px;display:flex;flex-direction:column;gap:2px;z-index:99;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .22s ease,transform .22s ease}.navbar__mobile:before{display:none}.navbar__mobile.open{opacity:1;transform:translateY(0);pointer-events:all}.navbar__mobile>*{position:relative;z-index:1}.navbar__mobile-link{display:flex;align-items:center;gap:12px;padding:12px 14px;font-size:.9rem;font-weight:500;color:#666;border-radius:10px;transition:color .15s,background .15s,transform .2s;border:none;background:none;text-align:left;width:100%;cursor:pointer}.navbar__mobile-link:hover{color:#0a0a0a;background:#f4f4f4;transform:translate(3px)}.navbar__mobile-link.active{color:#0a0a0a;background:#f0f0f0;font-weight:600}.navbar__mobile-icon{font-size:.9rem;width:20px;text-align:center;flex-shrink:0;color:#bbb}.navbar__mobile-sep{height:1px;background:#ebebeb;margin:8px 0}.navbar__mobile-cta{margin-top:4px;padding:14px;font-size:.9rem;font-weight:600;color:#fff;background:#0a0a0a;border:none;border-radius:12px;text-align:center;cursor:pointer;transition:background .2s ease,box-shadow .2s ease;letter-spacing:.01em}.navbar__mobile-cta:hover{background:#1a1a1a;box-shadow:0 4px 16px #00000026}@media(max-width:1024px){.navbar{width:calc(100% - 2rem);padding:0 1.25rem;border-radius:24px}.navbar__inner{grid-template-columns:1fr auto}.navbar__links,.navbar__avail,.navbar__cta{display:none}.navbar__hamburger{display:flex}}@media(max-width:768px){.navbar{width:calc(100% - 1rem);padding:0 1rem;border-radius:22px}}@media(max-width:480px){.navbar{width:calc(100% - .75rem);padding:0 .9rem;border-radius:20px;margin-top:12px}.navbar__logo{width:88px;height:calc(var(--nav-h) - 24px)}}.hero{position:relative;min-height:max(calc(100svh - var(--nav-h) - var(--nav-top) + 120px),760px);display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;margin-top:calc(-1 * (var(--nav-h) + var(--nav-top)));padding:calc(clamp(2.5rem,6vh,4.5rem) + var(--nav-h) + var(--nav-top)) 2rem clamp(2.5rem,6vh,4.5rem);background:radial-gradient(circle at 50% 0%,rgba(10,10,10,.05),transparent 36%),linear-gradient(180deg,#fff,#fbfbfb)}.hero:before,.hero:after{content:"";position:absolute;pointer-events:none;z-index:0}.hero:before{top:-18%;right:-10%;bottom:-16%;left:-10%;background:radial-gradient(120% 92% at 50% -12%,rgba(10,10,10,.08),transparent 56%),radial-gradient(90% 70% at 50% 108%,rgba(10,10,10,.05),transparent 70%);opacity:.75;animation:slowGlow 20s ease-in-out infinite}.hero:after{top:-18%;right:-18%;bottom:-18%;left:-18%;background:repeating-linear-gradient(22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),repeating-linear-gradient(-22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px);opacity:.52;animation:driftLines 28s linear infinite}.hero__bg{position:absolute;pointer-events:none;z-index:0}.hero__bg--grid{top:0;right:0;bottom:0;left:0;position:relative;background-image:linear-gradient(rgba(10,10,10,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,10,.075) 1px,transparent 1px);background-size:74px 74px;opacity:.34;animation:gridShift 20s ease-in-out infinite}.hero__bg--grid:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(10,10,10,.24) .45px,transparent .45px),linear-gradient(#0a0a0a09,#0a0a0a00);background-size:3px 3px,100% 100%;opacity:.1}.hero__bg--orb{border-radius:9999px;filter:blur(10px);opacity:.6;animation:drift 24s ease-in-out infinite}.hero__bg--orb-1{width:18rem;height:18rem;top:-5rem;right:-4rem;background:radial-gradient(circle,rgba(10,10,10,.08),rgba(10,10,10,.02) 56%,transparent 74%)}.hero__bg--orb-2{width:14rem;height:14rem;left:-4rem;bottom:6rem;background:radial-gradient(circle,rgba(10,10,10,.05),transparent 68%);animation-duration:28s;animation-direction:reverse}.hero__inner{position:relative;z-index:1;width:min(100%,1120px);margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center}.hero__kicker{font-size:.8rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#9a9a9a;margin-bottom:1.1rem}.hero__title{font-size:clamp(2.75rem,5.4vw,5.15rem);font-weight:560;line-height:1.06;letter-spacing:-.038em;color:#202020;max-width:none;margin-inline:auto;text-wrap:balance}.hero__title-main{display:block;width:fit-content;margin-inline:auto;white-space:nowrap;font-weight:560;color:#2a2a2a}.hero__title-line{display:block;position:relative;width:fit-content;margin:.16em auto 0;white-space:nowrap;font-weight:760;font-style:normal;color:#0f0f0f;letter-spacing:-.036em;padding-bottom:.05em}.hero__title-line:after{content:"";position:absolute;left:-.6%;right:-.6%;bottom:-.01em;height:.26em;border-bottom:6px solid #20d596;border-radius:0 0 58% 54%/0 0 100% 100%;box-shadow:none;transform:rotate(-.2deg)}.hero__desc{margin-top:1.6rem;max-width:820px;font-size:clamp(1rem,1.6vw,1.35rem);line-height:1.8;color:#606060}.hero__cta{margin-top:2.3rem;display:inline-flex;align-items:center;gap:.62rem;padding:.6rem .7rem .6rem 1.2rem;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg,#1d1d1d,#0f0f0f);color:#fff;font-size:.95rem;font-weight:620;letter-spacing:.01em;box-shadow:0 10px 22px #0003,0 0 0 1px #20d5964d,inset 0 1px #ffffff24;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;position:relative;overflow:hidden}.hero__cta:hover{transform:translateY(-2px);background:linear-gradient(180deg,#252525,#161616);box-shadow:0 14px 28px #0000003d,0 0 0 1px #20d5966b,inset 0 1px #ffffff2e}.hero__cta:before{content:"";position:absolute;top:0;left:-48%;width:38%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);transform:skew(-20deg);transition:left .45s ease}.hero__cta:hover:before{left:122%}.hero__cta:after{content:"";position:absolute;top:-30%;right:-12%;bottom:-30%;left:-12%;z-index:-1;background:radial-gradient(ellipse at center,rgba(32,213,150,.34),transparent 68%);filter:blur(10px);opacity:.7;animation:ctaGlow 3.8s ease-in-out infinite}.hero__cta-text{white-space:nowrap}.hero__cta-chip{display:inline-flex;align-items:center;gap:.38rem;padding:.34rem .62rem;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);font-size:.76rem;font-weight:560;color:#eaeaea;line-height:1;white-space:nowrap}.hero__cta-dot{width:.4rem;height:.4rem;border-radius:50%;background:#22d79b;box-shadow:0 0 0 3px #22d79b38}.hero__cta-icon{width:1.9rem;height:1.9rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.86rem;font-weight:700;background:#ffffff26;border:1px solid rgba(255,255,255,.18);transform:translate(0);transition:transform .2s ease,background .2s ease}.hero__cta:hover .hero__cta-icon{transform:translate(2px);background:#ffffff38}@keyframes drift{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-14px,0) scale(1.05)}}@keyframes gridShift{0%,to{opacity:.3;transform:translateZ(0);background-position:0 0,0 0}50%{opacity:.4;transform:translate3d(0,-8px,0);background-position:0 -14px,-14px 0}}@keyframes driftLines{0%{transform:translateZ(0)}50%{transform:translate3d(4%,-3%,0)}to{transform:translateZ(0)}}@keyframes slowGlow{0%,to{transform:scale(1) translateZ(0)}50%{transform:scale(1.04) translate3d(0,-10px,0)}}@keyframes ctaGlow{0%,to{opacity:.55;transform:scale(.98)}50%{opacity:.85;transform:scale(1.03)}}@media(prefers-reduced-motion:reduce){.hero:before,.hero:after,.hero__bg--grid,.hero__bg--orb,.hero__bg--orb-2,.hero__cta:after{animation:none}}@media(max-width:1024px){.hero{min-height:max(calc(100svh - var(--nav-h) - var(--nav-top) + 56px),640px);padding:calc(3.5rem + var(--nav-h) + var(--nav-top)) 1.5rem 3rem}.hero__title{max-width:14ch}.hero__title-main,.hero__title-line{width:auto;white-space:normal}.hero__desc{max-width:720px}}@media(max-width:768px){.hero{min-height:max(calc(100svh - var(--nav-h) - var(--nav-top) + 24px),560px);padding:calc(3rem + var(--nav-h) + var(--nav-top)) 1rem 2.5rem}.hero__kicker{margin-bottom:.9rem}.hero__title{font-size:clamp(2.35rem,12.2vw,3.35rem);letter-spacing:-.05em;max-width:12ch}.hero__desc{margin-top:1.25rem;font-size:1rem;line-height:1.7}.hero__title-line:after{height:5px}.hero__cta{width:100%;justify-content:center;padding:.56rem .62rem .56rem .9rem;gap:.5rem}.hero__cta-chip{padding:.3rem .52rem;font-size:.72rem}.hero__cta-icon{width:1.75rem;height:1.75rem}}@media(max-width:480px){.hero{min-height:max(calc(100svh - var(--nav-h) - var(--nav-top) + 12px),480px);padding:calc(2.5rem + var(--nav-h) + var(--nav-top)) .75rem 2rem}.hero__title{font-size:clamp(2rem,11vw,2.75rem);max-width:10ch}.hero__desc{font-size:.95rem;margin-top:1rem;line-height:1.6}.hero__cta{padding:.7rem .62rem .7rem .9rem}}.services{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(3rem,8vh,6rem) 1.25rem;background:radial-gradient(circle at 50% 0%,rgba(10,10,10,.05),transparent 36%),radial-gradient(120% 92% at 50% -12%,rgba(10,10,10,.08),transparent 56%),radial-gradient(90% 70% at 50% 108%,rgba(10,10,10,.05),transparent 70%),repeating-linear-gradient(22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),repeating-linear-gradient(-22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),linear-gradient(180deg,#fff,#fbfbfb)}.services__inner{width:min(100%,1120px);margin:0 auto}.services__panel{background:#fff;border:1px solid #dedede;border-radius:2rem;padding:clamp(2rem,4vw,3rem);box-shadow:0 24px 52px #00000014,0 2px #fffc inset}.services__header{padding-bottom:1.4rem;margin-bottom:1.6rem;border-bottom:1px solid #e7e7e7}.services__label{font-family:var(--mono);font-size:.78rem;font-weight:550;letter-spacing:.14em;text-transform:uppercase;color:#7a7a7a;margin-bottom:.95rem}.services__title{font-size:70px;font-weight:600;letter-spacing:-.04em;line-height:1.05;color:#101010;max-width:14ch;text-wrap:balance}.services__grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.service-card{flex:0 1 calc((100% - 2rem) / 3);max-width:calc((100% - 2rem) / 3);min-width:260px;display:flex;flex-direction:column;background:#fafafa;border:1px solid #e8e8e8;border-radius:1.1rem;padding:1.25rem 1.15rem 1.2rem;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.service-card:hover{border-color:#d8d8d8;transform:translateY(-2px);box-shadow:0 10px 18px #0000000f}.service-card__index{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#8a8a8a;margin-bottom:.65rem}.service-card__icon{position:relative;width:2.75rem;height:2.75rem;border-radius:.85rem;display:inline-flex;align-items:center;justify-content:center;margin-bottom:.75rem;color:#1a1a1a;animation:serviceIconFloat 3.4s ease-in-out infinite;animation-delay:var(--icon-delay, 0s)}.service-card__icon:after{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:1rem;background:inherit;opacity:.28;filter:blur(12px);z-index:-1;animation:serviceIconGlow 3.4s ease-in-out infinite;animation-delay:var(--icon-delay, 0s)}.service-card__icon svg{width:1.35rem;height:1.35rem;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.service-card__icon--code{background:linear-gradient(145deg,#d6ecff,#b8dfff)}.service-card__icon--chat{background:linear-gradient(145deg,#d4f8de,#b7efc9)}.service-card__icon--calendar{background:linear-gradient(145deg,#ffe8c7,#ffd7a4)}.service-card__icon--portfolio{background:linear-gradient(145deg,#f5dbff,#e8c4f8)}.service-card__icon--launch{background:linear-gradient(145deg,#ffd8d8,#ffc1c1)}.service-card__title{font-size:clamp(1.15rem,1.9vw,1.45rem);font-weight:700;letter-spacing:-.02em;color:#121212;line-height:1.2}.service-card__content{margin-top:.58rem;font-size:.93rem;line-height:1.5;color:#575757}.service-card__chips{margin-top:.85rem;margin-bottom:.35rem;display:flex;flex-wrap:wrap;gap:.45rem}.service-card__chip{font-size:.74rem;font-weight:600;letter-spacing:.02em;color:#3f3f3f;background:#efefef;border:1px solid #dfdfdf;border-radius:999px;padding:.26rem .55rem}.service-card__footer{margin-top:auto;padding-top:1rem;display:flex;align-items:center;justify-content:space-between;border-top:1px dashed #dfdfdf}.service-card__badge{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#666}.service-card__cta{display:inline-flex;align-items:center;gap:.2rem;font-size:.82rem;font-weight:600;color:#1a1a1a;transition:transform .25s ease,color .25s ease}.service-card__cta:after{content:"->"}.service-card:hover .service-card__cta{color:#000;transform:translate(2px)}.service-card__cta:focus-visible{outline:2px solid #1a1a1a;outline-offset:3px;border-radius:4px}@media(max-width:1024px){.services{padding:2.2rem 1rem 3rem}.services__title{font-size:clamp(2.4rem,7vw,3.6rem);max-width:16ch}.service-card{flex-basis:calc((100% - 1rem)/2);max-width:calc((100% - 1rem)/2)}}@media(max-width:768px){.services{padding:1.4rem .75rem 2rem}.services__panel{border-radius:1.1rem;padding:1rem .85rem}.services__header{padding-bottom:1rem;margin-bottom:1.1rem}.services__label{font-size:.72rem;letter-spacing:.12em}.services__title{font-size:clamp(2rem,10.2vw,2.8rem);max-width:none;line-height:1.04}.service-card{flex-basis:100%;max-width:100%;min-width:0;border-radius:.95rem;padding:1rem .9rem}.service-card__content{font-size:.9rem}.service-card__chips{margin-top:.75rem}.service-card__footer{padding-top:.75rem}}@media(max-width:480px){.services{padding:1rem .5rem 1.5rem}.services__panel{padding:.85rem .75rem;border-radius:1rem}.services__title{font-size:2.2rem}.service-card{padding:.85rem .75rem}.service-card__title{font-size:1.1rem}.service-card__content{font-size:.85rem}}@keyframes serviceIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes serviceIconGlow{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.38;transform:scale(1.06)}}@media(prefers-reduced-motion:reduce){.service-card__icon,.service-card__icon:after{animation:none}}.projects{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:clamp(2rem,5vh,3.25rem) 1.25rem clamp(3rem,8vh,6rem);background:radial-gradient(circle at 50% 0%,rgba(10,10,10,.05),transparent 36%),radial-gradient(120% 92% at 50% -12%,rgba(10,10,10,.08),transparent 56%),radial-gradient(90% 70% at 50% 108%,rgba(10,10,10,.05),transparent 70%),repeating-linear-gradient(22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),repeating-linear-gradient(-22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),linear-gradient(180deg,#fff,#fbfbfb)}.projects__inner{width:min(100%,1120px);margin:0 auto}.projects__panel{background:#fff;border:1px solid #dedede;border-radius:2rem;padding:clamp(2rem,4vw,3rem);box-shadow:0 24px 52px #00000014,0 2px #fffc inset}.projects__top{display:block}.projects__label{font-family:var(--mono);font-size:.78rem;font-weight:550;letter-spacing:.14em;text-transform:uppercase;color:#7a7a7a;margin-bottom:.95rem}.projects__title{font-size:70px;font-weight:600;letter-spacing:-.048em;color:#0f1115;line-height:1.03;max-width:15.5ch;text-wrap:balance}.projects__divider{margin-top:1.5rem;border-top:1px solid #e7e7e7}.projects__grid{margin-top:1.6rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-card{overflow:hidden;border-radius:1.25rem;border:1px solid #dddddd;background:#fff;box-shadow:0 12px 22px #00000014,0 1px #fffc inset}.project-card__visual{height:260px;position:relative;padding:.9rem;overflow:hidden;background:#eef1f4}.project-card__visual--image{padding:0;background:#fff}.project-card__visual--image:after{display:none}.project-card__image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:top center;transform:scale(1);transition:transform .35s ease}.project-card__visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.4) 100%)}.project-card__visual--legal{background:radial-gradient(circle at 20% 24%,rgba(255,220,160,.2),transparent 28%),radial-gradient(circle at 75% 30%,rgba(12,44,29,.8),transparent 44%),linear-gradient(120deg,#0c3827,#0b4f36 42%,#102f24)}.project-card__visual--construction{background:linear-gradient(180deg,#fee018 0,#fee018 6%,#f7f7f7 6%,#f7f7f7 73%,#b7c4d4 73%),linear-gradient(120deg,#d9e2ef,#fafafa)}.project-card__visual--restaurant{background:radial-gradient(circle at 18% 22%,rgba(255,198,160,.25),transparent 28%),radial-gradient(circle at 82% 20%,rgba(250,119,50,.35),transparent 36%),linear-gradient(125deg,#4b1c0f,#7e2f1a 44%,#b14a2b)}.project-card__view{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%) scale(.84);width:2.9rem;height:2.9rem;display:inline-flex;align-items:center;justify-content:center;line-height:1;border-radius:999px;background:#fff;border:none;color:#111;font-size:1rem;font-weight:700;text-decoration:none;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.project-card:hover .project-card__image{transform:scale(1.08)}.project-card:hover .project-card__view{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.project-card__body{padding:1rem 1rem 1.05rem}.project-card__title{font-size:clamp(1.2rem,1.7vw,1.45rem);font-weight:650;letter-spacing:-.03em;color:#0f1720;font-family:inter}.project-card__desc{margin-top:.55rem;font-size:.93rem;line-height:1.45;color:#5b6673}@media(max-width:1024px){.projects{padding:1.8rem 1rem 2.4rem}.projects__panel{border-radius:1.35rem;padding:1.15rem 1rem}.projects__title{font-size:clamp(2.2rem,8vw,3.6rem);max-width:none}.projects__grid{grid-template-columns:1fr}}@media(max-width:768px){.projects{padding:1.4rem .75rem 2rem}.project-card{border-radius:1rem}.project-card__visual{height:205px}.project-card__body{padding:.9rem .85rem 1rem}.project-card__desc{font-size:.9rem}}@media(max-width:480px){.projects{padding:1rem .5rem 1.5rem}.projects__panel{border-radius:1rem;padding:1rem .75rem}.projects__title{font-size:2.2rem}.project-card__visual{height:180px}.project-card__title{font-size:1.1rem}.project-card__desc{font-size:.85rem}}.pricing{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:clamp(.4rem,1.4vh,.6rem) 1.25rem clamp(3rem,5vh,6rem);background:radial-gradient(circle at 50% 0%,rgba(10,10,10,.05),transparent 36%),radial-gradient(120% 92% at 50% -12%,rgba(10,10,10,.08),transparent 56%),radial-gradient(90% 70% at 50% 108%,rgba(10,10,10,.05),transparent 70%),repeating-linear-gradient(22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),repeating-linear-gradient(-22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),linear-gradient(180deg,#fff,#fbfbfb)}.pricing__inner{width:min(100%,1120px);margin:0 auto}.pricing__panel{background:#fff;border:1px solid #dedede;border-radius:2rem;padding:clamp(2rem,4vw,3rem);box-shadow:0 24px 52px #00000014,0 2px #fffc inset}.pricing-cta{margin-top:5rem;border-radius:2rem;border:1px solid #0f1519;background:radial-gradient(120% 150% at 50% -20%,#153348 0%,transparent 55%),linear-gradient(180deg,#020a0f,#01050a);color:#eef1f3;text-align:center;padding:clamp(2.2rem,4.5vw,4rem) clamp(1rem,3vw,2rem)}.pricing-cta__title{font-size:clamp(2rem,5vw,3.7rem);line-height:1.05;letter-spacing:-.04em;font-weight:700}.pricing-cta__text{margin:1rem auto 0;max-width:50%;font-size:clamp(1rem,2.1vw,1.05rem);line-height:1.55;color:#bac4cf}.pricing-cta__actions{margin-top:1.8rem;display:inline-flex;align-items:center;gap:.8rem}.pricing-cta__book,.pricing-cta__phone{height:4rem;border-radius:1.05rem;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.pricing-cta__book{min-width:clamp(13.5rem,20vw,15rem);padding:0 .42rem 0 1.05rem;justify-content:center;gap:.55rem;border-radius:999px;background:#fff;color:#0c1014;font-size:1rem;font-weight:600;letter-spacing:-.01em;border:1px solid #d9dee5}.pricing-cta__book-text{line-height:1}.pricing-cta__book-icon{width:2.75rem;height:2.75rem;border-radius:999px;background:#11151b;color:#fff;display:inline-flex;align-items:center;justify-content:center}.pricing-cta__book-icon svg{width:1.15rem;height:1.15rem;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pricing-cta__phone{width:6.5rem;background:#1f242a;border:1px solid #363c43;color:#e9edf1}.pricing-cta__phone svg{width:1.35rem;height:1.35rem;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pricing-cta__book:hover,.pricing-cta__phone:hover{transform:translateY(-1px);box-shadow:0 10px 18px #00000040}.pricing-cta__book:focus-visible,.pricing-cta__phone:focus-visible{outline:2px solid #ffffff;outline-offset:3px}.pricing-cta__trust{margin-top:.9rem;font-size:.86rem;font-family:var(--mono);letter-spacing:.05em;color:#8ea0b0}.pricing__header{padding-bottom:1.4rem;margin-bottom:1.6rem;border-bottom:1px solid #e7e7e7}.pricing__label{font-family:var(--mono);font-size:.78rem;font-weight:550;letter-spacing:.14em;text-transform:uppercase;color:#7a7a7a;margin-bottom:.95rem}.pricing__title{font-size:70px;font-weight:600;letter-spacing:-.04em;line-height:1.05;color:#101010;max-width:18ch;text-wrap:balance}.pricing__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.pricing-card{position:relative;border-radius:1.85rem;padding:1.6rem 1.45rem 1.35rem;border:1px solid #d9dfdf;min-height:100%;display:flex;flex-direction:column;box-shadow:0 10px 22px #0f16200f,0 1px #ffffffbf inset;transition:transform .2s ease,box-shadow .2s ease}.pricing-card:hover{transform:translateY(-2px);box-shadow:0 14px 26px #0f16201a,0 1px #ffffffd1 inset}.pricing-card--basic{background:#eaf4ef;border-color:#c8e8d4}.pricing-card--standard{background:#edf2ff;border-color:#d2dcff}.pricing-card--premium{background:#f7f1eb;border-color:#eadbcb}.pricing-card__badge{position:absolute;top:1rem;right:1rem;padding:.38rem .82rem;border-radius:999px;background:#2a6df4;color:#fff;font-size:.63rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.pricing-card__name{font-size:clamp(1.9rem,3vw,2.25rem);font-weight:500;letter-spacing:-.03em;color:#0f1012}.pricing-card__desc{color:#374151;font-size:.97rem;line-height:1.55;min-height:0}.pricing-card__payment{margin-top:.9rem;font-family:var(--mono);font-size:.76rem;letter-spacing:.11em;text-transform:uppercase;color:#5f6c7b}.pricing-card__price{margin-top:.35rem;font-size:clamp(2.05rem,4vw,3rem);line-height:1;letter-spacing:-.035em;font-weight:500;color:#121317}.pricing-card__list{margin-top:1.25rem;display:grid;gap:.72rem}.pricing-card__list li{font-size:1.02rem;color:#1f2937;line-height:1.35;position:relative;padding-left:1.65rem}.pricing-card__list li:before{content:"✓";position:absolute;left:0;top:0;color:#0f8f5f;font-weight:700}.pricing-card__cta{margin-top:25px;width:100%;text-align:center;padding:.88rem .95rem;border-radius:1rem;font-weight:600;font-size:1rem;color:#fff;background:#0f9d69;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.pricing-card--standard .pricing-card__cta{background:#2a63ea}.pricing-card--premium .pricing-card__cta{background:#b86b1b}.pricing-card__cta:hover{transform:translateY(-1px);box-shadow:0 10px 18px #00000029}.pricing-card__cta:focus-visible{outline:2px solid #121317;outline-offset:3px}@media(max-width:1024px){.pricing{padding:1.8rem 1rem 2.8rem}.pricing__panel{border-radius:1.35rem;padding:1.3rem 1.05rem}.pricing__title{font-size:clamp(2.2rem,7vw,3.7rem);max-width:none}.pricing-cta__text{max-width:86%}.pricing__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.pricing{padding:1.3rem .75rem 2rem}.pricing__panel{border-radius:1.1rem;padding:1rem .85rem}.pricing__header{padding-bottom:.9rem;margin-bottom:1rem}.pricing__label{font-size:.72rem;letter-spacing:.12em}.pricing__title{font-size:clamp(2rem,9.8vw,2.85rem);line-height:1.05}.pricing__grid{grid-template-columns:1fr}.pricing-card{border-radius:1.3rem;padding:1.3rem 1rem 1rem}.pricing-card__badge{top:.8rem;right:.8rem}.pricing-cta{margin-top:2.2rem;border-radius:1.4rem;padding:1.5rem .9rem}.pricing-cta__title{font-size:clamp(1.8rem,9vw,2.5rem)}.pricing-cta__text{max-width:100%;font-size:.95rem}.pricing-cta__actions{width:100%;flex-direction:column}.pricing-cta__book,.pricing-cta__phone{width:100%;min-width:0;height:3.3rem}}@media(max-width:480px){.pricing{padding:1rem .5rem 1.5rem}.pricing__panel{padding:.85rem .75rem;border-radius:1rem}.pricing__title{font-size:2.2rem}.pricing-card{padding:1.1rem .85rem .9rem;border-radius:1rem}.pricing-card__name{font-size:1.8rem}.pricing-card__price{font-size:2rem}.pricing-cta{margin-top:1.5rem;padding:1.25rem .75rem;border-radius:1.25rem}.pricing-cta__title{font-size:1.6rem}.pricing-cta__book,.pricing-cta__phone{height:3rem;font-size:.95rem}}.contact{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:clamp(2rem,5vh,3.25rem) 1.25rem clamp(3rem,8vh,6rem);background:radial-gradient(circle at 50% 0%,rgba(10,10,10,.05),transparent 36%),radial-gradient(120% 92% at 50% -12%,rgba(10,10,10,.08),transparent 56%),radial-gradient(90% 70% at 50% 108%,rgba(10,10,10,.05),transparent 70%),repeating-linear-gradient(22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),repeating-linear-gradient(-22deg,rgba(10,10,10,.03) 0 1px,transparent 1px 52px),linear-gradient(180deg,#fff,#fbfbfb)}.contact__inner{width:min(100%,1120px);margin:0 auto}.contact__panel{background:#fff;border:1px solid #dedede;border-radius:2rem;padding:clamp(1.25rem,3vw,2rem);box-shadow:0 24px 52px #00000014,0 2px #fffc inset;display:grid;grid-template-columns:.95fr 1.05fr;gap:1rem}.contact__intro{display:flex;flex-direction:column;border-radius:1.5rem;padding:clamp(1.2rem,2.5vw,2rem);background:radial-gradient(120% 110% at 100% 0%,rgba(37,99,235,.12),transparent 55%),linear-gradient(180deg,#f7f9ff,#f2f6ff);border:1px solid #dde8ff}.contact__label{grid-column:1 / -1;width:fit-content;font-family:var(--mono);font-size:.78rem;font-weight:550;letter-spacing:.14em;text-transform:uppercase;color:#858a93;margin:0 0 .1rem}.contact__title{font-size:clamp(2rem,4vw,3rem);line-height:1.03;letter-spacing:-.045em;color:#0f172a;max-width:13ch}.contact__text{margin-top:1rem;color:#4e5d76;font-size:1rem;line-height:1.6;max-width:36ch}.contact__intro-divider{margin-top:1.1rem;width:100%;height:1px;background:linear-gradient(90deg,#99b1e4bf,#99b1e433)}.contact__brand-card{margin-top:.95rem;border-radius:1.3rem;border:1px solid #273244;padding:1.25rem 1rem;text-align:center;background:radial-gradient(120% 130% at 100% 100%,rgba(16,185,129,.14),transparent 45%),linear-gradient(180deg,#10141b,#0b0f16)}.contact__brand-name{font-size:clamp(1.55rem,3vw,2rem);font-weight:800;letter-spacing:-.02em;color:#f5f7fb}.contact__brand-sub{margin-top:.35rem;color:#9da7b8;font-size:clamp(.9rem,2vw,1rem)}.contact__brand-pill{margin:.95rem auto 0;width:fit-content;display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;border:1px solid rgba(16,185,129,.45);background:#064e3b52;color:#18e2af;font-size:.9rem;padding:.45rem .9rem}.contact__brand-dot{width:.56rem;height:.56rem;border-radius:999px;background:#10b981;box-shadow:0 0 0 4px #10b98133}.contact__meta-row{margin-top:.95rem;padding-top:.9rem;border-top:1px solid rgba(148,163,184,.28);display:flex;align-items:center;justify-content:space-between;gap:.8rem}.contact__meta-item{min-width:0;display:inline-flex;align-items:center;gap:.42rem;color:#d4deec;font-size:.83rem;font-weight:500;line-height:1.35}.contact__meta-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact__meta-item:hover{color:#fff}.contact__meta-item svg{width:.9rem;height:.9rem;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.contact__meta-item--right{justify-content:flex-end;text-align:right}.contact__socials{margin-top:1rem;padding-top:0;display:flex;justify-content:center;align-items:center;gap:.55rem;margin-bottom:0}.contact__social{width:2.35rem;height:2.35rem;border-radius:999px;border:1px solid #c8d8ff;background:#fff;color:#183467;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.contact__social svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.contact__social:hover{transform:translateY(-1px);border-color:#9fbaf0;box-shadow:0 8px 16px #18346724}.contact__form{border-radius:1.5rem;border:1px solid #e4e7eb;background:#fbfbfc;padding:clamp(1rem,2.5vw,1.4rem);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.contact__field{display:grid;gap:.42rem}.contact__field label{font-size:.78rem;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#5d6674}.contact__field input,.contact__field select,.contact__field textarea{width:100%;box-sizing:border-box;border:1px solid #d7dce3;border-radius:.85rem;background:#fff;color:#101828;font-size:.95rem;padding:.78rem .9rem;transition:border-color .2s ease,box-shadow .2s ease}.contact__select-wrap{position:relative;width:100%}.contact__select-wrap:after{content:"";position:absolute;right:1.1rem;top:50%;transform:translateY(-50%);border-left:4.5px solid transparent;border-right:4.5px solid transparent;border-top:5.5px solid #5d6674;pointer-events:none}.contact__field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:2.5rem}.contact__field input:focus,.contact__field select:focus,.contact__field textarea:focus{outline:none;border-color:#7ea0e8;box-shadow:0 0 0 3px #2563eb1f}.contact__field textarea{resize:vertical;min-height:120px}.contact__field--full{grid-column:1 / -1}.contact__actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:.2rem}.contact__submit,.contact__whatsapp{height:2.9rem;border-radius:999px;padding:0 1.2rem;font-size:.92rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease}.contact__submit:disabled{opacity:.75;cursor:not-allowed;transform:none;box-shadow:none}.contact__submit{border:1px solid #0f172a;background:#0f172a;color:#fff}.contact__whatsapp{border:1px solid #d0d7e2;background:#fff;color:#1f2e43}.contact__submit:hover,.contact__whatsapp:hover{transform:translateY(-1px);box-shadow:0 10px 18px #0f172a1f}.contact__status{grid-column:1 / -1;margin-top:.2rem;border-radius:.8rem;padding:.7rem .9rem;font-size:.88rem;line-height:1.45;border:1px solid transparent;display:inline-flex;align-items:center;gap:.5rem;animation:statusReveal .28s ease both}.contact__status--success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.contact__status--error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.contact__status-icon{width:1.2rem;height:1.2rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#10b981;color:#fff;font-size:.76rem;font-weight:700;line-height:1;animation:statusPop .38s cubic-bezier(.2,.9,.2,1) both}@keyframes statusReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes statusPop{0%{transform:scale(.55)}65%{transform:scale(1.08)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.contact__status,.contact__status-icon{animation:none}}@media(max-width:1024px){.contact{padding:1.6rem 1rem 2.6rem}.contact__panel{grid-template-columns:1fr;border-radius:1.35rem;padding:1.25rem}.contact__title{max-width:16ch}.contact__text{max-width:none}}@media(max-width:768px){.contact{padding:1.3rem .75rem 2rem}.contact__panel{border-radius:1.1rem;padding:1rem}.contact__intro,.contact__form{border-radius:1.25rem}.contact__intro{padding:1.25rem}.contact__title{font-size:clamp(2rem,8vw,2.6rem);line-height:1.05;max-width:none}.contact__text{font-size:.98rem;line-height:1.5}.contact__brand-card{padding:1.1rem .9rem}.contact__brand-sub{font-size:.95rem}.contact__brand-pill{max-width:100%;text-align:center;font-size:.86rem}.contact__form{grid-template-columns:1fr;padding:1.1rem}.contact__meta-row{flex-direction:column;align-items:stretch;gap:.6rem}.contact__meta-item,.contact__meta-item--right{justify-content:center;text-align:center}.contact__meta-item span{white-space:normal;word-break:break-word;text-wrap:balance}.contact__actions{width:100%;flex-direction:column;align-items:stretch;gap:.8rem}.contact__submit,.contact__whatsapp{width:100%;min-height:3rem}}@media(max-width:480px){.contact{padding:1rem .5rem 1.5rem}.contact__panel{padding:.75rem}.contact__intro,.contact__form{padding:1rem}.contact__label{font-size:.7rem;letter-spacing:.12em}.contact__field label{font-size:.75rem}.contact__field input,.contact__field select,.contact__field textarea{font-size:.95rem;padding:.8rem .9rem}.contact__social{width:2.15rem;height:2.15rem}.contact__social svg{width:.92rem;height:.92rem}}#root{min-height:100vh}main{min-height:100vh}
