@font-face{font-family:Alan Sans Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/alan-sans-latin-ext-wght-normal-bMqJwkmD.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alan Sans Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/alan-sans-latin-wght-normal-BYXbn9SH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Catamaran Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/catamaran-tamil-wght-normal-Bh2mjylB.woff2)format("woff2-variations");unicode-range:U+964-965,U+B82-BFA,U+200C-200D,U+20B9,U+25CC}@font-face{font-family:Catamaran Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/catamaran-latin-ext-wght-normal-C0IFbv3I.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Catamaran Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/catamaran-latin-wght-normal-B4Mq1_Zn.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--ink:#101010;--paper:#eaf4fa;--paper-warm:#f0ead8;--blue:#2274a5;--blue-soft:#a7d9ec;--muted:#8d8d87;--line:#eaf4fa38;--gutter:clamp(1.25rem, 4vw, 4.5rem);--max-width:90rem;--display:"Alan Sans Variable", "Alan Sans", Arial, sans-serif;--body:"Alan Sans Variable", "Alan Sans", Arial, sans-serif;--catamaran:"Catamaran Variable", Catamaran, Arial, sans-serif;--mono:"Courier New", Courier, monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{background:var(--ink);min-width:20rem;color:var(--paper);font-family:var(--body);text-rendering:optimizelegibility;margin:0;line-height:1.6;overflow-x:clip}body,button,a{-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}h1,h2,h3,p,ul{margin:0}ul{padding:0;list-style:none}:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.skip-link{z-index:100;background:var(--blue);color:#fff;padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kicker{color:var(--blue);font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;font-size:.72rem;font-weight:700}.hero-top-strip{background:var(--ink);width:100%;height:clamp(0px,6.095vw - 23.7705px,64px)}.hero{--hero-portrait-width:clamp(22rem, 41vw, 44.625rem);--hero-portrait-cover:clamp(8.13rem, 15.16vw, 16.5rem);z-index:2;background:var(--paper);height:744px;min-height:744px;color:var(--ink);padding:0;position:relative;overflow:visible}.hero__copy{z-index:3;width:min(620px,48vw);position:absolute;top:171px;left:10vw}.hero h1{font-family:var(--display);letter-spacing:.05em;margin-top:30px;font-size:96px;font-weight:700;line-height:1.3}.hero__intro{color:#167ab5;width:700px;font-family:var(--body);letter-spacing:.025em;margin-top:12px;font-size:32px;font-weight:400;line-height:1.6}.hero__hello{color:#167ab5;font-family:var(--body);letter-spacing:.025em;font-size:32px;font-weight:400;line-height:1.2}.hero__portrait{z-index:5;right:0;bottom:calc(-1 * var(--hero-portrait-cover));width:var(--hero-portrait-width);transform-origin:50%;max-width:48vw;height:auto;position:absolute;transform:scaleX(-1)}@media (width<=72rem){.hero{--hero-portrait-width:clamp(16.5rem, 34vw, 20.5rem);--hero-portrait-cover:clamp(6.1rem, 12.56vw, 7.58rem);height:calc(100svh - var(--hero-portrait-cover));min-height:36rem}.hero__copy{top:clamp(3.75rem,13vh,7.25rem);left:var(--gutter);width:calc(100% - (var(--gutter) * 2))}.hero__hello,.hero__intro{font-size:clamp(1.15rem,2.75vw,1.55rem)}.hero h1{margin-top:clamp(1rem,2.25vh,1.45rem);font-size:clamp(3.25rem,7vw,5.25rem);line-height:1.08}.hero__intro{width:min(100%,40rem);margin-top:clamp(1.1rem,2.6vh,1.5rem);line-height:1.45}.hero__portrait{width:var(--hero-portrait-width);max-width:55vw}}@media (width<=47.99rem){.hero{--hero-portrait-width:clamp(16.5rem, 58vw, 20.5rem);--hero-portrait-cover:clamp(6.1rem, 21.44vw, 7.58rem);height:calc(100svh - var(--hero-portrait-cover));min-height:36rem}.hero__copy{top:clamp(3rem,8vh,4.25rem);left:var(--gutter);width:calc(100% - (var(--gutter) * 2))}.hero__hello,.hero__intro{font-size:clamp(1rem,4.1vw,1.18rem)}.hero h1{margin-top:clamp(1rem,2.5vh,1.25rem);font-size:clamp(2.75rem,13vw,3.95rem);line-height:1.08}.hero__intro{width:100%;margin-top:clamp(1.15rem,3vh,1.4rem);line-height:1.45}.hero__portrait{right:0;bottom:calc(-1 * var(--hero-portrait-cover));width:var(--hero-portrait-width);max-width:96vw}}.section-intro{width:min(100% - (var(--gutter) * 2), var(--max-width));margin-inline:auto}.section-intro h2{font-family:var(--display);letter-spacing:-.06em;text-transform:uppercase;margin-top:.25rem;font-size:clamp(2rem,7vw,5.6rem);line-height:.9}.story-scroll-shell{background:var(--paper);height:200svh;min-height:calc(700px + 100svh)}.story-scroll-shell--complete{height:100svh;min-height:700px}.story-scroll-shell--complete .story-carousel{position:relative;top:auto}.story-carousel{z-index:6;background:var(--ink);height:100svh;min-height:700px;position:sticky;top:0;overflow:hidden}.story-carousel__inner{width:min(calc(100% - (var(--gutter) * 2)), 78rem);grid-template-rows:auto auto minmax(0,1fr);height:100%;margin-inline:auto;padding-top:clamp(2.75rem,6vh,4.75rem);display:grid}.story-carousel h2{color:var(--blue);font-family:var(--display);letter-spacing:.035em;text-align:center;text-transform:uppercase;font-size:clamp(3rem,4.75vw,4.25rem);font-weight:700;line-height:1}.timeline-mark{width:100%;height:clamp(5.75rem,12vh,7.5rem);margin-top:clamp(1rem,2.5vh,2rem);position:relative;overflow:visible}.timeline-mark__line{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.timeline-mark path{fill:none;stroke:var(--paper-warm);stroke-width:3px}.timeline-mark__point{z-index:1;top:var(--timeline-y);left:var(--timeline-x);cursor:pointer;background:#dedede;border:0;border-radius:50%;width:.75rem;height:.75rem;padding:0;position:absolute;transform:translate(-50%,-50%)}.timeline-mark__point--past{background:#8c776d}.timeline-mark__point:before{content:"";border-radius:inherit;position:absolute;inset:-.75rem}.timeline-mark__point:focus-visible{outline:3px solid var(--blue);outline-offset:.35rem}.timeline-mark__moving-dot{z-index:2;background:var(--blue);pointer-events:none;transform-origin:50%;will-change:transform;border-radius:50%;width:1.625rem;height:1.625rem;position:absolute;top:0;left:0}.story-carousel__slides{min-height:0;position:relative}.story-slide{opacity:0;visibility:hidden;will-change:opacity, transform;grid-template-columns:minmax(0,1.25fr) minmax(17rem,.72fr);align-items:center;gap:clamp(3rem,7vw,7rem);display:grid;position:absolute;inset:0}.story-slide:first-child{opacity:1;visibility:visible}.story-slide__copy{align-self:center;padding-top:3.45rem;padding-bottom:clamp(2rem,6vh,4rem)}.story-slide__copy p{max-width:45rem;color:var(--paper-warm);letter-spacing:.025em;font-size:clamp(1rem,1.5vw,1.45rem);line-height:1.62}.story-carousel__controls-layout{pointer-events:none;grid-template-columns:minmax(0,1.25fr) minmax(17rem,.72fr);align-items:center;gap:clamp(3rem,7vw,7rem);display:grid;position:absolute;inset:0}.story-carousel__copy-reserve{padding-bottom:clamp(2rem,6vh,4rem)}.story-carousel__copy-reserve-texts{display:grid}.story-carousel__copy-reserve-texts p{letter-spacing:.025em;visibility:hidden;grid-area:1/1;max-width:45rem;font-size:clamp(1rem,1.5vw,1.45rem);line-height:1.62}.story-slide__controls{pointer-events:auto;will-change:opacity;gap:.35rem;margin-bottom:1rem;display:flex}.story-carousel:not(.story-carousel--entrance-complete) .story-slide__controls{opacity:0;pointer-events:none}.story-arrow{cursor:pointer;background:0 0;border:0;place-items:center;width:2.45rem;height:2.45rem;padding:0;display:grid}.story-arrow img{width:2rem;transition:transform .22s}.story-arrow--previous img{transform:rotate(180deg)}.story-arrow--down img{transform:rotate(90deg)}.story-arrow:disabled{cursor:default;opacity:.18}.story-slide__media{aspect-ratio:1.02;justify-self:end;width:min(100%,28rem);height:auto;min-height:18rem;max-height:min(54vh,28rem)}.media-placeholder{isolation:isolate;background:#202020;min-height:18rem;position:relative;overflow:hidden}.media-placeholder img{object-fit:cover;width:100%;height:100%;display:block}.media-placeholder:before,.media-placeholder:after{content:"";z-index:-1;border:1px solid #eaf4fa2e;position:absolute}.media-placeholder:before{border-radius:48% 52% 42% 58%;inset:12% 20%}.media-placeholder:after{inset:25% 8%;transform:rotate(12deg)}.media-placeholder--1{border-radius:45% 55% 42% 58%/58% 35% 65% 42%}.media-placeholder--2{border-radius:32% 68% 40% 60%/48% 36% 64% 52%}.media-placeholder--3{border-radius:34% 66% 42% 58%/54% 38% 62% 46%}.projects{padding:1.25rem var(--gutter) clamp(4rem, 9vw, 8rem);background:var(--paper);color:var(--ink)}.projects .section-intro{width:min(100%, var(--max-width))}.section-intro--light .kicker{display:none}.section-intro--light h2{color:#816c61;font-family:var(--display);letter-spacing:.05em;text-align:center;text-transform:uppercase;font-size:clamp(3.25rem,4.85vw,4.4rem);font-weight:700;line-height:1}.project-grid{width:min(100%, var(--max-width));gap:clamp(1.3rem,2.4vw,2rem);margin:clamp(2.5rem,6vw,5rem) auto 0;display:grid}.project-card{background:#ffffff6b;border:1px solid #816c613d;min-width:0;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;overflow:hidden;box-shadow:0 .85rem 2rem #10101012}.project-card:hover{border-color:#2274a557;transform:translateY(-.28rem);box-shadow:0 1.35rem 3rem #10101025}.project-card__media{aspect-ratio:16/10;color:var(--paper);font-family:var(--catamaran);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:flex-start;padding:1rem;font-size:.8rem;display:flex;position:relative;overflow:hidden}.project-card__media--image{background:#d8e8ef;padding:0}.project-card__media--image img{object-fit:cover;width:100%;height:100%;display:block}.project-card__media--1{background:linear-gradient(135deg,#1b1b1b 0 50%,#007eaf 50%)}.project-card__media--2{background:linear-gradient(25deg,#a5d9eb 0 45%,#273033 45%)}.project-card__media--3{background:linear-gradient(145deg,#7d665f 0 38%,#111 38%)}.project-card__media--4{background:linear-gradient(35deg,#111 0 65%,#ece6d5 65%)}.project-card__media--image{background:#d8e8ef}.project-card__body{flex-direction:column;min-height:16rem;padding:1.35rem 1.45rem 1.55rem;display:flex}.project-card h3{font-family:var(--display);letter-spacing:.025em;text-transform:uppercase;font-size:clamp(1.15rem,2.2vw,1.55rem);font-weight:700;line-height:1.08}.project-card p{color:#40484b;font-family:var(--catamaran);letter-spacing:.018em;margin-top:.9rem;font-size:1rem;line-height:1.48}.project-card ul,.project-page__tags{flex-wrap:wrap;gap:.45rem;margin-top:1rem;display:flex}.project-card li,.project-page__tags li{color:#816c61;font-family:Inter, var(--catamaran);letter-spacing:.025em;text-transform:uppercase;border:1px solid #816c615c;border-radius:999px;align-items:center;padding:.22rem .6rem;font-size:.72rem;line-height:1;display:inline-flex}.project-card__link{color:#2274a5;font-family:var(--catamaran);letter-spacing:.035em;text-transform:uppercase;text-underline-offset:.28rem;margin-top:auto;padding-top:1.5rem;font-size:.86rem;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.contact{min-height:28.5rem;padding:4.75rem var(--gutter) 4.25rem;text-align:center;background:var(--ink);align-content:center;justify-items:center;display:grid}.contact .contact__title{color:#816c61;font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;font-size:clamp(3.25rem,4.85vw,4.4rem);font-weight:700;line-height:1}.contact__copy{color:#e9f1f7;max-width:44rem;font-family:var(--catamaran);letter-spacing:.05em;margin-top:3.75rem;font-size:clamp(1.1rem,1.65vw,1.5rem);font-weight:400;line-height:1.65}.contact__copy strong{font-weight:700}.contact__links{flex-wrap:wrap;justify-content:center;gap:2.5rem;margin-top:2.15rem;display:flex}.contact__links a{color:#e7dfc6;font-family:var(--catamaran);letter-spacing:.05em;text-underline-offset:.25rem;font-size:clamp(1.1rem,1.65vw,1.5rem);font-weight:400;line-height:1;text-decoration:underline;text-decoration-thickness:1px}.contact__links a:hover{color:var(--paper)}.project-page__back,.project-page--missing a{color:var(--blue-soft);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;text-underline-offset:.3rem;font-size:.75rem;font-weight:700;text-decoration:underline}.project-page{min-height:100svh;padding:8rem var(--gutter) 5rem;background:var(--paper);color:var(--ink)}.project-page>*{width:min(100%,58rem);margin-inline:auto}.project-page .kicker{margin-top:4rem}.project-page h1{font-family:var(--display);letter-spacing:-.065em;text-transform:uppercase;margin-top:.5rem;font-size:clamp(2.7rem,8vw,6.5rem);line-height:.9}.project-page__summary{margin-top:1.5rem;font-size:clamp(1rem,2vw,1.25rem)}.project-page__placeholder{color:#52717d;min-height:22rem;font-family:var(--mono);text-align:center;text-transform:uppercase;background:#d8e8ef;place-items:center;margin-top:3rem;padding:2rem;font-size:.75rem;display:grid}.project-page--missing{align-content:center;display:grid}@media (width>=48rem){.media-placeholder{min-height:26rem}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=72rem){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=47.99rem){.story-scroll-shell{height:200svh;min-height:calc(740px + 100svh)}.story-scroll-shell--complete,.story-carousel{height:100svh;min-height:740px}.story-carousel__inner{width:calc(100% - (var(--gutter) * 2));padding-top:2.25rem}.story-carousel h2{font-size:clamp(2.25rem,11vw,3.25rem)}.timeline-mark{height:4.75rem;margin-top:.75rem}.story-slide{grid-template-rows:auto minmax(12rem,1fr);grid-template-columns:1fr;align-content:start;gap:.55rem}.story-slide__copy{padding-top:3.45rem;padding-bottom:0}.story-slide__copy p{font-size:clamp(.78rem,3.5vw,.95rem);line-height:1.45}.story-carousel__controls-layout{grid-template-rows:auto minmax(12rem,1fr);grid-template-columns:1fr;align-content:start;gap:.55rem}.story-carousel__copy-reserve{padding-bottom:0}.story-carousel__copy-reserve-texts p{font-size:clamp(.78rem,3.5vw,.95rem);line-height:1.45}.story-slide__media{aspect-ratio:1.02;justify-self:center;width:72%;height:auto;min-height:11rem;max-height:min(29vh,16rem)}.contact{min-height:27rem;padding-block:4rem}.contact__copy{margin-top:2.75rem;line-height:1.55}.contact__copy br{display:none}.contact__links{gap:1.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.story-slide{opacity:1!important;transform:none!important}.story-scroll-shell{height:auto;min-height:0}.story-carousel{position:relative;top:auto}}
