@font-face{font-family:Sackers;src:url('assets/sackers.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:#35302d;background:#f3f1ea;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.55}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,summary,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #303d7e;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:.98;letter-spacing:-.055em}em{font-weight:400}h2{font-size:clamp(52px,6.3vw,96px)}.eyebrow,.section-index,.header nav,.line-link,.hero-location,.edition,.image-bottom,.small,.project-caption>span,.project-open,.code h3,.code article>span,.code-footer>span,footer,.contact-cta,.gallery-top,.gallery-footer,.form-note,figcaption{font-size:10px;letter-spacing:.12em}.eyebrow,.section-index,.header nav,.line-link,.edition,.image-bottom,.project-caption>span,.project-open,.code h3,.code article>span,.code-footer>span,.contact-cta,.gallery-top{text-transform:uppercase}.header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #35302d26;background:#f3f1eaf5;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand{width:178px}.brand img{height:auto}.header nav{display:flex;gap:36px;align-items:center}.header nav a{padding:10px 0;position:relative}.header nav a:after{content:'';position:absolute;bottom:2px;left:0;right:100%;height:1px;background:currentColor;transition:right .3s}.header nav a:hover:after{right:0}.nav-contact{margin-left:18px}.nav-contact span{margin-left:14px;font-size:17px}.menu-toggle{display:none}.hero{padding:38px 5% 0}.hero-top{display:flex;justify-content:space-between;align-items:start}.hero-location{text-align:right;line-height:1.65}.hero-location span{opacity:.55}.hero-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 0 36px}.hero h1{font-size:clamp(74px,10.5vw,170px);white-space:nowrap}.hero h1 em{color:#3c5c45}.circle-link{border:1px solid #35302d65;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;font-size:36px;transition:background .3s,color .3s}.circle-link:hover{background:#3c5c45;color:#fff}.hero-image{height:clamp(260px,34vw,560px);position:relative;overflow:hidden;background:#b1b0a2}.hero-image img{object-position:50% 54%;transition:transform 1.5s}.hero-image:hover img{transform:scale(1.025)}.hero-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#181d1880)}.image-bottom{position:absolute;bottom:22px;left:28px;right:28px;display:flex;justify-content:space-between;color:white;z-index:1;font-size:9px}.hero-foot{display:flex;justify-content:space-between;align-items:center;padding:24px 0 30px;border-bottom:1px solid #35302d35}.hero-foot p{font-size:14px;line-height:1.4}.line-link{display:inline-flex;gap:36px;align-items:center;border-bottom:1px solid currentColor;padding:10px 0}.line-link span{font-size:20px}.edition{opacity:.55;font-size:9px}.section-pad{padding:100px 7%}.section-index{display:flex;justify-content:space-between;padding-bottom:36px;border-bottom:1px solid #35302d35;margin-bottom:52px;font-size:9px}.section-index span:last-child{opacity:.6}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:start}.intro-copy{padding:10px 0;max-width:450px}.lead{font-family:Georgia,serif;font-size:29px;line-height:1.25;letter-spacing:-.02em;margin-bottom:26px}.intro-copy>p:not(.lead){color:#6b6660;font-size:14px;margin-bottom:24px;line-height:1.8}.intro-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;margin-top:70px;align-items:center}.intro-bottom figure img{height:370px;object-fit:cover}.intro-bottom figcaption{font-size:8px;margin-top:12px;opacity:.65}.intro-statement{padding-left:25px}.intro-statement>p{font-family:Georgia,serif;font-size:clamp(32px,3.5vw,52px);line-height:1.12;letter-spacing:-.04em;margin:26px 0}.intro-statement>p em{color:#3c5c45}.small{line-height:1.8;opacity:.7}.projects{background:#e9e7df;padding-top:85px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.section-heading h2{font-size:clamp(64px,8vw,120px)}.section-heading>div{font-size:14px;padding-bottom:6px}.reference-note{font-size:10px;opacity:.6;margin-top:12px;max-width:210px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 35px}.project{padding:0;border:0;background:none;text-align:left;min-width:0}.project-wide{grid-column:1/-1}.project-photo{position:relative;overflow:hidden;height:350px}.project-wide .project-photo{height:460px}.project-photo img{transition:transform .65s}.project:hover img{transform:scale(1.035)}.project-open{position:absolute;bottom:20px;right:20px;background:#f3f1ea;padding:12px 18px;font-size:8px;transition:background .3s}.project:hover .project-open{background:#d5e4e7}.project-caption{padding:18px 0;display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #35302d30}.project-caption h3{font-family:Georgia,serif;font-size:27px;font-weight:400;letter-spacing:-.03em}.project-caption h3 span{font-family:Arial,sans-serif;font-size:13px;margin-left:13px;letter-spacing:0}.project-caption>span{font-size:8px}.project-offset{margin-top:100px}.services-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:12%}.services h2{font-size:clamp(48px,5vw,76px)}details{border-bottom:1px solid #35302d35}summary{list-style:none;display:flex;align-items:center;gap:24px;cursor:pointer;padding:24px 0;font-size:20px}summary::-webkit-details-marker{display:none}summary>span{font-size:10px;opacity:.5}summary>b{font-weight:400;margin-left:auto;font-size:22px}details[open] summary>b{transform:rotate(45deg)}details p{padding:0 30px 24px 38px;color:#6b6660;font-size:13px;line-height:1.8}.code{background:#35302d;color:#f3f1ea}.code .section-index{border-color:#f3f1ea40}.code h2{font-size:clamp(64px,8vw,120px);margin-bottom:65px}.code h2 em{color:#c7cfbb}.code-grid{display:grid;grid-template-columns:repeat(4,1fr)}.code article{padding:0 24px;border-left:1px solid #f3f1ea40}.code article:first-child{padding-left:0;border:0}.code article>span{opacity:.6;font-size:9px}.code h3{font-size:14px;letter-spacing:.07em;margin:24px 0 16px}.code article p{font-size:12px;color:#d3cfc7;max-width:180px}.code-footer{display:flex;justify-content:space-between;align-items:end;margin-top:70px;padding-top:35px;border-top:1px solid #f3f1ea40}.code-footer p{font-family:Georgia,serif;font-size:28px;line-height:1.25;letter-spacing:-.02em}.code-footer>span{font-size:9px}.contact{padding-top:90px;padding-bottom:70px}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:10%;align-items:center}.contact h2{font-size:clamp(55px,6vw,90px)}.contact h2 em{color:#3c5c45}.contact-copy p{font-size:14px;color:#6b6660;line-height:1.7}.contact-cta{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-bottom:1px solid #35302d;margin-top:25px}.contact-cta span{font-size:24px}.email{font-size:12px;display:block;margin-top:20px;color:#6b6660}form{display:grid;grid-template-columns:1fr 1.3fr auto;gap:30px;align-items:end;margin-top:70px;padding-top:35px;border-top:1px solid #35302d30}label{font-size:11px;display:flex;flex-direction:column;gap:15px}select,textarea{width:100%;border:0;border-bottom:1px solid #35302d50;background:transparent;padding:10px 0;font-size:12px;border-radius:0;resize:vertical;outline-offset:2px;min-height:44px}select{height:64px}form button{padding:14px 18px;border:1px solid #35302d;background:transparent;font-size:10px;min-height:48px;display:flex;gap:20px;align-items:center;margin-bottom:2px}form button:hover{background:#35302d;color:#fff}.form-note{grid-column:1/-1;font-size:9px;opacity:.6;letter-spacing:0;margin-top:-12px}footer{padding:30px 5%;display:flex;align-items:center;gap:35px;border-top:1px solid #35302d35;font-size:9px;letter-spacing:.01em}footer>a:first-child{width:130px;margin-right:15px}footer img{height:auto}footer>span{margin-left:auto;opacity:.6}footer p{font-size:9px}dialog{width:min(1200px,94vw);max-height:94vh;border:0;background:#f3f1ea;padding:32px 40px;color:#35302d}dialog::backdrop{background:#171a18db;backdrop-filter:blur(5px)}.gallery-top{display:flex;justify-content:space-between;align-items:center}.gallery-top button{border:0;background:none;padding:10px;font-size:12px}dialog h2{font-size:48px;margin:20px 0 12px}.gallery-note{font-size:11px;opacity:.6}.gallery-main{display:grid;grid-template-columns:44px 1fr 44px;gap:15px;margin-top:25px;align-items:center}.gallery-main>button{width:44px;height:44px;border:1px solid #35302d60;background:transparent;border-radius:50%;font-size:20px}.gallery-main img{width:100%;height:min(45vh,470px);object-fit:contain}.gallery-footer{display:flex;justify-content:space-between;gap:15px;margin-top:20px;font-size:10px;letter-spacing:.04em}#gallery-thumbs{display:flex;gap:10px;justify-content:center;margin-top:20px}#gallery-thumbs button{padding:2px;width:75px;height:45px;border:1px solid transparent;background:none;opacity:.55}#gallery-thumbs button[aria-current=true]{opacity:1;border-color:#35302d}.skip{position:fixed;top:-60px;left:20px;background:#35302d;color:white;padding:12px;z-index:100}.skip:focus{top:10px}@media(min-width:1600px){.header,.hero,.section-pad,footer{padding-left:max(7%,calc((100vw - 1450px)/2));padding-right:max(7%,calc((100vw - 1450px)/2))}}@media(max-width:900px){.header nav{gap:20px}.edition{display:none}.hero-heading{padding-top:28px}.circle-link{height:55px;width:55px;font-size:27px}.intro-grid,.intro-bottom{gap:6%}.section-pad{padding:75px 6%}.intro-bottom figure img{height:330px}.project-wide .project-photo{height:360px}.project-photo{height:270px}.project-offset{margin-top:70px}.services-grid{gap:7%}.code article{padding:0 15px}.code h3{font-size:11px}.contact-grid{gap:6%}.contact-copy{font-size:12px}form{grid-template-columns:1fr 1fr}form button{width:max-content}.form-note{grid-column:2;align-self:center;margin:0}footer{flex-wrap:wrap;gap:20px}footer>span{margin-left:0}footer>a:last-child{margin-left:auto}}@media(max-width:640px){html{scroll-padding-top:90px}.header{height:82px;padding:0 6%}.brand{width:146px}.menu-toggle{display:flex;align-items:center;gap:20px;padding:10px 0;border:0;background:none;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.menu-toggle span{font-size:22px}.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#f3f1ea;padding:30px 6%;box-shadow:0 15px 20px #35302d15}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:16px}.nav-contact{margin:0}.hero{padding:26px 6% 0}.hero-top>.eyebrow{max-width:160px;font-size:8px;line-height:1.8}.hero-location{font-size:8px}.hero h1{font-size:clamp(56px,13.7vw,88px);white-space:normal;line-height:1.03;letter-spacing:-.055em}.hero h1 em{display:block}.hero-heading{padding:30px 0}.circle-link{width:49px;height:49px;flex-shrink:0;align-self:end;margin-bottom:5px}.hero-image{height:310px;margin:0 -6.82%}.hero-image img{object-position:52% center}.image-bottom{left:20px;right:20px;bottom:16px;font-size:7px;letter-spacing:.05em}.image-bottom span:first-child{display:none}.image-bottom span:last-child{margin-left:auto}.hero-foot{padding:22px 0}.hero-foot p{font-size:12px}.hero-foot .line-link{font-size:8px;gap:18px}.section-pad{padding:60px 6%}.section-index{padding-bottom:24px;margin-bottom:35px;font-size:8px}.section-index span:last-child{max-width:130px;text-align:right}.intro-grid,.intro-bottom,.services-grid,.contact-grid{grid-template-columns:1fr;gap:30px}h2{font-size:63px}.intro-copy{padding:0}.lead{font-size:25px}.intro-copy>p:not(.lead){font-size:13px}.intro-bottom{margin-top:40px;gap:35px}.intro-bottom figure img{height:310px}.intro-statement{padding:0}.intro-statement>p{font-size:40px}.intro-statement .small{font-size:9px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:72px;margin-bottom:24px}.section-heading>div{display:flex;align-items:end;justify-content:space-between;gap:20px;font-size:12px}.reference-note{font-size:8px;max-width:130px}.project-grid{grid-template-columns:1fr;gap:35px}.project-wide{grid-column:auto}.project-wide .project-photo,.project-photo{height:255px}.project-offset{margin:0}.project-caption h3{font-size:26px}.project-caption>span{font-size:7px}.project-open{font-size:7px;padding:10px 12px;bottom:14px;right:14px}.services h2{font-size:54px}.service-list{margin-top:10px}summary{font-size:19px;padding:22px 0}.code h2{font-size:73px;margin-bottom:45px}.code-grid{grid-template-columns:1fr 1fr;gap:35px 15px}.code article{padding:0 0 0 16px}.code article:nth-child(3){padding-left:0;border:0}.code h3{margin:15px 0 10px;font-size:11px}.code article p{font-size:11px}.code-footer{display:block;margin-top:45px;padding-top:25px}.code-footer p{margin-top:20px;font-size:25px}.contact h2{font-size:58px}.contact-copy{margin-top:0}.contact-copy p{font-size:13px}.contact-cta{margin-top:12px}.email{font-size:11px}form{grid-template-columns:1fr;gap:26px;margin-top:45px;padding-top:30px}.form-note{grid-column:1;margin-top:-10px;line-height:1.6}.contact{padding-bottom:45px}footer{padding:28px 6%;gap:20px 26px;justify-content:space-between}footer>a:first-child{width:125px;margin:0}footer p{width:calc(100% - 160px);text-align:right}footer>a:last-child{margin-left:0}footer>span{font-size:8px}dialog{padding:20px 18px;width:96vw}dialog h2{font-size:38px}.gallery-main{grid-template-columns:32px 1fr 32px;gap:5px}.gallery-main>button{width:32px;height:32px;font-size:17px}.gallery-main img{height:36vh}.gallery-footer{font-size:8px;letter-spacing:0}.gallery-note{font-size:10px}.gallery-top .eyebrow{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.eyebrow,.section-index,.header nav,.line-link,.edition,.image-bottom,.project-open,.code h3,.code article>span,.code-footer>span,.contact-cta,.gallery-top{font-family:Sackers,Arial,sans-serif}
@font-face{font-family:Editorial;src:url('assets/editorial.otf') format('opentype');font-weight:300 400;font-display:swap}h1,h2,.lead,.intro-statement>p,.project-caption h3,.code-footer p{font-family:Editorial,Georgia,'Times New Roman',serif}h1 em,h2 em,.intro-statement>p em{font-style:normal}

#gallery-thumbs{flex-wrap:wrap}#gallery-thumbs button{flex:0 0 66px;height:44px}.hero-image img{object-position:50% 60%}
@media(max-width:640px){#gallery-thumbs{gap:7px}#gallery-thumbs button{flex-basis:54px;height:40px}.hero-image img{object-position:48% center}}
@media(min-width:641px){.hero-image img{object-position:50% 40%}}
@media(max-width:640px){.gallery-main{display:block;position:relative;margin-top:16px}.gallery-main img{height:min(42vh,355px);width:100%}.gallery-main>button{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#f3f1eaeb}.gallery-main>button:first-child{left:5px}.gallery-main>button:last-child{right:5px}}

.visualizations{background:#f3f1ea}.visualizations .section-heading h2{font-size:clamp(50px,5.9vw,86px)}.visualizations-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:5%;align-items:start}.tiny-project .project-photo{height:430px}.tiny-project .project-caption{align-items:start;gap:15px}.tiny-project .project-caption h3{font-size:30px}.tiny-project .project-caption h3 span{display:block;margin:8px 0 0;font-size:11px}.tiny-project .project-caption>span{padding-top:8px}.tiny-details{padding-top:5px}.tiny-details>p:not(.lead){font-size:13px;line-height:1.8;color:#6b6660}.tiny-previews{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:28px 0 18px}.tiny-previews button{background:none;border:0;padding:0;text-align:left;min-width:0}.tiny-previews img{height:130px;object-fit:cover;transition:opacity .3s}.tiny-previews button:hover img{opacity:.8}.tiny-previews span{display:block;font-size:9px;margin-top:9px;letter-spacing:.05em}.tiny-details .line-link{font-size:8px;gap:18px}.header nav{gap:26px}
@media(max-width:900px){.header nav{gap:15px;font-size:8px}.nav-contact{margin-left:0}.visualizations-layout{grid-template-columns:1fr;gap:32px}.tiny-project .project-photo{height:360px}.tiny-details{max-width:650px}.tiny-previews img{height:210px}}
@media(max-width:640px){.visualizations .section-heading h2{font-size:53px}.tiny-project .project-photo{height:265px}.tiny-project .project-caption h3{font-size:29px}.tiny-project .project-caption>span{font-size:7px}.tiny-previews img{height:135px}.tiny-details .lead{font-size:28px}.header nav{font-size:10px}}

.tesoro-layout{margin-top:75px;padding-top:60px;border-top:1px solid #35302d30;grid-template-columns:1fr 1.55fr}.tesoro-layout>.tiny-details{grid-column:1;grid-row:1}.tesoro-layout>.project{grid-column:2;grid-row:1}
@media(max-width:900px){.tesoro-layout{grid-template-columns:1fr}.tesoro-layout>.tiny-details,.tesoro-layout>.project{grid-column:auto;grid-row:auto}.tesoro-layout>.tiny-details{order:1}.tesoro-layout>.project{order:0}}
@media(max-width:640px){.tesoro-layout{margin-top:45px;padding-top:40px}}
#gallery-title{letter-spacing:-.025em}

.fz-layout{margin-top:75px;padding-top:60px;border-top:1px solid #35302d30}@media(max-width:640px){.fz-layout{margin-top:45px;padding-top:40px}}

.manantiales-group{margin-top:90px;padding-top:65px;border-top:1px solid #35302d35}@media(max-width:640px){.manantiales-group{margin-top:50px;padding-top:40px}}

.project-credits,.gallery-credits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 30px;text-align:left;padding:15px 0;line-height:1.5}.project-credits{border-bottom:1px solid #35302d30}.project-credits>span,.gallery-credits>span{display:flex;flex-direction:column;gap:3px;min-width:0}.project-credits>span>span,.gallery-credits>span>span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#6b6660}.project-credits strong,.gallery-credits strong{font-size:12px;font-weight:400;letter-spacing:0}.gallery-credits{max-width:520px;margin-top:8px;padding-bottom:4px}.gallery-credits[hidden]{display:none}@media(max-width:640px){.project-credits,.gallery-credits{gap:14px 20px}.project-credits strong,.gallery-credits strong{font-size:11px}.gallery-credits{margin-top:6px;padding-top:10px}.gallery-credits>span>span{font-size:7px}}
