:root{color:#343630;font-synthesis:none;font-synthesis:none;-webkit-font-smoothing:antialiased;background:#f7f5f0;font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:400}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{background:0 0;border:0}button:disabled{opacity:.35;cursor:default}:focus-visible{outline-offset:6px;outline:1px solid}::selection{background:#dedfce}h1,h2,h3,p,figure{margin:0}.site-header,footer{justify-content:space-between;align-items:center;max-width:1600px;margin:auto;padding:30px 5vw;display:flex}.site-header{border-bottom:1px solid #deded5}.wordmark{letter-spacing:-2px;font-family:Georgia,serif;font-size:34px}.wordmark span{letter-spacing:2px;margin-left:10px;font-family:Arial,sans-serif;font-size:11px}.site-header nav{gap:35px;font-size:12px;display:flex}.languages{align-items:center;gap:9px;font-size:11px;display:flex}.languages button{opacity:.4;padding:10px 3px}.languages button[aria-pressed=true]{opacity:1}.intro{grid-template-columns:1.12fr 1fr;align-items:center;gap:9vw;max-width:1440px;margin:auto;padding:76px 7vw 90px;display:grid}.eyebrow,.section-top{text-transform:uppercase;letter-spacing:2px;font-size:10px}.eyebrow{color:#797c6e;margin-bottom:26px}h1{letter-spacing:-3px;font-family:Georgia,Times New Roman,serif;font-size:clamp(52px,5.8vw,86px);font-weight:400;line-height:1.05}em{color:#777d68;font-weight:400}.bio{align-items:start;gap:22px;max-width:330px;margin:30px 0 28px;font-size:13px;line-height:1.7;display:flex}.fine-line{background:#9a9d8c;flex-shrink:0;width:35px;height:1px;margin-top:11px}.text-link{border-bottom:1px solid #b1b3a6;gap:45px;padding-bottom:10px;font-size:11px;display:inline-flex}.text-link span{font-size:18px}.intro-image img{object-fit:cover;object-position:45% center;width:100%;height:410px;display:block}.intro-image figcaption{color:#88897f;margin-top:16px;font-size:10px;line-height:1.5}.portfolio{isolation:isolate;touch-action:pan-y;min-height:650px;padding:34px 5vw 26px;transition:color .35s;position:relative;overflow:hidden}.ambient-base{z-index:-3;background:#ecece3;transition:background .4s;position:absolute;inset:0}.activated{color:#fff}.activated .ambient-base{background:#23271f}.ambient-media{z-index:-2;opacity:.26;pointer-events:none;position:absolute;inset:0}.ambient-media>img,.ambient-media .video-layer{object-fit:cover;width:100%;height:100%}.ambient-enter-active,.ambient-leave-active{transition:opacity .4s}.ambient-enter-from,.ambient-leave-to{opacity:0}.section-top{z-index:6;justify-content:space-between;display:flex;position:relative}.carousel-stage{height:calc(var(--card-h) + 80px);--card-h:clamp(330px, 65vh, 640px);--card-w:calc(var(--card-h) * .75);margin-top:32px;position:relative}.stack{height:var(--card-h);width:var(--card-w);text-align:left;transform:translateX(calc(-50% + var(--offset) * var(--card-w) * 1.04)) scale(var(--scale));transform-origin:50%;outline-offset:12px;padding:0;transition:transform .45s cubic-bezier(.22,.65,.28,1),opacity .3s;position:absolute;top:35px;left:50%}.stack.hidden{opacity:0;pointer-events:none}.stack-sheet,.stack-face{background:#d9d7ce;border-radius:3px;display:block;position:absolute;inset:0;overflow:hidden;box-shadow:0 15px 32px #2024191b}.stack-sheet img,.stack-face>img{object-fit:cover;width:100%;height:100%}.sheet-back{opacity:.65;transform:translate(14px,-13px)rotate(3deg)}.sheet-mid{opacity:.9;transform:translate(-9px,-5px)rotate(-2deg)}.stack-face{isolation:isolate}.card-caption{color:#fff;opacity:0;background:linear-gradient(#0000,#0009);flex-direction:column;gap:9px;padding:60px 25px 25px;transition:opacity .3s;display:flex;position:absolute;inset:auto 0 0}.engaged .card-caption{opacity:1}.card-caption strong{font-family:Georgia,serif;font-size:30px;font-weight:400}.card-caption>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.video-layer{pointer-events:none;position:absolute;inset:0}.video-layer img,.video-layer video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.video-layer video{opacity:0;transition:opacity .3s}.video-layer video.ready{opacity:1}.carousel-controls{justify-content:center;align-items:center;gap:25px;display:flex}.circle{border:1px solid #8b8e7e66;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:21px;display:inline-flex}.carousel-controls .previous,.carousel-controls .next{z-index:7;position:absolute;top:50%}.previous{left:3vw}.next{right:3vw}.carousel-count{letter-spacing:2px;font-size:11px}.carousel-count i{opacity:.4;padding:0 12px;font-style:normal}.content-section{max-width:1440px;margin:auto;padding:100px 7vw}.services{grid-template-columns:1fr 1.3fr;gap:8vw;display:grid}.section-heading h2{letter-spacing:-1px;font:400 42px/1.12 Georgia,serif}.section-heading>p:last-child{color:#88897f;margin-top:18px;font-size:12px}.price-row{border-top:1px solid #d3d4c8;align-items:center;gap:22px;padding:28px 0;display:flex}.price-row:nth-last-child(2){border-bottom:1px solid #d3d4c8}.service-number{color:#949789;font-size:10px}.price-row h3{flex:1;font:400 23px Georgia,serif}.price{white-space:nowrap;font-size:17px}.data-note{color:#8c8d82;margin-top:16px;font-size:10px;line-height:1.5}.contact{text-align:center;border-top:1px solid #deded5;padding-top:75px;padding-bottom:90px}.contact h2{letter-spacing:-2px;font:400 clamp(46px,5vw,72px)/1.1 Georgia,serif}.socials{justify-content:center;gap:20px;margin-top:34px;display:flex}.socials a{text-align:left;border-bottom:1px solid #969b88;min-width:150px;padding:12px 0;font-size:12px}.socials a span{float:right}footer{color:#7d8073;border-top:1px solid #deded5;font-size:10px}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(18px)}.revealed{opacity:1;transform:none}.empty{place-items:center;min-height:440px;display:grid}.series-gallery-shell{z-index:100;background:#f7f5f0;position:fixed;inset:0}.series-gallery{overscroll-behavior:contain;position:absolute;inset:0;overflow-y:auto}.series-toolbar{z-index:1;padding:max(18px, env(safe-area-inset-top)) 5vw 18px;background:#f7f5f0;border-bottom:1px solid #deded5;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.series-toolbar>span{letter-spacing:2px;text-transform:uppercase;font-size:10px}.series-content{max-width:1320px;padding:54px 5vw max(64px, env(safe-area-inset-bottom));margin:auto}.series-heading{margin-bottom:38px}.series-heading .eyebrow{margin-bottom:16px}.series-heading h2{letter-spacing:-1px;overflow-wrap:anywhere;font:400 clamp(42px,5vw,72px)/1.1 Georgia,serif}.series-description{color:#797c6e;white-space:pre-line;overflow-wrap:anywhere;max-width:560px;margin-top:18px;font-size:13px;line-height:1.7}.series-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.series-photo{aspect-ratio:3/4;cursor:zoom-in;background:#e9e7df;padding:0;display:block;position:relative}.series-photo img{object-fit:cover;width:100%;height:100%;display:block}.series-photo-number{color:#fff;letter-spacing:1px;background:#25271f80;padding:5px 7px;font-size:10px;position:absolute;bottom:12px;left:12px}.series-photo-error{font-size:12px;line-height:1.5}.gallery{z-index:100;background:#f7f5f0;flex-direction:column;padding:18px 28px 28px;display:flex;position:fixed;inset:0}.gallery-toolbar{letter-spacing:2px;flex-shrink:0;justify-content:space-between;align-items:center;height:58px;font-size:12px;display:flex}.gallery-toolbar>div{gap:12px;display:flex}.gallery-position{align-items:center}.gallery-back{letter-spacing:0;padding:12px 8px 12px 0;font-size:12px}.gallery-viewport{touch-action:none;flex:1;min-height:0;position:relative;overflow:hidden}.photo-slot{justify-content:center;align-items:center;padding:10px 0;display:flex;position:absolute;inset:0}.photo-slot.moving{transition:transform .36s cubic-bezier(.22,.65,.28,1)}.photo-slot img{object-fit:contain;-webkit-user-select:none;user-select:none;flex-shrink:0;width:auto;max-width:100%;height:auto;max-height:100%}.zoomed img{cursor:grab}.photo-error{text-align:center;font-size:14px}.photo-error button{border-bottom:1px solid;margin-top:20px;padding:10px}.gallery-fade-enter-active,.gallery-fade-leave-active{transition:opacity .35s}.gallery-fade-enter-from,.gallery-fade-leave-to{opacity:0}@media (width<=700px){.site-header{padding:20px 6vw}.site-header nav{display:none}.intro{grid-template-columns:1fr;gap:25px;padding:40px 7vw 48px}.intro-copy{position:relative}h1{font-size:57px}.eyebrow{letter-spacing:1.6px;margin-bottom:22px;font-size:9px}.bio{max-width:280px;margin:24px 0 20px;font-size:12px}.intro-image{margin-top:8px;margin-left:23%}.intro-image img{height:235px}.intro-image figcaption{font-size:9px}.portfolio{min-height:0;padding:26px 6vw}.section-top{letter-spacing:1.3px;font-size:8px}.carousel-stage{--card-w:min(82vw, 48vh);--card-h:calc(var(--card-w) * 1.33333);height:calc(var(--card-h) + 65px);margin-top:22px}.stack{transform:translateX(calc(-50% + var(--offset) * var(--card-w) * 1.04)) scale(var(--scale))}.carousel-controls .previous,.carousel-controls .next{position:static}.carousel-controls{gap:22px}.circle{width:40px;height:40px}.services{grid-template-columns:1fr;gap:32px;padding:65px 7vw}.section-heading h2{font-size:36px}.price-row{gap:15px;padding:26px 0}.price-row h3{font-size:20px}.price{font-size:15px}.contact{padding:55px 7vw 65px}.contact h2{font-size:48px}footer{padding:25px 6vw}footer>span{display:none}.gallery{padding:10px 12px 16px;padding-top:max(10px, env(safe-area-inset-top));padding-bottom:max(16px, env(safe-area-inset-bottom))}.series-content{padding:32px 5vw max(40px, env(safe-area-inset-bottom))}.series-heading{margin-bottom:26px}.series-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-toolbar{height:56px}.card-caption{padding:45px 20px 20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:80ms!important;animation-duration:80ms!important}.reveal{transform:none}.stack{transition-property:opacity}.photo-slot.moving{transition:none}}@media (width<=700px){.stack{transform:translateX(calc(-50% + var(--offset) * var(--card-w) * .83)) scale(var(--scale))}}.video-enter-active,.video-leave-active{transition:opacity .3s}.video-enter-from,.video-leave-to{opacity:0}.gallery.reduced .photo-slot.moving{opacity:0;transition:opacity 80ms;transform:translateX(calc(var(--slot) * 100%))!important}.stack:focus-visible .card-caption{opacity:1}.portfolio.reduced .stack:not(.hidden){animation:80ms still-appear}@keyframes still-appear{0%{opacity:0}to{opacity:1}}@media (width<=700px){h1{font-size:clamp(42px,13.3vw,57px)}.contact h2{font-size:clamp(36px,11vw,48px)}}.api-state{text-align:center;place-content:center;gap:1rem;min-height:55vh;display:grid}
