:root{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background-color:#fff;color:#111}#root{min-height:100vh}a{color:inherit}.site{min-height:100vh;background-color:#fff;color:#111;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.site-header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:none}.header-inner{max-width:1280px;margin:0 auto;padding:.5rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;border:none;background:transparent;padding:0;cursor:pointer}.brand:hover{opacity:.8}.brand-logo{height:50px;width:auto;object-fit:contain}.main-nav{display:flex;align-items:center;gap:2rem}.main-nav button{border:none;background:transparent;font-family:inherit;padding:0;color:#111;letter-spacing:.06em;font-size:.85rem;font-weight:400;text-transform:uppercase;cursor:pointer;transition:opacity .18s ease}.main-nav button:hover{opacity:.6}.main-nav-instagram{display:flex;align-items:center;color:#111;transition:opacity .18s ease}.main-nav-instagram:hover{opacity:.6}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:4px;border:none;background:transparent;cursor:pointer;z-index:25}.hamburger span{display:block;width:100%;height:2px;background:#111;transition:transform .28s ease,opacity .2s ease}.hamburger-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-open span:nth-child(2){opacity:0}.hamburger-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}main{max-width:1280px;margin:0 auto;padding:1.5rem .6rem 4.5rem}section[id]{scroll-margin-top:30vh}.section{padding:2.5rem 0;border:none;border-bottom:none}.section-header{max-width:560px;margin-bottom:1.5rem}.eyebrow{font-size:.9rem;letter-spacing:.2em;text-transform:uppercase;margin:0 0 .6rem}h1,h2,h3{margin:0}h1{font-size:3.4rem;line-height:1.06}h2{font-size:2.4rem;line-height:1.1}h3{font-size:1.3rem;letter-spacing:.08em;text-transform:uppercase}.highlight{position:relative}.highlight:after{content:"";position:absolute;left:0;right:0;bottom:.1em;height:.45em;background-color:#111;opacity:.12;z-index:-1}.hero{padding:0;margin:0;width:100%;max-width:none;border-bottom:none}.hero-video-wrapper{width:100%;max-width:none}.hero-video{display:block;width:100%;height:100%;object-fit:cover}.hero-video-iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;overflow:hidden}.hero-video-iframe iframe{overflow:hidden}.video-frame{position:relative;padding-bottom:49.48%;height:0;overflow:hidden;border-radius:0;background-color:#111}.video-overlay{position:absolute;inset:0;z-index:10;pointer-events:none;background:transparent}.video-frame:hover .video-overlay{pointer-events:auto}.video-overlay:after{content:"";position:absolute;bottom:0;right:0;width:180px;height:60px;background:transparent;z-index:11}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;min-height:400px;background-color:#f000;color:#f5f3ee;font-size:.9rem;letter-spacing:.1em;text-transform:uppercase}.video-caption{font-size:.95rem;letter-spacing:.18em;text-transform:uppercase}.duo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.duo-block p{margin-top:.9rem;font-size:1.1rem}.about{background-color:#fff}.about-team{display:grid;grid-template-columns:426px 426px 1fr;column-gap:clamp(.25rem,1vw,1rem);gap:clamp(.25rem,1vw,1rem) clamp(.25rem,1vw,1rem);row-gap:0;max-width:1280px;margin:0 auto .75rem;padding:.5rem .6rem;align-items:start}.about-team-divider{display:flex;align-items:flex-start;justify-content:flex-start;transform:translateY(-1rem);margin-left:.75rem}.about-team-divider .about-story-heading{margin:0;white-space:nowrap;text-transform:lowercase;line-height:.85}.about-team-col{display:flex;flex-direction:column;align-items:flex-start}.about-team-col:first-child{margin-right:clamp(1rem,3vw,3rem)}.about-team-photo{width:426px;min-width:426px;aspect-ratio:3/4;overflow:hidden;margin-bottom:.5rem}.about-team-photo img{width:100%;height:100%;object-fit:cover;display:block}.about-team-name{font-family:inherit;font-size:1.05rem;font-weight:700;line-height:.95;letter-spacing:-.02em;text-transform:capitalize;margin:0 0 .1rem;color:#111}.about-team-title{font-family:inherit;font-size:.95rem;font-weight:400;margin:0;color:#111}.about-story{max-width:1280px;margin:0 auto;padding:.5rem .6rem;background-color:#fff}.about-story-heading{font-family:inherit;font-size:clamp(2.8rem,7vw,4.5rem);font-weight:700;line-height:.95;letter-spacing:-.02em;margin:0 0 1.5rem;color:#111}.about-story-line{display:block}.about-story-line-light{font-weight:400}.about-story-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 3rem;width:100%;max-width:100%}.about-story-col{font-family:inherit;font-size:1.1rem;line-height:1.6;color:#111;min-width:0;overflow-wrap:break-word}.about-story-col p{margin:0 0 1rem}.about-story-col p:last-child{margin-bottom:0}.specialties.section{border:none;border-bottom:none;padding-top:4rem;padding-bottom:2rem}.specialties-header{max-width:100%}.specialties-header .eyebrow{text-transform:lowercase;font-size:1.25rem;margin-top:-1.5rem;margin-bottom:2.5rem}.specialties-tagline{text-transform:lowercase;font-size:1.25rem;letter-spacing:.2em;margin:5rem 0 0 auto;color:#111;text-align:right}.specialties-heading{font-size:clamp(4.5rem,15vw,11rem);font-weight:700;line-height:.45;letter-spacing:-.02em}.specialties-line{display:block;text-align:left}.specialties-line-center{display:block;text-align:center;width:100%;text-transform:lowercase;font-weight:700;font-size:.7em;font-style:italic}.specialties-line-right{text-align:right;transform:translate(1rem)}.mosaic-fullbleed{padding:0;margin:2rem calc(50% - 50vw) 2rem;width:100vw;max-width:none;border:none;border-top:none;border-bottom:none}.works-media-wrapper{width:100%;max-width:none}#services.section{border-top:none}.mosaic-fullbleed{overflow:hidden}.mosaic-fullbleed .video-frame{border-bottom:none;box-shadow:none;background-color:transparent}.mosaic-video-mobile{display:none}@media(max-width:640px){.mosaic-video-desktop{display:none!important}.mosaic-video-mobile{display:block!important;padding-bottom:202.11%}}.mosaic .works-portfolio-img{display:block;width:100%;max-width:none;margin:0;height:auto;object-fit:cover}.mosaic-grid{display:grid;grid-template-columns:1.6fr 1fr;grid-auto-rows:180px;gap:1.1rem}.mosaic-item{border-radius:1rem;position:relative;overflow:hidden;display:flex;align-items:flex-start;padding:1rem 1.1rem}.mosaic-large{grid-row:span 2;background-color:#111}.mosaic-video{width:100%;height:100%;object-fit:cover}.mosaic-placeholder{display:flex;align-items:flex-start;width:100%;height:100%;padding:1rem 1.1rem}.mosaic-light{background:#fff;border:1px solid rgba(0,0,0,.04)}.mosaic-dark{background:#111;color:#f5f3ee}.mosaic-outline{border:1px dashed rgba(0,0,0,.4);background:transparent}.mosaic-label{font-size:.95rem;letter-spacing:.16em;text-transform:uppercase}.services-list{display:flex;flex-direction:column;gap:.5rem}.services-header .about-story-heading,.contact-header .about-story-heading{margin:0 0 1.2rem;text-transform:lowercase}.contact-description{font-family:inherit;font-size:1.15rem;line-height:1.6;color:#111;margin:0 0 1.2rem;max-width:36rem}.contact-email-button{display:inline-block;font-family:inherit;font-size:1.2rem;font-weight:700;letter-spacing:.06em;text-transform:lowercase;text-decoration:none;color:#fff;background-color:#111;padding:.75rem 1.6rem;border:none;border-radius:999px;transition:background-color .18s ease,transform .12s ease}.contact-email-button:hover{background-color:#000;color:#fff;transform:translateY(-1px)}.service-item{border-bottom:1px solid rgba(0,0,0,.08);padding:.8rem 0 .2rem}.service-name{width:100%;text-align:left;background:transparent;border-radius:0;padding:0;font-family:inherit;font-size:1.25rem;font-weight:700;text-transform:lowercase;letter-spacing:.14em;border:none;color:#111}.service-name:hover{background:transparent;color:#111}.service-description{max-height:0;opacity:0;overflow:hidden;font-size:1.1rem;line-height:1.5;transition:max-height .2s ease,opacity .2s ease,transform .2s ease;transform:translateY(-4px);padding-right:2rem}.service-item:hover .service-description,.service-item:focus-within .service-description{max-height:120px;opacity:1;transform:translateY(0);margin-top:.5rem}.contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr);gap:2rem;align-items:flex-start}.contact-text p{margin:0;font-size:1.1rem;max-width:24rem}.contact-form{display:flex;flex-direction:column;gap:1rem}.form-row label{display:flex;flex-direction:column;gap:.4rem;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase}input,textarea{border-radius:999px;border:1px solid rgba(0,0,0,.2);padding:.7rem 1rem;font-family:inherit;font-size:1rem;background:#fff;outline:none}textarea{border-radius:1.2rem;resize:vertical;min-height:140px}input:focus,textarea:focus{border-color:#111}.primary-button{align-self:flex-start;border-radius:999px;padding:.75rem 1.6rem;border:none;background-color:#111;color:#f5f3ee;font-size:.95rem;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:transform .12s ease,box-shadow .16s ease,background-color .16s ease}.primary-button:hover{transform:translateY(-1px);box-shadow:0 12px 30px #00000040;background-color:#000}@media(max-width:900px){.header-inner{padding:.45rem 1.5rem}.hamburger{display:flex}.main-nav{position:fixed;top:0;right:0;width:100%;max-width:280px;height:100vh;flex-direction:column;justify-content:flex-start;align-items:center;padding:6rem 2rem 2rem;gap:2rem;background:#fff;transform:translate(100%);transition:transform .3s ease;box-shadow:-4px 0 24px #00000014}.main-nav-open{transform:translate(0)}.main-nav button{font-size:.95rem;padding:.5rem 0}.duo-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}.mosaic-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:180px}.about-team{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:1.5rem 1rem}.about-team-col:first-child{grid-column:1;grid-row:2;margin-right:0}.about-team-col:nth-child(2){grid-column:2;grid-row:2}.about-team-divider{grid-column:1 / -1;grid-row:1;justify-content:flex-start;transform:none;margin-left:0}.about-team-divider .about-story-heading .about-story-line{display:inline}.about-team-divider .about-story-heading .about-story-line:after{content:" "}.about-team-divider .about-story-heading .about-story-line:last-child:after{content:none}.about-team-photo{width:100%;min-width:0;max-width:426px}.about-story-cols{grid-template-columns:1fr}}@media(max-width:640px){.header-inner{padding:.35rem 1.5rem}main{padding-inline:.6rem}h1{font-size:2.5rem}h2{font-size:1.95rem}.section{padding-block:2rem}.specialties.section{padding-bottom:.25rem}.mosaic-fullbleed{margin-top:.25rem;overflow:hidden}.specialties-heading{font-size:clamp(2.5rem,12vw,6rem);word-spacing:-.15em;letter-spacing:-.04em}.specialties-line-right{transform:translate(.3rem)}.specialties-tagline{font-size:.9rem;letter-spacing:.15em;margin-top:2rem}.about-story-heading{font-size:clamp(2.2rem,9vw,4rem)}.about-story-col{font-size:1.05rem}.about-team-name{font-size:.85rem}.about-team-title{font-size:.75rem}}.site-footer{border-top:1px solid rgba(0,0,0,.08);padding:1.5rem 2rem;background:#fff}.footer-inner{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;flex-wrap:wrap}.footer-left{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end;text-align:right}.footer-copyright{font-family:inherit;font-size:.8rem;font-weight:400;letter-spacing:.08em;color:#111;margin:0}.footer-email{font-size:.8rem;font-weight:400;letter-spacing:.06em;color:#111;text-decoration:none}.footer-email:hover{opacity:.6}.footer-instagram{display:inline-block;margin-bottom:.25rem;color:#111}.footer-instagram svg{width:28px;height:28px}.footer-instagram:hover{opacity:.6}.footer-flags{display:flex;gap:.4rem;margin-top:.35rem}.footer-flag{font-size:2rem;line-height:1}.footer-tagline{text-align:left}.footer-tagline-line{display:block;font-family:inherit;font-size:clamp(1.4rem,3.8vw,2.1rem);font-weight:700;line-height:.95;letter-spacing:-.02em;text-transform:lowercase;color:#111}@media(max-width:640px){.footer-inner{flex-direction:column;align-items:flex-start}.footer-tagline{margin-top:0;margin-bottom:.15rem}.footer-left{align-items:flex-start;text-align:left}.footer-tagline-line{font-size:clamp(1.45rem,6vw,2.3rem)}}
