:root{--navy:#13264c;--orange:#cf7657;--orange-light:#f0dbd1;--paper:#fff;--mist:#eaf0f5;--soft:#f5f6f8;--line:#d9dee5;--muted:#6f7783;--serif:'Source Serif 4',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:var(--navy);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--orange);outline-offset:6px}img{display:block;max-width:100%}p,h1,h2,h3,figure{margin:0}p{line-height:1.75}h1,h2,h3{font-weight:400}strong{font-weight:600}::selection{background:var(--orange-light);color:var(--navy)}.wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 64px}.skip-link{position:fixed;top:-70px;left:15px;z-index:100;padding:12px 18px;background:white;border:1px solid var(--navy);font-size:13px}.skip-link:focus{top:12px}.masthead{background:var(--mist)}.header{height:108px;display:flex;align-items:center;gap:40px}.wordmark{font-family:var(--serif);font-size:38px;letter-spacing:-2px;line-height:1;display:flex;align-items:baseline;gap:0;white-space:nowrap}.wordmark>span{color:var(--orange)}.wordmark small{font-size:16px;font-weight:400;letter-spacing:-.6px;margin-left:7px}.header nav{display:flex;gap:31px;margin:auto;font-size:11px;color:#596579}.header nav a{position:relative;padding:10px 0}.header nav a:after{content:'';position:absolute;bottom:4px;left:0;width:100%;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .2s}.header nav a:hover:after{transform:scaleX(1)}.header-tools{display:flex;align-items:center;gap:27px}.language{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--muted)}.language [data-lang]{font-size:10px;padding:12px 2px;min-height:38px;color:var(--muted)}.language [data-lang][aria-pressed=true]{color:var(--navy);font-weight:600}.menu-toggle{border:1px solid var(--navy);width:41px;height:41px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;gap:5px;align-items:center;position:relative;flex:none}.menu-toggle:before{content:'';position:absolute;inset:3px -4px -3px 4px;border:1px solid #52617b;border-radius:50%;transition:transform .25s}.menu-toggle:hover:before{transform:translate(-4px,-2px)}.menu-toggle span{height:1px;width:16px;background:var(--navy)}.menu-toggle span:nth-child(2){width:12px;margin-left:4px}.hero-stage{height:620px;background:var(--mist);position:relative;overflow:hidden}.hero-role{position:absolute;top:22px;left:max(64px,calc((100vw - 1152px)/2));font-size:8px;letter-spacing:1.2px;line-height:1.6;display:flex;flex-direction:column;gap:7px;color:#637086;z-index:2}.hero-role>span:last-child{font-size:7px;letter-spacing:1.4px;color:#798394}.floating-orb{position:absolute;left:29%;top:71px;width:86px;height:86px;border-radius:50%;background:radial-gradient(circle at 28% 35%,#f3e7df 3%,#e6b8a4 35%,#cc896d 71%,#bb6e50);box-shadow:inset 9px 0 14px #f8eee560;z-index:1}.hero-art{position:absolute;bottom:0;right:max(0px,calc((100vw - 1440px)/2));width:690px;height:600px;overflow:hidden}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center top;mix-blend-mode:multiply}.hero-card{position:absolute;bottom:0;left:0;width:58%;padding:46px 46px 41px max(64px,calc((100vw - 1152px)/2));background:#fff;z-index:3}.hero-card-inner{max-width:540px}.wave{width:40px;height:11px;object-fit:contain;margin-bottom:18px}.hero-card h1{font-family:var(--serif);font-size:60px;line-height:1.08;letter-spacing:-1.8px;font-weight:400}.hero-card h1 strong{font-weight:700}.hero-description{font-size:12px;color:var(--muted);max-width:370px;margin:22px 0 24px;line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:13px 20px;min-height:46px;border:1px solid var(--navy);font-size:11px;letter-spacing:.1px;background:transparent;border-radius:0;transition:background .2s,color .2s,gap .2s}.button:hover{background:#edf0f5;gap:43px}.button>span:last-child{font-size:23px;line-height:.7;font-weight:400}.hero-coordinate{display:flex;align-items:center;gap:7px;position:absolute;right:max(50px,calc((100vw - 1160px)/2));bottom:24px;font-size:7px;letter-spacing:1px;z-index:4;color:var(--navy)}.hero-coordinate i{width:20px;height:1px;background:var(--navy);display:block}.hero-coordinate i:nth-of-type(2),.hero-coordinate i:nth-of-type(3){opacity:.3}.hero-coordinate>span{margin:0 4px}.impact-section{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:74px;padding-top:93px;padding-bottom:83px}.outline-impact{text-align:center;position:relative}.orbit-symbol{width:57px;height:36px;margin:0 auto 10px;color:#778496;display:block}.outline-number{font-family:var(--sans);font-size:192px;line-height:1.12;letter-spacing:-15px;white-space:nowrap;font-weight:500;position:relative;display:inline-block;color:transparent;-webkit-text-stroke:1px #8390a4}.number-offset{position:absolute;left:5px;top:7px;-webkit-text-stroke:1px #d1d9e3;z-index:-1}.outline-impact>p{font-size:10px;color:#7b8490;margin:7px 0 8px}.small-link{display:inline-block;font-size:9px;line-height:1.6;border-bottom:1px solid #c9d0d9;padding-bottom:2px;color:#6f7a8d}.small-link:hover{color:var(--navy);border-color:var(--orange)}.impact-copy .wave{margin-bottom:17px}.impact-copy h2{font-family:var(--serif);font-size:42px;line-height:1.13;letter-spacing:-.8px}.impact-copy h2 strong{font-weight:600}.impact-columns{display:grid;grid-template-columns:1fr 1fr;gap:29px;margin-top:29px}.impact-columns h3{font-family:var(--serif);font-size:17px;line-height:1.4;margin-bottom:9px}.impact-columns p{font-size:11px;color:var(--muted);line-height:1.85;max-width:225px}.inline-result{color:var(--navy);font-weight:600}.impact-columns .small-link{font-size:8px;margin-top:11px}.experience-line{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:25px;padding-bottom:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.experience-line>span:first-child{color:var(--muted);font-size:9px;max-width:90px;line-height:1.7}.company{color:#647085}.holafly{font-size:25px;font-weight:600;letter-spacing:-1px}.mercado{font-size:14px;line-height:.9;text-align:center;font-weight:700;letter-spacing:-.5px}.mercado>span{display:block;font-size:17px}.davivienda{font-size:11px;font-weight:600;letter-spacing:-.2px}.experience-end{font-size:7px;letter-spacing:1px;color:#7b8593}.work-section{padding-top:90px;padding-bottom:80px}.eyebrow{font-family:var(--sans);font-size:8px;letter-spacing:1.6px;font-weight:400;line-height:1.6;color:#768295;margin-bottom:16px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:36px}.section-top h2{font-family:var(--serif);font-size:43px;line-height:1.12;letter-spacing:-.8px;font-weight:400}.section-top h2 strong{font-weight:600}.section-note{font-size:11px;color:var(--muted);max-width:205px;line-height:1.75;padding-bottom:4px}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px 32px}.project-cover{width:100%;aspect-ratio:1.45;position:relative;display:block;padding:0;text-align:left;background:#e9edf2;overflow:hidden;border-radius:0}.project-cover>img{height:100%;width:100%;object-fit:cover;filter:grayscale(1) brightness(1.12) contrast(.86);transition:transform .6s,filter .6s;opacity:.92}.project-cover:hover>img{transform:scale(1.035);filter:saturate(.3) brightness(1.06) contrast(.94)}.image-label{position:absolute;left:17px;top:17px;padding:8px 10px;background:#f6f7f9ef;border:1px solid #cad1dccc;font-size:7px;letter-spacing:.7px;font-weight:400;color:var(--navy)}.project-open{position:absolute;right:17px;bottom:17px;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--navy);border-radius:50%;background:#f4f6f8eb;font-size:22px;transition:transform .2s}.project-cover:hover .project-open{transform:rotate(45deg)}.project-info{padding-top:20px}.project-kicker{font-size:7px;letter-spacing:1.25px;color:#7b8594;line-height:1.6;margin-bottom:9px}.project-info h3{font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.5px;line-height:1.2}.project-info h3 button{font-family:inherit;font-weight:inherit;letter-spacing:inherit;padding:0;text-align:left;line-height:inherit}.project-info h3 button:hover{color:#4a5d7e}.project-info p:not(.project-kicker){font-size:11px;color:var(--muted);line-height:1.8;max-width:370px;margin-top:11px}.result-tag{display:inline-flex;align-items:center;gap:7px;font-size:9px;margin-top:15px;line-height:1.6}.result-tag:before{content:'';display:block;width:4px;height:4px;border-radius:50%;background:var(--orange)}.project-wide{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding-top:7px}.project-wide .project-info{padding-top:0}.project-wide h3{font-size:35px;max-width:360px;line-height:1.12}.project-wide .project-info p:not(.project-kicker){max-width:335px;margin-top:17px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid #9ca9bb;background:transparent;padding:11px 16px;font-size:10px;line-height:1.5;margin-top:21px;transition:background .2s,border-color .2s}.text-link:hover{background:var(--soft);border-color:var(--navy)}.wide-metrics{display:flex;gap:35px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line);max-width:330px}.wide-metrics>div{flex:1}.wide-metrics strong{font-family:var(--serif);font-size:32px;font-weight:400;letter-spacing:-.6px;display:block;line-height:1.2}.wide-metrics span{display:block;color:var(--muted);font-size:9px;line-height:1.5;margin-top:6px}.work-caption{font-size:9px;max-width:600px;color:#7f8793;line-height:1.8;margin-top:30px}.approach-section{padding:75px 0 72px;background:var(--soft)}.approach-section .section-top{align-items:center;margin-bottom:43px}.approach-section h2{font-size:39px}.approach-emblem{width:90px;height:90px;fill:none;stroke:var(--orange);stroke-width:1;flex:none;margin-right:15px}.principles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:43px}.principles article{border-top:1px solid #c7ced8;padding-top:17px}.principle-num{font-family:var(--serif);font-size:19px;color:#ad6b52;font-weight:400}.principles h3{font-family:var(--serif);font-size:22px;line-height:1.2;letter-spacing:-.3px;margin-top:22px}.principles p{font-size:11px;line-height:1.9;color:var(--muted);margin-top:13px;max-width:295px}.about-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center;padding-top:90px;padding-bottom:70px}.portrait{position:relative;aspect-ratio:.95;overflow:hidden;background:var(--mist)}.portrait img{width:100%;height:100%;object-fit:cover;object-position:25% 35%;filter:saturate(.55)}.portrait figcaption{position:absolute;left:0;bottom:0;background:#fffffff0;right:27px;padding:15px 18px;display:flex;justify-content:space-between;gap:15px;font-size:7px;letter-spacing:.8px;line-height:1.6;color:#647085}.about-copy h2{font-family:var(--serif);font-size:43px;line-height:1.1;letter-spacing:-.8px;margin-bottom:23px}.about-copy>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.9;margin-top:14px;max-width:450px}.about-tags{display:flex;flex-wrap:wrap;gap:7px 15px;max-width:400px;margin-top:23px}.about-tags span{font-size:9px;line-height:1.5;position:relative}.about-tags span:not(:last-child):after{content:'/';color:#bcc4cf;margin-left:14px}.about-copy .text-link{margin-top:26px}.builder-note{display:flex;gap:27px;align-items:center;padding-bottom:72px}.builder-icon{font-family:var(--serif);font-size:35px;color:var(--orange);align-self:flex-start;margin-top:28px}.builder-note>div{border-top:1px solid var(--line);padding-top:24px;flex:1}.builder-note .eyebrow{margin-bottom:8px}.builder-note h3{font-family:var(--serif);font-size:23px;letter-spacing:-.4px;line-height:1.3}.builder-note p:not(.eyebrow){font-size:11px;line-height:1.9;color:var(--muted);max-width:560px;margin-top:10px}.builder-note>.text-link{flex:none;align-self:center}.contact-section{background:var(--mist);padding:51px 0 40px}.contact-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.contact-top .eyebrow{margin:0}.availability{display:inline-flex;align-items:center;gap:8px;font-size:10px;color:#5c6b80}.status-dot{display:inline-block;width:5px;height:5px;border:1px solid var(--orange);border-radius:50%;position:relative;flex:none}.status-dot:after{content:'';position:absolute;inset:-3px;border:1px solid #cf765738;border-radius:50%}.contact-section h2{font-family:var(--serif);font-size:87px;line-height:1.04;letter-spacing:-2px;margin:35px 0 38px;position:relative;font-weight:400}.contact-last{font-weight:600}.contact-emblem{position:absolute;right:12px;top:22px;fill:none;stroke:var(--orange);stroke-width:1.15;width:147px;height:147px}.contact-bottom{display:flex;align-items:center;gap:25px;border-top:1px solid #cbd4e0;padding-top:23px}.email-link{font-size:17px;letter-spacing:-.3px;display:inline-flex;align-items:center;gap:28px}.email-link>span{font-size:22px}.copy-email{display:inline-flex;align-items:center;gap:9px;border:1px solid #acb8c9;padding:10px 13px;font-size:9px;line-height:1.4}.copy-email:hover{background:#fff7}.copy-email svg{width:13px;height:13px;stroke:currentColor;stroke-width:1;fill:none}.contact-linkedin{margin-left:auto;font-size:11px;border-bottom:1px solid #a7b3c5;padding-bottom:4px}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:27px;padding-bottom:29px;font-size:8px;color:#7c8695;line-height:1.6}.footer>span:nth-child(2){font-size:7px;letter-spacing:1px}.footer a{color:#5e6b80}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);background:white;color:var(--navy);border:1px solid #a7b3c5;padding:14px 23px;font-size:12px;line-height:1.5;z-index:100;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;box-shadow:0 4px 30px #13264c10}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{background:#fff;color:var(--navy);border:1px solid var(--line);padding:0;width:min(940px,calc(100% - 40px));max-height:calc(100dvh - 48px);border-radius:0;overscroll-behavior:contain}dialog::backdrop{background:#13264c88;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 26px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#f5f7fa;z-index:2}.dialog-top .eyebrow{margin:0}.close-dialog,.close-menu{border:1px solid #9eabbc;width:34px;height:34px;border-radius:50%;font-size:16px}.case-header{padding:33px 40px 27px}.case-header .project-kicker{font-size:8px;margin-bottom:12px}.case-header h2{font-family:var(--serif);font-size:43px;line-height:1.13;letter-spacing:-.9px;max-width:680px}.case-header>p:not(.project-kicker){font-size:12px;color:var(--muted);line-height:1.7;margin-top:15px}.case-image{width:100%;height:auto;object-fit:contain;max-height:480px;background:#f1f3f7}.case-body{padding:27px 40px 37px}.case-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:25px}.case-stats strong{font-family:var(--serif);font-size:35px;font-weight:400;line-height:1.1;letter-spacing:-.8px;display:block}.case-stats span{display:block;font-size:9px;line-height:1.6;color:var(--muted);margin-top:7px}.case-section{display:grid;grid-template-columns:150px 1fr;gap:22px;margin-top:23px}.case-section h3{font-family:var(--serif);font-size:18px;line-height:1.35}.case-section p{font-size:12px;line-height:1.9;color:var(--muted)}.case-links{display:flex;align-items:center;gap:20px;margin-top:28px}.case-links .text-link{margin:0}.case-note{font-size:9px;line-height:1.8;color:var(--muted);margin-top:23px}.dialog-open,.menu-open{overflow:hidden}#menu-dialog{width:min(650px,calc(100% - 32px))}.menu-content{padding:27px 37px 35px}.menu-content>a{display:flex;align-items:center;justify-content:space-between;gap:30px;font-family:var(--serif);font-size:37px;line-height:1.5;border-bottom:1px solid var(--line);padding:10px 0}.menu-content>a>span:last-child{font-family:var(--sans);font-size:10px;color:var(--orange)}.menu-content>a:hover{color:#6a7d9e}.menu-content>p{font-size:11px;color:var(--muted);margin-top:25px}
@media(min-width:1550px){.header{height:116px}.hero-stage{height:650px}.hero-art{right:calc((100vw - 1380px)/2);width:730px;height:630px}.hero-role{left:calc((100vw - 1152px)/2);top:30px}.floating-orb{left:calc((100vw - 720px)/2);top:80px}.hero-card{width:calc(50vw + 65px);padding-left:calc((100vw - 1152px)/2);padding-top:55px;padding-bottom:47px}.hero-card h1{font-size:64px}.hero-description{font-size:13px;max-width:430px}.hero-coordinate{right:calc((100vw - 1152px)/2)}.impact-section{padding-top:105px;padding-bottom:94px}}
@media(max-width:1150px){.wrap{padding-left:45px;padding-right:45px}.header{gap:30px}.header nav{gap:24px}.header-tools{gap:23px}.hero-stage{height:590px}.hero-role{left:45px}.hero-art{width:620px;height:565px;right:-70px}.hero-card{width:60%;padding-left:45px;padding-right:25px;padding-top:43px;padding-bottom:37px}.hero-card h1{font-size:55px;letter-spacing:-1.6px}.floating-orb{left:27%;width:78px;height:78px;top:70px}.hero-coordinate{right:35px}.impact-section{gap:40px;padding-top:76px;padding-bottom:68px}.outline-number{font-size:166px;letter-spacing:-13px}.impact-copy h2{font-size:38px}.impact-columns{gap:23px}.section-top h2{font-size:40px}.project-info h3{font-size:25px}.project-wide{gap:42px}.project-wide h3{font-size:32px}.about-section{gap:55px}.about-copy h2{font-size:39px}.builder-note h3{font-size:21px}.builder-note p:not(.eyebrow){max-width:500px}.contact-section h2{font-size:80px}.contact-emblem{width:130px;height:130px}.experience-end{font-size:6px}}
@media(max-width:900px){.wrap{padding-left:32px;padding-right:32px}.header{height:94px;gap:26px}.header nav{gap:20px;font-size:10px}.header-tools{gap:21px}.wordmark{font-size:34px}.wordmark small{font-size:14px}.hero-stage{height:540px}.hero-role{left:32px;font-size:7px;letter-spacing:.8px;top:19px}.hero-role>span:last-child{font-size:6px}.hero-art{height:510px;width:560px;right:-95px}.hero-card{width:61%;padding-left:32px;padding-right:24px;padding-top:34px;padding-bottom:31px}.hero-card h1{font-size:45px;letter-spacing:-1.25px}.hero-description{font-size:11px;max-width:310px;margin-top:18px;margin-bottom:20px}.wave{width:35px;margin-bottom:15px}.floating-orb{width:66px;height:66px;left:25%;top:67px}.hero-coordinate{right:25px;gap:4px;bottom:18px}.hero-coordinate i{width:16px}.impact-section{gap:36px;padding-top:66px;padding-bottom:61px}.outline-number{font-size:135px;letter-spacing:-11px}.orbit-symbol{width:47px;height:30px;margin-bottom:7px}.outline-impact>p{font-size:9px}.outline-impact .small-link{font-size:8px}.impact-copy h2{font-size:32px;letter-spacing:-.5px}.impact-columns{gap:20px;margin-top:23px}.impact-columns h3{font-size:16px}.impact-columns p{font-size:10px;line-height:1.8}.impact-columns .small-link{font-size:7px}.experience-line{gap:25px}.experience-end{display:none}.experience-line>span:first-child{max-width:100px}.work-section{padding-top:67px;padding-bottom:65px}.section-top h2{font-size:36px}.section-note{font-size:10px;max-width:175px}.projects-grid{gap:35px 24px}.project-cover{aspect-ratio:1.2}.image-label{top:12px;left:12px;font-size:6px;letter-spacing:.5px;padding:6px 7px}.project-open{width:32px;height:32px;font-size:20px;bottom:12px;right:12px}.project-info h3{font-size:24px}.project-info p:not(.project-kicker){font-size:10px}.project-kicker{font-size:6px;letter-spacing:.9px}.project-wide{gap:30px}.project-wide h3{font-size:29px}.project-wide .text-link{margin-top:15px}.wide-metrics{gap:25px;margin-top:21px;padding-top:17px}.wide-metrics strong{font-size:29px}.wide-metrics span{font-size:8px}.approach-section{padding:60px 0}.approach-section h2{font-size:33px}.approach-emblem{width:72px;height:72px}.principles{gap:27px}.principles h3{font-size:20px}.principles p{font-size:10px}.about-section{gap:34px;padding-top:67px;padding-bottom:55px}.portrait{aspect-ratio:.8}.portrait figcaption{right:15px;padding:12px;font-size:6px;gap:10px}.about-copy h2{font-size:35px}.about-copy>p:not(.eyebrow){font-size:11px;line-height:1.85}.about-tags{gap:7px 10px}.about-tags span{font-size:8px}.about-tags span:not(:last-child):after{margin-left:9px}.text-link{font-size:9px;padding:10px 13px;gap:17px}.builder-note{gap:20px;flex-wrap:wrap;padding-bottom:60px}.builder-note>div{flex-basis:calc(100% - 60px)}.builder-note>.text-link{margin-left:50px;margin-top:0}.builder-note p:not(.eyebrow){max-width:600px}.contact-section h2{font-size:75px}.contact-emblem{width:115px;height:115px;right:0}.email-link{font-size:15px;gap:20px}.contact-bottom{gap:23px}.copy-email{font-size:8px}.contact-linkedin{font-size:10px}}
@media(max-width:640px){.wrap{padding-left:23px;padding-right:23px}.header{height:83px;gap:20px}.wordmark{font-size:35px;letter-spacing:-1.5px}.wordmark small{font-size:14px;margin-left:6px}.header nav{display:none}.header-tools{margin-left:auto;gap:20px}.menu-toggle{width:35px;height:35px}.menu-toggle:before{inset:2px -3px -2px 3px}.menu-toggle span{width:14px}.menu-toggle span:nth-child(2){width:10px}.language{gap:5px}.language [data-lang]{font-size:9px;min-height:38px}.hero-stage{height:670px;overflow:hidden}.hero-role{top:10px;left:23px;font-size:6px;letter-spacing:.8px;max-width:200px}.hero-role>span:last-child{font-size:6px;letter-spacing:.7px}.floating-orb{width:49px;height:49px;left:32px;top:95px}.hero-art{top:40px;bottom:auto;right:-53px;width:405px;height:370px}.hero-art img{object-fit:cover;object-position:50% 0}.hero-card{bottom:0;left:0;width:calc(100% - 30px);padding:29px 23px 27px;min-height:300px}.hero-card-inner{max-width:100%}.hero-card h1{font-size:39px;line-height:1.12;letter-spacing:-1.05px}.hero-card .wave{width:34px;margin-bottom:14px}.hero-description{font-size:11px;line-height:1.8;max-width:310px;margin:16px 0 20px}.button{padding:12px 16px;min-height:43px;font-size:10px;gap:28px}.button:hover{gap:32px}.hero-coordinate{bottom:13px;right:8px;flex-direction:column;gap:5px;font-size:5px}.hero-coordinate i{height:10px;width:1px}.hero-coordinate>span{margin:0}.impact-section{grid-template-columns:1fr;gap:33px;padding-top:46px;padding-bottom:38px}.outline-impact{max-width:300px;margin:auto}.orbit-symbol{width:45px;height:28px;margin-bottom:1px}.outline-number{font-size:155px;line-height:1.1;letter-spacing:-12px}.outline-impact>p{font-size:10px;margin-top:4px;margin-bottom:7px}.outline-impact .small-link{font-size:8px}.impact-copy .wave{width:33px;margin-bottom:13px}.impact-copy h2{font-size:35px;line-height:1.13;letter-spacing:-.7px}.impact-columns{gap:23px;margin-top:24px}.impact-columns h3{font-size:17px;line-height:1.35;min-height:23px}.impact-columns p{font-size:10px;line-height:1.9}.impact-columns .small-link{font-size:7px;line-height:1.7;margin-top:10px}.experience-line{flex-wrap:wrap;gap:19px;padding-top:20px;padding-bottom:21px;justify-content:space-between;width:calc(100% - 46px);padding-left:0;padding-right:0}.experience-line>span:first-child{width:100%;max-width:none;font-size:8px}.holafly{font-size:23px}.mercado{font-size:13px}.mercado>span{font-size:16px}.davivienda{font-size:10px}.work-section{padding-top:48px;padding-bottom:47px}.section-top{display:block;margin-bottom:28px}.eyebrow{font-size:7px;letter-spacing:1.3px;margin-bottom:12px}.section-top h2{font-size:35px;letter-spacing:-.7px}.section-note{font-size:11px;max-width:280px;margin-top:15px;padding:0;line-height:1.8}.projects-grid{grid-template-columns:1fr;gap:31px}.project-cover{aspect-ratio:1.35}.image-label{font-size:6px;padding:7px 8px;top:13px;left:13px;letter-spacing:.7px}.project-info{padding-top:17px}.project-kicker{font-size:6px;letter-spacing:.9px;margin-bottom:8px}.project-info h3{font-size:26px;letter-spacing:-.4px}.project-info p:not(.project-kicker){font-size:11px;line-height:1.8;margin-top:10px}.result-tag{font-size:9px;margin-top:12px}.project-wide{display:block;padding-top:0}.project-wide .project-info{padding-top:17px}.project-wide h3{font-size:29px;line-height:1.15;max-width:300px}.project-wide .project-info p:not(.project-kicker){margin-top:12px}.project-wide .text-link{margin-top:17px}.wide-metrics{margin-top:22px;padding-top:17px;max-width:100%;gap:24px}.wide-metrics strong{font-size:32px}.wide-metrics span{font-size:9px;margin-top:5px}.work-caption{font-size:8px;line-height:1.9;margin-top:25px}.approach-section{padding:45px 0}.approach-section .section-top{display:block;margin-bottom:31px}.approach-section h2{font-size:30px;line-height:1.18;letter-spacing:-.6px}.approach-emblem{display:none}.principles{grid-template-columns:1fr;gap:23px}.principles article{display:grid;grid-template-columns:28px 1fr;gap:5px 14px;padding-top:15px}.principle-num{grid-column:1;grid-row:1;font-size:19px;line-height:1.3}.principles h3{grid-column:2;font-size:22px;line-height:1.2;margin:0;letter-spacing:-.3px}.principles p{grid-column:2;font-size:11px;line-height:1.9;margin-top:5px;max-width:100%}.about-section{grid-template-columns:1fr;gap:31px;padding-top:49px;padding-bottom:39px}.portrait{aspect-ratio:1.12;max-height:420px}.portrait img{object-position:25% 28%}.portrait figcaption{right:25px;padding:13px 15px;font-size:6px}.about-copy h2{font-size:38px;letter-spacing:-.7px;margin-bottom:20px}.about-copy>p:not(.eyebrow){font-size:12px;line-height:1.9;margin-top:13px}.about-tags{gap:8px 14px;margin-top:20px;max-width:330px}.about-tags span{font-size:9px}.about-tags span:not(:last-child):after{margin-left:13px}.about-copy .text-link{margin-top:22px}.text-link{font-size:10px;gap:24px;padding:11px 15px}.builder-note{gap:15px;padding-bottom:44px}.builder-icon{font-size:28px;margin-top:25px}.builder-note>div{flex-basis:calc(100% - 43px);padding-top:19px}.builder-note .eyebrow{font-size:6px;letter-spacing:1px;margin-bottom:8px}.builder-note h3{font-size:22px;line-height:1.3;letter-spacing:-.35px}.builder-note p:not(.eyebrow){font-size:11px;line-height:1.85;margin-top:11px}.builder-note>.text-link{margin-left:41px;margin-top:2px;font-size:9px}.contact-section{padding:33px 0 29px}.contact-top{align-items:flex-start;gap:18px}.contact-top .eyebrow{font-size:6px;letter-spacing:.8px}.availability{font-size:8px;gap:7px;line-height:1.4}.status-dot{width:4px;height:4px}.contact-section h2{font-size:54px;line-height:1.08;letter-spacing:-1.3px;margin:28px 0 31px}.contact-emblem{width:53px;height:53px;top:auto;bottom:0;right:-1px;stroke-width:1.4}.contact-last{font-weight:600}.contact-bottom{flex-wrap:wrap;gap:15px 20px;padding-top:19px}.email-link{width:100%;font-size:16px;gap:21px;letter-spacing:-.3px}.email-link>span{font-size:20px}.copy-email{font-size:8px;padding:9px 12px;gap:8px}.contact-linkedin{font-size:10px;margin-left:auto}.footer{flex-wrap:wrap;gap:13px;padding-top:23px;padding-bottom:24px;font-size:7px}.footer>span:nth-child(2){order:3;width:100%;font-size:6px;letter-spacing:.9px}.footer>a{margin-left:auto;font-size:8px}.toast{font-size:11px;padding:12px 18px;width:max-content;max-width:calc(100% - 40px)}dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.dialog-top{padding:12px 17px}.close-dialog,.close-menu{width:32px;height:32px;font-size:15px}.case-header{padding:27px 22px 23px}.case-header .project-kicker{font-size:7px;line-height:1.7}.case-header h2{font-size:33px;line-height:1.13;letter-spacing:-.7px}.case-header>p:not(.project-kicker){font-size:11px;line-height:1.8;margin-top:14px}.case-body{padding:23px 22px 30px}.case-stats{gap:14px;padding-bottom:22px;margin-bottom:23px}.case-stats strong{font-size:29px}.case-stats span{font-size:8px;line-height:1.7;margin-top:6px}.case-section{grid-template-columns:1fr;gap:8px;margin-top:21px}.case-section h3{font-size:20px}.case-section p{font-size:11px;line-height:1.85}.case-links{flex-wrap:wrap;gap:15px;margin-top:25px}.case-links .text-link{font-size:9px}.case-note{font-size:8px;line-height:1.9;margin-top:21px}.menu-content{padding:21px 25px 30px}.menu-content>a{font-size:31px;padding:11px 0;line-height:1.4}.menu-content>a>span:last-child{font-size:8px}.menu-content>p{font-size:10px}}
@media(max-width:375px){.header-tools{gap:16px}.hero-art{right:-68px}.hero-card h1{font-size:36px}.hero-card{padding-right:16px}.hero-description{max-width:277px}.contact-section h2{font-size:49px}.contact-emblem{width:43px;height:43px}.impact-copy h2{font-size:32px}.impact-columns{gap:19px}.impact-columns h3{font-size:16px}.email-link{font-size:15px}.about-copy h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Final type scale and illustration blending. */
.hero-art img{mix-blend-mode:darken}
.hero-description{font-size:13px;max-width:405px}
.header nav{font-size:12px}
.impact-columns p{font-size:12px}
.project-info p:not(.project-kicker),.principles p,.builder-note p:not(.eyebrow){font-size:12px}
.section-note{font-size:12px}
.about-copy>p:not(.eyebrow){font-size:13px}
@media(max-width:900px){.header nav{font-size:10px}.hero-description{font-size:12px;max-width:310px}.impact-columns p,.project-info p:not(.project-kicker),.principles p,.builder-note p:not(.eyebrow){font-size:11px}.about-copy>p:not(.eyebrow){font-size:12px}}
@media(max-width:640px){.hero-description{font-size:12px;max-width:300px}.impact-columns p{font-size:11px}.project-info p:not(.project-kicker),.principles p,.builder-note p:not(.eyebrow){font-size:12px}.about-copy>p:not(.eyebrow){font-size:13px}.section-note{font-size:12px}}
@media(max-width:640px){.hero-card h1{font-size:clamp(31px,8.4vw,36px);letter-spacing:-.8px}}
@media(max-width:640px){.contact-emblem{display:none}html[lang=es] .contact-section h2>span:first-child{font-size:.86em}}
/* The portrait supports the headline rather than leading the composition. */
.hero-stage{height:520px}
.hero-art{width:400px;height:400px;right:max(70px,calc((100vw - 1152px)/2 + 24px));bottom:45px}
.hero-art img{object-fit:contain;object-position:center}
@media(min-width:1550px){.hero-stage{height:540px}.hero-art{width:430px;height:420px;right:calc((100vw - 1152px)/2 + 4px);bottom:50px}}
@media(max-width:1150px){.hero-stage{height:500px}.hero-art{width:340px;height:350px;right:60px;bottom:60px}}
@media(max-width:900px){.hero-stage{height:470px}.hero-art{width:280px;height:290px;right:32px;bottom:70px}}
@media(max-width:640px){.hero-stage{height:520px}.hero-art{width:180px;height:180px;right:23px;top:50px;bottom:auto}.hero-art img{object-fit:contain;object-position:center}}
@media(min-width:901px){.floating-orb{top:35px;width:70px;height:70px}}
/* Geometric details: straight edges, clear strokes and quiet contrast. */
:root{--line:#cbd3df;--stroke:2px}
button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.header nav{font-weight:500}
.header nav a:after{height:2px}
.language [data-lang]{font-size:11px;min-height:44px;font-weight:500}
.menu-toggle{width:44px;height:44px;border:var(--stroke) solid var(--navy);border-radius:0;gap:6px;transition:background .18s}
.menu-toggle:before{display:none}
.menu-toggle span{height:2px;width:18px}
.menu-toggle span:nth-child(2){width:12px;margin-left:6px}
.menu-toggle:hover{background:#dfe7f0}
.button,.text-link{position:relative;border:var(--stroke) solid var(--navy);border-radius:0;gap:24px;min-height:48px;padding:13px 19px;font-size:12px;line-height:1.4;font-weight:600;letter-spacing:0;transition:background .18s,color .18s}
.button{min-height:50px;font-size:13px}
.button:hover,.text-link:hover{background:var(--navy);color:#fff;border-color:var(--navy);gap:24px}
.action-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;line-height:1}
.action-arrow svg{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:square;stroke-linejoin:miter}
.button>.action-arrow,.text-link>.action-arrow{font-size:0}
.project-cover{border:var(--stroke) solid var(--navy)}
.project-open{width:42px;height:42px;border:var(--stroke) solid var(--navy);border-radius:0;background:#f5f7fa;transition:background .18s,color .18s}
.project-cover:hover .project-open{transform:none;background:var(--navy);color:#fff}
.image-label{font-size:9px;line-height:1.5;letter-spacing:.6px;font-weight:600;border:0;background:#f8fafced;padding:8px 10px}
.project-kicker{font-size:9px;font-weight:500;letter-spacing:1px;color:#657186}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.2px;color:#5f6d82}
.hero-role{font-size:9px;font-weight:500;letter-spacing:1px;color:#5e6b80}
.hero-role>span:last-child{font-size:8px;letter-spacing:1px;color:#657186}
.geometry-mark{width:37px;height:10px;margin-bottom:20px}
.outline-number{font-size:145px;font-weight:600;letter-spacing:-10px;line-height:1;color:var(--navy);-webkit-text-stroke:0}
.outline-impact>p{font-size:12px;color:#5f6d82;margin:16px 0 9px}
.small-link{font-size:11px;border-bottom:2px solid #a3afc1;color:#596a82;padding-bottom:3px}
.impact-columns .small-link{font-size:10px}
.impact-columns h3{font-weight:600}
.impact-columns p{font-size:13px}
.result-tag{font-size:11px;font-weight:500;gap:9px}
.result-tag:before{width:6px;height:6px;border-radius:0}
.experience-line{border-top-width:2px;border-bottom-width:2px}
.experience-line>span:first-child{font-size:10px}
.wide-metrics,.principles article,.builder-note>div,.contact-bottom{border-top-width:2px}
.wide-metrics span{font-size:10px}
.principle-num{font-family:var(--sans);font-size:16px;font-weight:600;color:var(--navy)}
.principles h3{font-weight:600}
.principles p,.project-info p:not(.project-kicker),.builder-note p:not(.eyebrow){font-size:13px}
.work-caption{font-size:10px;color:#667387}
.about-tags{gap:10px 16px}
.about-tags span{font-size:10px;font-weight:500}
.about-tags span:not(:last-child):after{content:'';display:inline-block;width:4px;height:4px;background:var(--orange);margin-left:16px;vertical-align:middle}
.builder-note{gap:30px}
.builder-note h3{font-weight:600}
.copy-email{min-height:44px;border:var(--stroke) solid var(--navy);border-radius:0;font-size:11px;font-weight:600;padding:11px 14px;gap:9px;transition:background .18s,color .18s}
.copy-email:hover{background:var(--navy);color:white}
.copy-email svg{width:16px;height:16px;stroke-width:1.8}
.contact-linkedin{font-size:12px;font-weight:500;border-bottom:2px solid var(--navy);padding-bottom:5px}
.status-dot{width:7px;height:7px;border:0;background:var(--orange);border-radius:0}
.status-dot:after{display:none}
.availability{font-size:11px;font-weight:500}
.footer{font-size:10px}
.footer>span:nth-child(2){font-size:8px}
.footer a{font-weight:500}
dialog{border:var(--stroke) solid var(--navy)}
.dialog-top{border-bottom-width:2px}
.close-dialog,.close-menu{width:36px;height:36px;border:var(--stroke) solid var(--navy);border-radius:0;font-size:17px;font-weight:600}
.close-dialog:hover,.close-menu:hover{background:var(--navy);color:#fff}
.case-stats{border-bottom-width:2px}
.case-stats strong{font-weight:600}
.case-header .project-kicker{font-size:10px}
.case-section p{font-size:13px}
.case-section h3{font-weight:600}
.case-links .text-link{font-size:12px}
.case-note{font-size:10px}
.menu-content>a{border-bottom-width:2px}
.menu-content>a>span:last-child{font-weight:600;font-size:11px}
.toast{border:var(--stroke) solid var(--navy);font-weight:500;box-shadow:none}
@media(max-width:900px){.hero-role{font-size:8px}.hero-role>span:last-child{font-size:7px}.outline-number{font-size:115px;letter-spacing:-7px}.impact-columns p{font-size:12px}.image-label{font-size:8px;letter-spacing:.3px}.project-kicker{font-size:8px}.eyebrow{font-size:9px}.builder-note>.text-link{margin-left:0}}
@media(max-width:640px){.header-tools{gap:17px}.menu-toggle{width:42px;height:42px}.hero-role{font-size:7px;max-width:220px;letter-spacing:.5px}.hero-role>span:last-child{font-size:7px;letter-spacing:.6px}.hero-card .geometry-mark{width:33px;height:9px;margin-bottom:15px}.button,.text-link{font-size:12px;min-height:48px;padding:12px 16px;gap:20px}.button:hover,.text-link:hover{gap:20px}.hero-description{font-size:13px}.outline-number{font-size:128px;letter-spacing:-8px}.outline-impact>p{font-size:12px;margin-top:13px}.outline-impact .small-link{font-size:10px}.impact-columns h3{font-size:17px}.impact-columns p{font-size:12px}.impact-columns .small-link{font-size:9px}.image-label{font-size:8px;padding:7px 8px;letter-spacing:.4px}.project-open{width:38px;height:38px}.project-info p:not(.project-kicker),.principles p,.builder-note p:not(.eyebrow){font-size:13px}.result-tag{font-size:11px}.eyebrow{font-size:9px;letter-spacing:1px}.project-kicker{font-size:8px;letter-spacing:.7px}.work-caption{font-size:10px}.wide-metrics span{font-size:10px}.principle-num{font-size:15px}.about-tags span{font-size:10px}.builder-note{gap:18px}.builder-note>div{flex-basis:100%}.builder-note .eyebrow{font-size:8px}.builder-note>.text-link{margin-left:0;margin-top:0;font-size:12px}.contact-top .eyebrow{font-size:8px;letter-spacing:.5px}.availability{font-size:10px;gap:9px}.copy-email{font-size:11px;min-height:44px;padding:10px 13px}.contact-linkedin{font-size:12px}.footer{font-size:9px}.footer>span:nth-child(2){font-size:7px}.footer>a{font-size:10px}.case-header .project-kicker{font-size:9px}.case-section p{font-size:13px}.case-stats span{font-size:10px}.case-links .text-link{font-size:12px}.case-note{font-size:10px}.menu-content>a>span:last-child{font-size:10px}.close-dialog,.close-menu{width:36px;height:36px}.toast{font-size:12px}}
/* Keep the desktop opening complete within the available window height. */
@media(min-width:641px){
  :root{--masthead-h:clamp(80px,12svh,108px);--hero-h:520px}
  .masthead .header{height:var(--masthead-h)}
  .hero-stage{height:min(var(--hero-h),calc(100svh - var(--masthead-h)))}
  .hero-art{width:450px;height:420px;bottom:0}
  .hero-art img{object-fit:contain;object-position:center bottom}
}
@media(min-width:1550px){:root{--masthead-h:clamp(80px,12svh,116px);--hero-h:540px}.hero-art{width:470px;height:440px;bottom:0}}
@media(min-width:901px) and (max-width:1150px){:root{--hero-h:500px}.hero-art{width:390px;height:380px;bottom:0}}
@media(min-width:641px) and (max-width:900px){:root{--hero-h:470px}.hero-art{width:320px;height:310px;bottom:0}}
@media(min-width:641px) and (max-height:650px){.hero-card{padding-top:30px;padding-bottom:29px}.hero-card h1{font-size:clamp(40px,4.4vw,56px)}.hero-description{margin-top:17px;margin-bottom:19px}.hero-art{max-height:calc(100% - 16px)}}
/* The masthead and hero together occupy one complete viewport. */
.masthead .header{height:var(--masthead-h)}
.hero-stage{height:calc(100svh - var(--masthead-h));min-height:0}
.shoulder-extension{display:none}
@media(min-width:641px){
  .hero-art{--portrait-width:450px;--shoulder-gap:max(70px,calc((100vw - 1152px)/2 + 24px));--rendered-width:min(var(--portrait-width),calc((100svh - var(--masthead-h) - 16px)*1.094245));--shoulder-drop:min(calc(var(--shoulder-gap)*.32),calc(var(--rendered-width)*.12));width:var(--rendered-width);height:auto;aspect-ratio:1312/1199;max-height:none;right:var(--shoulder-gap);bottom:0;overflow:visible}
  .hero-art img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
  /* Continue the existing contour from its measured endpoint in the artwork. */
  .shoulder-extension{display:block;position:absolute;left:calc(100% - .5px);width:calc(var(--shoulder-gap) + 1px);height:var(--shoulder-drop);bottom:calc(var(--rendered-width)*.16310976 - var(--shoulder-drop));overflow:visible;fill:none;stroke:#fb635a;stroke-width:2.5;mix-blend-mode:darken;pointer-events:none}
  .shoulder-extension path{vector-effect:non-scaling-stroke;stroke-linecap:butt}
}
@media(min-width:1550px){.hero-art{--portrait-width:470px;--shoulder-gap:calc((100vw - 1152px)/2 + 4px)}}
@media(min-width:901px) and (max-width:1150px){.hero-art{--portrait-width:390px;--shoulder-gap:60px}}
@media(min-width:641px) and (max-width:900px){.hero-art{--portrait-width:320px;--shoulder-gap:32px}}
@media(max-width:640px){
  :root{--masthead-h:83px}
  .hero-stage{display:grid;grid-template-rows:minmax(0,1fr) auto;height:calc(100svh - var(--masthead-h));min-height:0}
  .hero-card{position:relative;grid-row:2;bottom:auto;left:0}
  .hero-art{position:relative;grid-row:1;align-self:end;justify-self:end;right:auto;top:auto;bottom:auto;width:180px;height:min(180px,100%);margin-right:23px;overflow:hidden}
  .hero-art img{object-fit:contain;object-position:center bottom}
}
/* A quiet highlight moves between the shoulders, then rests. */
.shoulder-motion{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke:#f8d4c8;stroke-width:2.3;pointer-events:none;z-index:2}
.shoulder-motion path,.shoulder-extension .extension-pulse{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:18 182;stroke-dashoffset:18;opacity:0;animation-duration:12s;animation-timing-function:linear;animation-iteration-count:infinite;animation-delay:1s}
.shoulder-motion .motion-left{animation-name:shoulder-sweep-left}
.shoulder-motion .motion-right{animation-name:shoulder-sweep-right}
.shoulder-extension .extension-pulse{stroke:#f8d4c8;stroke-width:2.7;animation-name:shoulder-sweep-out}
@keyframes shoulder-sweep-left{0%,4%{opacity:0;stroke-dashoffset:18}7%{opacity:.7}22%{opacity:.7;stroke-dashoffset:-100}25%,100%{opacity:0;stroke-dashoffset:-100}}
@keyframes shoulder-sweep-right{0%,22%{opacity:0;stroke-dashoffset:18}25%{opacity:.7}42%{opacity:.7;stroke-dashoffset:-100}45%,100%{opacity:0;stroke-dashoffset:-100}}
@keyframes shoulder-sweep-out{0%,40%{opacity:0;stroke-dashoffset:18}43%{opacity:.7}56%{opacity:.7;stroke-dashoffset:-100}59%,100%{opacity:0;stroke-dashoffset:-100}}
@media(max-width:640px){.shoulder-motion{stroke-width:1.25}}
@media(prefers-reduced-motion:reduce){.shoulder-motion,.shoulder-extension .extension-pulse{display:none}}
