:root{--bg:#101011;--panel:#1b1b1d;--line:#303033;--text:#f7f7f8;--muted:#b7b7bb;--soft:#85858a;--red:#f00646;--red2:#ff164e;--radius:34px;--content:min(1180px,calc(100% - 9vw))}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden;font-size:16px;line-height:1.5}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}.noise{pointer-events:none;position:fixed;inset:0;z-index:50;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.section{width:var(--content);max-width:1600px;margin-inline:auto}.topbar{position:fixed;top:28px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 9vw));height:78px;border:1px solid #343437;border-radius:999px;background:rgba(29,29,31,.72);backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);display:flex;align-items:center;justify-content:space-between;padding:10px 20px 10px 13px;z-index:60;transition:top .4s,background .4s}.brand-lockup{display:flex;align-items:center;gap:14px;font-weight:700;font-size:19px}.brand-mark{width:49px;height:49px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 25%,#ff244e,#df002f 58%,#780019);box-shadow:inset 0 1px 5px #ff8296a0,0 0 22px #f0064620;flex-shrink:0}.brand-mark span{font-size:29px;font-weight:800;letter-spacing:-3px;transform:skew(-10deg);text-shadow:0 2px 8px #600018}.menu-toggle{width:43px;height:43px;border:0;background:none;display:grid;align-content:center;gap:6px;padding:7px}.menu-toggle span{height:3px;width:28px;background:#f3f3f4;border-radius:4px;display:block;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .25s,width .3s}.menu-toggle span:nth-child(2){width:23px;justify-self:end}.menu-toggle.active span:first-child{transform:translateY(9px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle.active span:last-child{transform:translateY(-9px) rotate(-45deg);width:28px}.menu-overlay{position:fixed;inset:0;z-index:55;display:flex;justify-content:center;align-items:flex-start;padding:28px 4.5vw;opacity:0;visibility:hidden;transition:opacity .45s,visibility .45s}.menu-overlay.open{opacity:1;visibility:visible}.menu-glass{width:min(1180px,100%);min-height:420px;border:1px solid #46464b;border-radius:46px;background:rgba(34,34,37,.78);backdrop-filter:blur(36px) saturate(145%);-webkit-backdrop-filter:blur(36px) saturate(145%);padding:16px 22px 26px;transform:translateY(-18px) scale(.98);transition:transform .55s cubic-bezier(.16,1,.3,1);box-shadow:0 30px 120px #0008}.menu-overlay.open .menu-glass{transform:translateY(0) scale(1)}.menu-top{display:flex;justify-content:space-between;align-items:center}.menu-close,.modal-close{border:0;background:none;font-size:46px;line-height:1;font-weight:300;width:48px;height:48px}.menu-links{display:flex;flex-direction:column;align-items:center;gap:14px;margin:46px auto 36px}.menu-links a{font-size:clamp(26px,4vw,44px);color:#e4e4e6;transition:color .2s,transform .2s}.menu-links a:hover{color:white;transform:translateY(-2px)}.menu-links .menu-contact{font-size:23px;background:var(--red);padding:10px 35px;border-radius:999px;margin-top:10px;box-shadow:0 0 24px #f0064635}.menu-foot{display:flex;justify-content:space-between;color:#88888d;font-size:12px;letter-spacing:.12em}.hero{padding-top:clamp(165px,19vw,260px);min-height:100svh;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;padding-bottom:65px}.hero-title{font-size:clamp(4.4rem,16.2vw,13.5rem);font-weight:850;line-height:.78;letter-spacing:-.075em;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;width:100%;white-space:nowrap}.hero-title .accent{font-size:.71em;letter-spacing:-.065em;margin-top:.12em}.accent{color:var(--red)}.avatar-stage{position:relative;z-index:3;margin-top:-1.2vw;width:min(57vw,590px);aspect-ratio:1;touch-action:none;cursor:grab;user-select:none}.avatar-stage:active{cursor:grabbing}.hero-avatar{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 20px 32px #0007);will-change:transform;transition:filter .3s}.avatar-stage:hover .hero-avatar{filter:drop-shadow(0 24px 35px #f0064610)}.avatar-hint{position:absolute;bottom:6%;right:-3%;font-size:11px;color:#888;opacity:0;transition:opacity .25s}.avatar-stage:hover .avatar-hint{opacity:.7}.hero-copy{font-size:clamp(18px,2.1vw,28px);line-height:1.5;color:#bdbdc1;margin:20px 0 28px;max-width:800px}.primary-cta{border:1px solid #ff6488;background:linear-gradient(110deg,#fa0647,#e9003c);border-radius:999px;min-height:64px;padding:0 35px;color:#fff;font-size:18px;display:inline-flex;align-items:center;justify-content:center;gap:14px;box-shadow:0 10px 30px #f0064630,inset 0 1px 2px #ff92ad80;transition:transform .25s,box-shadow .25s,background .25s;position:relative}.primary-cta:hover{transform:translateY(-3px);box-shadow:0 14px 42px #f0064645}.expand-cta{position:relative;min-width:300px;overflow:hidden;transition:width .5s cubic-bezier(.2,.8,.2,1),padding .5s,min-width .5s;white-space:nowrap}.expand-cta .cta-avatar-mini,.expand-cta .cta-you,.expand-cta .cta-expanded-text,.expand-cta .cta-x{display:none}.expand-cta.expanded{width:min(530px,90vw);padding:8px 16px;justify-content:space-between;min-height:78px}.expand-cta.expanded>span:first-child{display:none}.expand-cta.expanded .cta-avatar-mini,.expand-cta.expanded .cta-you,.expand-cta.expanded .cta-expanded-text,.expand-cta.expanded .cta-x{display:flex;align-items:center;justify-content:center}.cta-avatar-mini{width:53px;height:53px;border-radius:50%;overflow:hidden;border:2px solid #ffffff3d}.cta-avatar-mini img{width:100%;height:100%;object-fit:cover}.cta-you{background:#fff;color:#18181a;border-radius:50%;width:53px;height:53px;font-weight:600}.cta-expanded-text{flex:1;font-size:16px}.cta-x{font-size:30px;line-height:1;width:28px;height:40px;font-weight:300}.hero-note{color:#65656a;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-top:24px}.social-proof{border-top:1px solid #29292b;border-bottom:1px solid #29292b;padding:70px 0 42px;display:flex;align-items:center;flex-direction:column;gap:15px}.client-faces{display:flex;align-items:center;justify-content:center;padding-left:10px}.client-faces img{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid var(--bg);margin-left:-10px;background:#29292b}.rating{text-align:center;display:flex;flex-direction:column;gap:3px;color:#d2d2d5;font-size:16px}.stars{color:var(--red);letter-spacing:5px;font-size:22px;line-height:1.3}.client-logos{width:100%;display:flex;align-items:center;justify-content:space-around;gap:25px;margin-top:36px;color:#77777d;font-weight:750;letter-spacing:.05em;font-size:clamp(11px,1.3vw,17px);flex-wrap:wrap}.client-logos span:first-child{font-size:24px;color:#b7b7ba;letter-spacing:-.06em}.logo-dot{color:var(--red)}.projects{padding-top:115px;padding-bottom:120px}.section-heading{margin-bottom:55px}.section-heading h2,.reviews h2,.tools h2,.contact h2,.faq h2{font-size:clamp(42px,7.4vw,90px);line-height:1.06;letter-spacing:-.06em;margin:0;font-weight:750}.section-heading p,.stack-intro>p:last-child{color:var(--muted);font-size:18px;margin-top:18px}.project-grid{display:grid;grid-template-columns:1fr;gap:62px}.project-card{min-width:0}.project-image{display:block;width:100%;padding:0;position:relative;border:0;background:#1c1c1f;border-radius:32px;overflow:hidden;aspect-ratio:1.55;isolation:isolate}.project-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#05050680,transparent 42%);z-index:1}.project-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.8,.2,1),filter .4s}.project-card:hover .project-image img{transform:scale(1.045);filter:saturate(1.08)}.image-label{position:absolute;bottom:23px;left:25px;z-index:2;color:#fff;font-size:11px;letter-spacing:.16em;border:1px solid #ffffff65;border-radius:99px;padding:8px 13px;backdrop-filter:blur(12px)}.project-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-top:22px}.project-meta h3{font-size:clamp(17px,2vw,23px);margin:0 0 4px;font-weight:700}.project-meta p{margin:0;color:var(--muted);font-size:15px}.view-project{display:flex;align-items:center;gap:10px;background:none;border:0;color:#b9b9bd;padding:3px 0;white-space:nowrap}.arrow-sweep{font-size:24px;display:inline-block;animation:sweep 1.7s ease-in-out infinite}@keyframes sweep{0%,100%{transform:translate(0,0);opacity:.7}50%{transform:translate(5px,-5px);opacity:1}}.testimonial-intro{border-top:1px solid #29292b;border-bottom:1px solid #29292b;padding:100px 0;display:flex;flex-direction:column;align-items:center;text-align:center}.testimonial-intro blockquote{font-size:clamp(24px,4vw,45px);line-height:1.45;color:#bcbcc0;max-width:1000px;margin:0 auto 42px;letter-spacing:-.035em}.quote-author{display:flex;align-items:center;gap:17px;text-align:left}.quote-author img{width:68px;height:68px;border-radius:50%;object-fit:cover}.quote-author div,.review-person div{display:flex;flex-direction:column;gap:3px}.quote-author strong{font-size:21px}.quote-author span,.review-person span{color:var(--muted);font-size:15px}.tools{padding-top:120px;padding-bottom:120px}.tools h2{max-width:900px}.eyebrow{display:block;color:#838389;text-transform:none;letter-spacing:.01em;font-size:15px;margin:35px 0 20px}.tool-list{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.tool{min-height:120px;border:1px solid #363639;border-radius:22px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#bcbcc0;transition:border-color .25s,transform .25s}.tool:hover{border-color:#77777c;transform:translateY(-4px)}.tool>span:first-child{font-size:35px;font-weight:700;color:#eee}.tool>span:last-child{font-size:12px;color:#88888d}.tool-claude{font-size:40px!important}.tool-figma{color:#fff!important}.tool-vscode{font-size:38px!important}.tool-cloud{font-size:39px!important}.service-stack{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;padding:85px 0 120px;border-top:1px solid #29292b}.stack-intro{position:sticky;top:140px;align-self:start}.stack-intro h2{font-size:clamp(42px,5.5vw,70px);line-height:1.06;letter-spacing:-.06em;margin:0}.stack-intro .eyebrow{margin-top:0}.stack-intro>p:last-child{max-width:390px;line-height:1.65}.stack-cards{position:relative;padding-bottom:25vh}.stack-card{position:sticky;top:125px;min-height:470px;border:1px solid #38383b;border-radius:38px;background:#111113;padding:35px;display:flex;flex-direction:column;margin-bottom:25px;box-shadow:0 22px 60px #0003;transform-origin:top center;transition:background .4s,border-color .4s}.stack-card:nth-child(1){top:125px}.stack-card:nth-child(2){top:143px}.stack-card:nth-child(3){top:161px}.stack-card:nth-child(4){top:179px;background:var(--red);border-color:#ff3d6d}.stack-card:nth-child(4) .chips span{border-color:#ffffff70}.stack-card-top{display:flex;align-items:center;justify-content:space-between}.service-icon{font-size:37px;color:var(--red);font-weight:700}.stack-card:nth-child(4) .service-icon{color:white}.card-number{font-size:12px;color:#7e7e83;letter-spacing:.12em}.stack-card h3{font-size:clamp(30px,3.3vw,42px);letter-spacing:-.045em;margin:22px 0 14px}.stack-card p{font-size:18px;line-height:1.65;color:#b9b9bd;max-width:630px;margin:0}.stack-card:nth-child(4) p{color:#fff}.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:38px}.chips span{border:1px solid #55555a;border-radius:999px;padding:9px 17px;font-size:14px;color:inherit}.work-history{padding:85px 0 110px;border-top:1px solid #29292b}.small-section-title{font-size:clamp(26px,3vw,40px);margin:0 0 32px;letter-spacing:-.04em}.history-list{display:flex;flex-direction:column;gap:14px}.history-card{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;width:100%;border:1px solid #39393c;border-radius:28px;background:#1e1e20;padding:27px 30px;min-height:118px;flex-wrap:wrap;transition:border-color .25s,background .25s}.history-card:hover{border-color:#66666b}.history-card>span:first-child{display:flex;flex-direction:column;gap:4px}.history-card strong{font-size:clamp(20px,3vw,31px);letter-spacing:-.035em}.history-card small,.history-date{font-size:16px;color:#b6b6ba}.history-detail{width:100%;max-height:0;opacity:0;overflow:hidden;color:#aaaab0;transition:max-height .4s,opacity .35s,padding .4s}.history-card.expanded .history-detail{max-height:100px;opacity:1;padding-top:13px}.extra-history{display:none}.history-list.show-all .extra-history{display:flex;animation:rise .5s both}.show-all{display:flex;align-items:center;gap:10px;border:0;border-radius:999px;background:#29292c;color:#eee;padding:15px 28px;margin:35px auto 0;font-size:16px;transition:transform .2s}.show-all:hover{transform:translateY(-2px)}.show-all span{display:grid;place-items:center;background:var(--red);color:white;width:22px;height:22px;border-radius:50%}.reviews{padding:100px 0 120px;border-top:1px solid #29292b}.reviews h2{max-width:1000px}.review-proof{display:flex;align-items:center;gap:22px;margin:45px 0 60px}.review-proof .rating{align-items:flex-start;text-align:left}.small-faces img{width:63px;height:63px}.review-window{overflow:hidden;margin-right:calc((100vw - 100%)/-2);padding:0 3px 10px 0}.review-track{display:flex;gap:24px;transition:transform .65s cubic-bezier(.2,.8,.2,1);will-change:transform}.review-card{border:1px solid #353538;border-radius:32px;padding:29px;min-width:min(470px,82vw);width:min(470px,82vw);min-height:390px;display:flex;flex-direction:column;background:#111113}.quote-mark{font-size:35px;font-weight:800;line-height:1}.review-card>p{font-size:20px;line-height:1.65;color:#aaaab0;margin:12px 0 25px}.review-bottom{margin-top:auto}.review-bottom .stars{font-size:19px;margin-bottom:24px}.review-person{display:flex;align-items:center;gap:13px}.review-person img{width:57px;height:57px;object-fit:cover;border-radius:50%}.review-person strong{font-size:17px}.carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:25px;color:#89898e;font-size:12px;letter-spacing:.12em}.carousel-controls button{width:45px;height:45px;border-radius:50%;border:1px solid #424246;background:#1c1c1e;font-size:21px;transition:background .2s}.carousel-controls button:hover{background:var(--red)}.faq{padding:90px 0 120px;border-top:1px solid #29292b}.faq h2{margin-bottom:60px}.faq-list{display:flex;flex-direction:column;gap:16px}.faq details{border:1px solid #3a3a3d;background:#1e1e20;border-radius:28px;overflow:hidden;transition:border-color .3s}.faq details[open]{border-color:#6b263b}.faq summary{list-style:none;display:grid;grid-template-columns:52px 1fr 32px;align-items:center;gap:18px;padding:24px 27px;cursor:pointer;font-size:clamp(17px,2vw,23px);font-weight:650;line-height:1.4}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-weight:500}.faq summary b{font-size:25px;text-align:center;transition:transform .3s,color .3s}.faq details[open] summary b{transform:rotate(45deg);color:var(--red)}.faq details p{margin:0;padding:0 75px 28px 97px;color:#b8b8bd;font-size:17px;line-height:1.7;animation:fadeIn .35s both}.discovery{padding:45px 0 120px}.discovery-card{border-radius:42px;background:var(--red);border:1px solid #ff527b;box-shadow:inset 0 2px 5px #ff8aa4a0,0 0 0 1px #ff174a2c;text-align:center;padding:60px 7vw 50px;display:flex;align-items:center;flex-direction:column}.large-mark{width:105px;height:105px;background:radial-gradient(circle at 35% 25%,#a90028,#710018);box-shadow:none;margin-bottom:32px}.large-mark span{font-size:58px}.discovery-card h2{font-size:clamp(30px,5vw,58px);line-height:1.1;letter-spacing:-.05em;margin:0 0 28px;max-width:800px}.discovery-card p{font-size:clamp(17px,2vw,24px);max-width:650px;line-height:1.5;margin:0 0 17px}.dark-cta{background:#101011;color:#fff;border:0;border-radius:999px;padding:19px 32px;margin-top:28px;font-size:18px;box-shadow:0 8px 24px #65001950;transition:transform .2s}.dark-cta:hover{transform:translateY(-3px)}.cal-label{margin-top:22px;font-size:22px;font-weight:750;letter-spacing:-.04em}.contact{padding:100px 0 35px;border-top:1px solid #29292b}.contact h2{font-size:clamp(46px,8vw,100px);line-height:1.05;margin-bottom:75px}.changing-word{color:var(--red);display:inline-block;transition:transform .35s,opacity .35s}.changing-word.out{transform:translateY(-35px);opacity:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;padding-bottom:65px}.contact-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.contact-grid .eyebrow{margin:0 0 3px}.contact-grid>div>a{font-size:clamp(16px,2vw,22px)}.contact-grid>div>a:hover,.footer-nav a:hover{color:var(--red)}.phone-link{color:#b8b8bc}.social-links{display:flex;gap:12px;margin-top:7px}.social-links a{width:49px;height:49px;display:grid;place-items:center;background:var(--red);border-radius:50%;font-size:26px;font-weight:700;transition:transform .2s}.social-links a:hover{transform:translateY(-4px)}.footer-nav{border-top:1px solid #55555a;padding:30px 0 40px;display:flex;align-items:center;gap:25px;flex-wrap:wrap}.footer-nav .eyebrow{margin:0 20px 0 0}.footer-nav a{font-size:18px}.copyright{color:#8a8a8f;font-size:14px;font-weight:600;margin:0 0 30px}.footer-wordmark{font-size:clamp(42px,12vw,150px);font-weight:850;letter-spacing:-.075em;color:var(--red);white-space:nowrap;line-height:1.1;overflow:hidden}.floating-actions{position:fixed;z-index:40;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;display:flex;gap:9px;align-items:center;padding:8px;border:1px solid #4b4b4f;border-radius:999px;background:rgba(33,33,35,.78);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 12px 45px #0005;transition:opacity .4s,transform .4s}.floating-actions.visible{opacity:1;transform:translate(-50%,0);pointer-events:auto}.floating-actions button{border-radius:999px;padding:15px 22px;display:flex;align-items:center;gap:10px;font-size:15px;white-space:nowrap}.float-contact{background:var(--red);border:1px solid #ff527b;box-shadow:0 5px 20px #f0064630}.float-book{background:#29292c;border:1px solid #55555a}.modal-backdrop,.project-modal-backdrop{position:fixed;inset:0;z-index:100;display:flex;justify-content:center;align-items:center;background:#0009;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);padding:20px;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;overflow-y:auto}.modal-backdrop.open,.project-modal-backdrop.open{opacity:1;visibility:visible}.form-modal{position:relative;width:min(650px,100%);max-height:min(92svh,1000px);overflow:auto;border:1px solid #4a4a4f;border-radius:34px;background:rgba(28,28,30,.97);padding:35px;box-shadow:0 25px 100px #0008;transform:translateY(24px) scale(.98);transition:transform .45s cubic-bezier(.16,1,.3,1)}.modal-backdrop.open .form-modal{transform:translateY(0) scale(1)}.form-modal .modal-close,.project-modal .modal-close{position:absolute;top:15px;right:17px;z-index:3}.form-modal .eyebrow{margin:0 45px 14px 0;font-size:11px;letter-spacing:.13em}.form-modal h2{font-size:clamp(30px,5vw,44px);letter-spacing:-.055em;margin:0 0 12px}.modal-lead{color:#a9a9af;line-height:1.6;margin-bottom:25px}.form-modal form{display:flex;flex-direction:column;gap:15px}.form-modal label{display:flex;flex-direction:column;gap:7px;color:#d5d5d9;font-size:13px}.form-modal input,.form-modal select,.form-modal textarea{width:100%;background:#111113;border:1px solid #414145;border-radius:13px;color:#f5f5f6;padding:13px 14px;outline:none;min-height:48px}.form-modal input:focus,.form-modal select:focus,.form-modal textarea:focus{border-color:#f00646;box-shadow:0 0 0 3px #f0064618}.form-modal select option{background:#171719}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-submit{width:100%;margin-top:7px;min-height:56px}.form-disclaimer{color:#77777e;font-size:11px;text-align:center;margin:0}.project-modal{position:relative;width:min(1000px,100%);max-height:92svh;overflow:auto;border:1px solid #414145;border-radius:34px;background:#151517;display:grid;grid-template-columns:1fr 1fr;transform:translateY(25px) scale(.98);transition:transform .5s cubic-bezier(.16,1,.3,1)}.project-modal-backdrop.open .project-modal{transform:translateY(0) scale(1)}.project-modal-visual{min-height:500px;background:#222;overflow:hidden}.project-modal-visual img{width:100%;height:100%;object-fit:cover;display:block}.project-modal-content{padding:45px 35px;display:flex;flex-direction:column;align-items:flex-start}.project-modal-content .eyebrow{margin:0 0 15px;letter-spacing:.12em;font-size:11px}.project-modal-content h2{font-size:clamp(30px,4vw,49px);letter-spacing:-.06em;line-height:1.05;margin:0 0 28px}.project-facts{display:flex;gap:60px;margin-bottom:25px}.project-facts div{display:flex;flex-direction:column;gap:4px}.project-facts span{font-size:12px;color:#89898e}.project-facts strong{font-size:17px}.project-modal-content>p:not(.eyebrow){font-size:16px;color:#b5b5ba;line-height:1.7}.project-modal-content .chips{padding-top:10px;margin-bottom:30px}.project-modal-content .chips span{font-size:12px}.project-modal-content .primary-cta{font-size:14px;min-height:54px;padding:0 22px;margin-top:auto}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes rise{from{opacity:0;transform:translateY(25px) rotate(1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}.reveal{opacity:0;transform:translateY(32px);transition:opacity .8s,transform .8s cubic-bezier(.16,1,.3,1)}.reveal.in-view{opacity:1;transform:translateY(0)}
@media(min-width:900px){.project-grid{grid-template-columns:1fr 1fr}.project-card:first-child{grid-column:1/-1}.project-card:first-child .project-image{aspect-ratio:2.05}.project-card:not(:first-child) .project-image{aspect-ratio:1.2}.hero-avatar{max-width:100%}.avatar-stage{margin-top:-1.7vw}.hero-copy{margin-top:5px}.project-grid{gap:55px 28px}}
@media(max-width:700px){:root{--content:calc(100% - 42px)}.topbar{top:14px;width:calc(100% - 32px);height:64px;padding:7px 12px}.brand-mark{width:42px;height:42px}.brand-mark span{font-size:25px}.brand-lockup{font-size:17px;gap:10px}.menu-overlay{padding:14px 16px}.menu-glass{border-radius:32px;min-height:400px;padding:12px 15px 22px}.menu-links{margin:45px auto}.hero{padding-top:155px;min-height:auto;padding-bottom:75px}.hero-title{font-size:clamp(62px,17.1vw,125px);letter-spacing:-.08em}.hero-title .accent{font-size:.68em;letter-spacing:-.07em}.avatar-stage{width:min(91vw,510px);margin-top:-5px}.hero-copy{font-size:18px;margin:8px 0 25px;padding:0 5px}.desktop-break{display:none}.expand-cta{min-height:59px;min-width:265px;font-size:16px;padding:0 25px}.expand-cta.expanded{min-width:0;width:100%;min-height:72px;padding:7px 10px;gap:8px}.cta-avatar-mini,.cta-you{width:43px!important;height:43px!important;flex-shrink:0}.cta-expanded-text{font-size:13px}.cta-x{width:22px}.hero-note{font-size:10px;margin-top:18px}.social-proof{padding:54px 0 34px}.client-faces img{width:48px;height:48px}.rating{font-size:14px}.stars{font-size:20px}.client-logos{margin-top:24px;gap:15px}.client-logos span:first-child{font-size:20px}.projects{padding-top:75px;padding-bottom:75px}.section-heading{margin-bottom:34px}.section-heading h2,.reviews h2,.tools h2,.contact h2,.faq h2{font-size:clamp(39px,10vw,65px)}.project-grid{gap:40px}.project-image{aspect-ratio:1.15;border-radius:23px}.project-meta{margin-top:15px;gap:12px}.project-meta h3{font-size:15px}.project-meta p{font-size:12px}.view-project{font-size:12px;gap:5px}.arrow-sweep{font-size:19px}.image-label{bottom:13px;left:14px;font-size:9px;padding:6px 9px}.testimonial-intro{padding:70px 0}.testimonial-intro blockquote{font-size:25px;margin-bottom:30px}.quote-author img{width:54px;height:54px}.quote-author strong{font-size:18px}.quote-author span{font-size:13px}.tools{padding:75px 0}.eyebrow{font-size:13px}.tool-list{grid-template-columns:repeat(3,1fr);gap:10px}.tool{min-height:95px;border-radius:17px}.tool>span:first-child{font-size:28px}.tool>span:last-child{font-size:10px}.service-stack{display:block;padding:70px 0 80px}.stack-intro{position:relative;top:auto;margin-bottom:40px}.stack-intro h2{font-size:48px}.stack-intro>p:last-child{font-size:16px}.stack-cards{padding-bottom:10vh}.stack-card{top:95px!important;min-height:435px;padding:24px;border-radius:28px;margin-bottom:18px}.stack-card:nth-child(2){top:110px!important}.stack-card:nth-child(3){top:125px!important}.stack-card:nth-child(4){top:140px!important}.stack-card h3{font-size:32px;margin-top:24px}.stack-card p{font-size:16px}.chips{gap:7px;padding-top:25px}.chips span{font-size:11px;padding:8px 11px}.work-history{padding:65px 0 75px}.history-card{padding:20px;border-radius:21px;min-height:100px}.history-card strong{font-size:21px}.history-card small,.history-date{font-size:13px}.history-date{margin-left:auto}.reviews{padding:70px 0 80px}.review-proof{gap:14px;margin:30px 0 38px;align-items:center}.small-faces img{width:42px;height:42px}.review-proof .rating{font-size:12px}.review-proof .stars{font-size:17px;letter-spacing:3px}.review-card{min-width:calc(100vw - 60px);width:calc(100vw - 60px);min-height:350px;padding:23px;border-radius:25px}.review-card>p{font-size:17px}.review-person img{width:47px;height:47px}.review-person strong{font-size:15px}.review-person span{font-size:12px}.faq{padding:70px 0 80px}.faq h2{margin-bottom:38px}.faq-list{gap:11px}.faq details{border-radius:21px}.faq summary{grid-template-columns:31px 1fr 25px;gap:10px;padding:19px 16px;font-size:16px}.faq summary span{font-size:14px}.faq summary b{font-size:22px}.faq details p{padding:0 20px 22px 57px;font-size:14px}.discovery{padding:25px 0 75px}.discovery-card{border-radius:30px;padding:42px 22px 35px}.large-mark{width:78px;height:78px;margin-bottom:25px}.large-mark span{font-size:45px}.discovery-card h2{font-size:31px}.discovery-card p{font-size:16px}.dark-cta{font-size:15px;padding:16px 25px}.contact{padding:75px 0 25px}.contact h2{font-size:clamp(44px,12vw,70px);margin-bottom:50px}.contact-grid{grid-template-columns:1fr;gap:28px;padding-bottom:45px}.contact-grid>div>a{font-size:18px}.footer-nav{gap:18px}.footer-nav .eyebrow{width:100%;margin:0}.footer-nav a{font-size:16px}.footer-wordmark{font-size:14vw;letter-spacing:-.08em}.floating-actions{bottom:12px;width:max-content;max-width:calc(100% - 24px);gap:5px;padding:5px}.floating-actions button{padding:13px 16px;font-size:13px;gap:7px}.form-modal{padding:28px 20px;border-radius:27px}.form-modal .modal-close{top:9px;right:8px}.form-modal h2{font-size:32px}.modal-lead{font-size:14px}.form-row{grid-template-columns:1fr 1fr;gap:8px}.form-modal input,.form-modal select,.form-modal textarea{padding:11px;font-size:14px}.project-modal{grid-template-columns:1fr;border-radius:26px}.project-modal-visual{min-height:230px;max-height:280px}.project-modal-content{padding:27px 22px}.project-modal-content h2{font-size:35px}.project-modal-content .chips{margin-bottom:22px}.project-modal-content .primary-cta{font-size:13px}.project-facts{gap:40px}.menu-foot{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Requested corrections: avatar overlap, supplied V. logo, history layout, smooth reviews carousel, complete footer wordmark, and device-fit safeguards. */
.brand-mark{background:transparent;box-shadow:none;overflow:visible}
.brand-mark img{display:block;width:80%;height:80%;object-fit:contain;max-width:none}
.large-mark img{width:125%;height:125%}
.hero-title{z-index:1}
.avatar-stage{z-index:4;margin-top:clamp(-112px,-8.5vw,-42px);isolation:isolate}
.hero-avatar{position:relative;z-index:4;object-fit:contain;pointer-events:none}
.history-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:28px;row-gap:0}
.history-card>span:first-child{min-width:0;grid-column:1;grid-row:1}
.history-card .history-date{grid-column:2;grid-row:1;justify-self:end;white-space:nowrap;text-align:right}
.history-card .history-detail{grid-column:1/-1;grid-row:2;min-width:0;max-height:0;padding-top:0;line-height:1.65}
.history-card.expanded .history-detail{max-height:180px;padding-top:13px}
.history-list.show-all .extra-history{display:grid}
.show-all{justify-content:center;min-height:58px;line-height:1;padding:14px 28px}
.show-all span{display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;line-height:1;font-size:18px;padding:0;text-align:center}
.review-window{touch-action:pan-y;overscroll-behavior-x:contain}
.review-track{position:relative;will-change:transform;transition:transform .72s cubic-bezier(.22,.75,.2,1)}
.carousel-controls button{display:grid;place-items:center;flex:0 0 45px;padding:0;line-height:1;font-family:inherit;font-size:22px}
.carousel-controls button:focus-visible,.show-all:focus-visible,.history-card:focus-visible{outline:2px solid var(--red2);outline-offset:4px}
.footer-wordmark{display:block;width:100%;max-width:100%;font-size:clamp(25px,9.1vw,132px);letter-spacing:-.085em;line-height:1.12;white-space:nowrap;overflow:visible;text-align:center;overflow-wrap:normal}
.contact{min-width:0;overflow:visible}
/* Foldables, tablets, short landscape screens, and narrow desktop windows. */
@media(max-width:900px){.avatar-stage{margin-top:clamp(-86px,-8vw,-36px)}.footer-wordmark{font-size:clamp(24px,8.8vw,82px)}.history-card{column-gap:18px}}
@media(max-width:700px){.avatar-stage{width:min(91vw,510px);margin-top:clamp(-62px,-9vw,-34px)}.hero-title{width:100%;font-size:clamp(58px,16.6vw,118px)}.hero-title .accent{font-size:.68em}.history-card{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:20px 18px;min-height:100px}.history-card strong{font-size:clamp(18px,5vw,23px);overflow-wrap:anywhere}.history-card small,.history-date{font-size:clamp(11px,3.2vw,13px)}.history-card .history-date{max-width:34vw;white-space:normal}.history-card .history-detail{font-size:13px}.show-all{margin-top:26px}.review-window{margin-right:calc((100vw - 100%)/-2)}.review-card{min-width:min(82vw,410px);width:min(82vw,410px)}.carousel-controls{gap:12px}.carousel-controls button{flex-basis:42px;width:42px;height:42px}.footer-wordmark{font-size:clamp(22px,8.2vw,58px);letter-spacing:-.09em}.brand-mark img{width:140%;height:140%}.large-mark img{width:125%;height:125%}}
@media(max-width:390px){.topbar{width:calc(100% - 22px);padding-inline:9px}.brand-lockup{gap:7px;font-size:15px}.brand-mark{width:37px;height:37px}.menu-toggle{width:38px}.hero-title{font-size:clamp(52px,16vw,62px)}.hero-title .accent{font-size:.65em}.avatar-stage{margin-top:-31px;width:94vw}.history-card{padding:17px 13px;column-gap:8px}.history-card .history-date{max-width:31vw}.review-proof{gap:10px}.small-faces img{width:35px;height:35px}.review-card{min-width:calc(100vw - 52px);width:calc(100vw - 52px);padding:21px}.floating-actions button{padding:11px 12px;font-size:12px}.footer-wordmark{font-size:7.6vw}}
@media(max-height:520px) and (orientation:landscape){.hero{padding-top:115px;min-height:auto}.hero-title{font-size:clamp(56px,11vw,110px)}.avatar-stage{width:min(38vw,330px);margin-top:-7vw}.topbar{top:8px;height:56px}.menu-overlay{padding-top:8px}.menu-glass{max-height:96svh;overflow:auto}}
@media(prefers-reduced-motion:reduce){.review-track,.avatar-stage,.hero-avatar,.history-card,.show-all{transition:none!important;animation:none!important}}


/* Iconos oficiales de herramientas */
.tool .tool-icon {
  display: block;
  width: 62px;
  height: 62px;
  object-fit: contain;
}

/* Iconos en móvil */
@media (max-width: 700px) {
  .tool .tool-icon {
    width: 34px;
    height: 34px;
  }
}


/* Logo V. más compacto en móviles */
@media (max-width: 700px) {
  .brand-mark img {
    width: 90%;
    height: 90%;
  }
}

.tool .tool-icon {
  display: block;
  width: 62px;
  height: 62px;
  object-fit: contain;
  filter: none;
}

/* Adaptación móvil */
@media (max-width: 700px) {
  .tool .tool-icon {
    width: 34px;
    height: 34px;
  }
}


/* Corrección definitiva de los iconos */
.tool img.tool-icon {
  display: block !important;
  width: 62px !important;
  height: 62px !important;
  max-width: 100%;
  object-fit: contain !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  filter: none !important;
}

.tool img.tool-icon[alt="ChatGPT"] {
  filter: brightness(0) invert(1) !important;
}

@media (max-width: 700px) {
  .tool img.tool-icon {
    width: 44px !important;
    height: 44px !important;
  }
}


/* VS Code blanco */
.tool img[alt="VS Code"] {
  filter: grayscale(1) brightness(0) invert(1) !important;
  opacity: 1 !important;
}
