@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-cyrillic-ext-wght-normal.d1990364.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-cyrillic-wght-normal.2ffcac4f.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-greek-wght-normal.6b69666c.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-vietnamese-wght-normal.383b32a0.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-latin-ext-wght-normal.f5cc7610.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-latin-wght-normal.fedf4c92.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-cyrillic-ext-400-normal.a731b325.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-cyrillic-ext-400-normal.6624aabc.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-cyrillic-400-normal.45ad9b64.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-cyrillic-400-normal.9df354c1.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-vietnamese-400-normal.8013fb29.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-vietnamese-400-normal.8e99a789.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-latin-ext-400-normal.d75a2a84.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-latin-ext-400-normal.cc135074.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-latin-400-normal.92f9a759.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-latin-400-normal.753a0e70.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-cyrillic-ext-400-italic.1d795181.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-cyrillic-ext-400-italic.5b1ca551.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-cyrillic-400-italic.612bf04c.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-cyrillic-400-italic.c680c979.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-vietnamese-400-italic.fe912318.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-vietnamese-400-italic.08cd951b.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-latin-ext-400-italic.138b22a8.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-latin-ext-400-italic.a76672a2.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/_next/static/media/cormorant-garamond-latin-400-italic.235349d9.woff2) format("woff2"),url(/_next/static/media/cormorant-garamond-latin-400-italic.7b42a9ec.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@layer reset, base, components, responsive, motion, tokens;@layer tokens{:root{--surface:oklch(19.4% .012 139);--surface-raised:oklch(23.9% .017 138);--surface-sunken:oklch(16.5% .005 145);--ink:oklch(96.8% .012 92);--muted:oklch(82.5% .022 120);--ink-quiet:oklch(63% .024 126);--muted-on-ink:oklch(46.4% .031 131);--line:oklch(34.9% .023 135);--line-strong:oklch(50% .022 130);--accent:oklch(77% .068 69);--backdrop:oklch(13.4% .012 137/.8);--scrim:oklch(0% 0 0/.6);--glow-accent:oklch(77% .068 69/.08);--glow-ambient:oklch(24% .018 138/.5);--glass-surface:oklch(19.4% .012 139/.82);--glass-border:oklch(50% .022 130/.25);--glass-hover:oklch(28% .02 138/.7);--film-grain-opacity:.042;--sans:"Manrope Variable",Arial,sans-serif;--serif:"Cormorant Garamond",Georgia,serif;--text-xs:.75rem;--text-sm:clamp(.75rem,.72rem + .05vw,.8125rem);--text-base:.9375rem;--text-lg:clamp(1rem,.8rem + .5vw,1.1rem);--text-xl:clamp(1.2rem,1rem + 1vw,1.6rem);--text-2xl:clamp(1.6rem,1.2rem + 2vw,2.4rem);--text-h2:clamp(1.8rem,1.4rem + 2.5vw,3.2rem);--text-display:clamp(2.4rem,1.6rem + 5vw,5.2rem);--text-nav:clamp(.8rem,.68rem + .25vw,.9rem);--leading-display:.91;--leading-title:1.1;--leading-body:1.6;--tracking-label:.12em;--tracking-display:-.035em;--measure:62ch;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--section-block:clamp(2rem,1.5rem + 2vw,3rem);--gutter:max(clamp(1.25rem,4.2vw,4.5rem),env(safe-area-inset-left),env(safe-area-inset-right));--max-width:100rem;--target:44px;--radius-pill:999px;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:1rem;--ease-out:cubic-bezier(.16,1,.3,1);--duration-ui:200ms;--duration-view:280ms;--duration-photo:650ms;--duration-scene:1.2s;--duration-ribbon:84s}@media (min-width:48em){:root{--text-base:.875rem}}}@layer reset{*,:after,:before{box-sizing:border-box}body,figure,h1,h2,h3,p{margin:0}button{font:inherit;color:inherit}img{display:block;max-inline-size:100%}picture{display:contents}a{color:inherit;text-decoration:none}}@layer base{html{color-scheme:dark;scroll-behavior:smooth;scroll-padding-block-start:6.875rem;-webkit-tap-highlight-color:oklch(from var(--ink) l c h/14%)}html:has(dialog[open]){overflow:hidden}body{position:relative;background:var(--surface);color:var(--ink);font-family:var(--sans);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--surface)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2{font-family:var(--serif);font-weight:400;line-height:var(--leading-display);letter-spacing:var(--tracking-display)}h2{font-size:var(--text-h2)}h1,h2,h3{text-wrap:balance}figcaption,li,p{text-wrap:pretty}em{font-weight:400}button{border:0;border-radius:0;background:none;cursor:pointer}.section-shell{inline-size:100%;margin-inline:auto;padding-inline:var(--gutter)}.eyebrow{font-size:var(--text-xs);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:1.65}.arrow{inline-size:1.5rem;block-size:1.5rem;flex-shrink:0}.arrow--right{transform:rotate(45deg)}.arrow--down{transform:rotate(135deg)}.arrow--left{transform:rotate(-135deg)}.arrow--up{transform:rotate(-45deg)}.icon{inline-size:1.25rem;block-size:1.25rem;flex-shrink:0}[aria-disabled=true]{cursor:default;opacity:.5}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-block-size:var(--target);border-block-end:1px solid currentColor;font-size:var(--text-sm);font-weight:500;line-height:1.4}.text-link .arrow{inline-size:1.25rem}.numerals{font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}}@layer motion{@media (hover:hover) and (pointer:fine){.text-link:hover{color:var(--accent)}}@media (prefers-reduced-motion:no-preference){.text-link{transition:color var(--duration-ui) ease}:is(.text-link,.scene-cta) .arrow{transition:translate var(--duration-ui) ease}:is(button,a):not(:disabled,[aria-disabled=true],.photo-link,.scene-link,.ribbon-group>a,.next-project,.skip-link):active{scale:.97}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){:is(.text-link,.scene-link):hover .arrow--right{translate:.25rem 0}.text-link:hover .arrow--diagonal{translate:.125rem -.125rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}:is(button,a,summary):not(:disabled,[aria-disabled=true],.photo-link,.scene-link,.ribbon-group>a,.next-project,.skip-link):active{opacity:.7}}}@layer components{.skip-link{position:fixed;inset-block-start:max(var(--space-3),env(safe-area-inset-top));inset-inline-start:max(var(--space-3),env(safe-area-inset-left));z-index:100;padding:var(--space-3) var(--space-4);background:var(--ink);color:var(--surface);font-size:var(--text-sm);font-weight:500;transform:translateY(-180%)}.skip-link:focus{transform:none}.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);inline-size:100%;block-size:5rem;padding-inline:var(--gutter);margin-inline:auto;background:oklch(from var(--surface) l c h/88%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-block-end:1px solid oklch(from var(--line) l c h/40%)}.brand{display:flex;flex-direction:column;justify-content:center;min-block-size:var(--target);font-size:var(--text-sm);font-weight:600;letter-spacing:.1em;line-height:1.5;text-transform:uppercase;white-space:nowrap}.brand-subtitle{font-size:var(--text-xs);font-weight:400;letter-spacing:.2em}.desktop-nav{display:none}.desktop-nav a{flex:none;display:flex;align-items:center;justify-content:center;min-block-size:var(--target);min-inline-size:var(--target);padding-inline:var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase}:is(.desktop-nav,.menu-panel nav) a[aria-current]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.45em}.header-controls{display:flex;align-items:center;gap:var(--space-3)}.language-switch{display:none;align-items:center;font-size:var(--text-sm);color:var(--muted)}.language-switch>:not(.language-divider){display:grid;place-items:center;min-block-size:var(--target);min-inline-size:var(--target);padding:var(--space-1)}.language-current{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.language-toggle{display:grid;place-items:center;inline-size:var(--target);block-size:var(--target);font-size:var(--text-sm);letter-spacing:.04em}.menu-button{display:flex;align-items:center;min-block-size:var(--target);gap:var(--space-2);padding:0;font-size:var(--text-sm)}.menu-lines{inline-size:17px;display:grid;gap:5px}.menu-lines i{border-block-start:1px solid currentColor}.menu-lines i:last-child{inline-size:12px;justify-self:end}.mobile-menu{inline-size:100%;block-size:100%;max-inline-size:none;max-block-size:none;margin:0;padding:0;border:0;background:var(--surface);color:var(--ink)}.mobile-menu::backdrop{background:var(--backdrop)}.menu-panel{display:flex;flex-direction:column;min-block-size:100%;padding:max(var(--space-6),env(safe-area-inset-top)) var(--gutter) max(var(--space-10),env(safe-area-inset-bottom))}.menu-top{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm);letter-spacing:.08em}.menu-brand{text-transform:uppercase}.menu-top button{display:flex;align-items:center;gap:var(--space-2);min-block-size:var(--target);font-size:var(--text-sm);letter-spacing:normal}.menu-top .icon{inline-size:1.5rem;block-size:1.5rem}.menu-panel nav{flex:1 1;display:flex;flex-direction:column;justify-content:center;padding-block:var(--space-16)}.menu-panel nav a{display:flex;align-items:center;padding-block:var(--space-6);border-block-end:1px solid var(--line);font-family:var(--serif);font-size:var(--text-2xl);line-height:1}.menu-fab{position:fixed;z-index:20;inset-block-end:max(var(--space-4),env(safe-area-inset-bottom));inset-inline-end:max(var(--space-4),env(safe-area-inset-right));display:grid;place-items:center;inline-size:calc(var(--target) + var(--space-1));block-size:calc(var(--target) + var(--space-1));padding:0;border:1px solid var(--line-strong);border-radius:50%;background:oklch(from var(--surface-raised) l c h/88%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink)}:is(.menu-fab[data-visible=false],html:has(:focus-visible:not(.menu-fab)) .menu-fab):not(:focus-visible){visibility:hidden;opacity:0;translate:0 var(--space-4)}html{--focus-room:calc(var(--target) + var(--space-8));scroll-padding-block-end:var(--focus-room)}.site-footer{inline-size:100%;margin-inline:auto;padding:var(--space-5) var(--gutter) max(var(--space-4),env(safe-area-inset-bottom))}.footer-name{display:grid;gap:var(--space-1);font-size:var(--text-sm)}.footer-brand{font-weight:600;letter-spacing:.09em;text-transform:uppercase}.footer-name>span:not(.footer-brand){letter-spacing:.025em;color:var(--muted)}.footer-email{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.footer-links{display:flex;flex-wrap:wrap;column-gap:var(--space-6);margin-block-start:var(--space-3)}.footer-links a{display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:var(--target);font-size:var(--text-sm)}.site-footer .arrow{inline-size:.875rem;block-size:.875rem}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-1) var(--space-5);margin-block-start:var(--space-4);padding-block-start:var(--space-3);border-block-start:1px solid var(--line);font-size:var(--text-sm);color:var(--muted)}.footer-bottom>a{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:var(--target);min-inline-size:var(--target)}.site-footer--home{border-block-start:1px solid var(--line)}.site-footer--home .footer-bottom{margin-block-start:0;padding-block-start:0;border-block-start:0}}@layer responsive{@media (min-width:24.375em){.site-header{gap:var(--space-3)}.header-controls{gap:var(--space-5)}}@media (min-width:48em){html{--focus-room:var(--space-4)}.site-header{block-size:6.5rem;border-block-end:1px solid var(--line)}.language-switch{display:flex}.language-toggle,.menu-fab{display:none}.site-footer{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--space-6);padding-block-start:var(--space-6)}.footer-links{justify-content:flex-end;align-self:start;margin-block-start:0}.footer-bottom{grid-column:1/-1}}@media (min-width:64em){.brand{font-size:.8rem}.brand-subtitle{font-size:var(--text-sm)}.desktop-nav a,.language-switch{font-size:var(--text-nav)}.desktop-nav{display:flex;gap:clamp(var(--space-4),2vw,var(--space-8));margin-inline:auto clamp(var(--space-6),3vw,var(--space-12))}.menu-button{display:none}}@media (min-width:48em) and (max-height:47.5em){.site-header{block-size:4.5rem}}@media (orientation:landscape) and (max-height:30em){.site-header{block-size:4.5rem}.menu-panel{padding-block:max(var(--space-3),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-bottom))}.menu-panel nav,.menu-panel nav a{padding-block:var(--space-1)}.menu-panel nav a{min-block-size:var(--target);font-size:clamp(1.1rem,7svh,1.6rem)}}html:not(.js) .menu-fab{display:none}}@layer motion{@media (hover:hover) and (pointer:fine){:is(.desktop-nav a,.language-switch a,.language-toggle,.menu-button,.menu-top button,.menu-panel nav a,.footer-links a,.footer-bottom a,.menu-fab):not([aria-disabled=true]):hover{color:var(--accent)}}@media (prefers-reduced-motion:no-preference){.mobile-menu[open] .menu-panel nav{animation:menu-enter .24s var(--ease-out) both}.mobile-menu[open] .menu-panel nav a{animation:menu-link-enter .3s var(--ease-out) backwards}.mobile-menu[open] .menu-panel nav a:nth-child(2){animation-delay:35ms}.mobile-menu[open] .menu-panel nav a:nth-child(3){animation-delay:70ms}.mobile-menu[open] .menu-panel nav a:nth-child(4){animation-delay:105ms}.mobile-menu[open] .menu-panel nav a:nth-child(5){animation-delay:.14s}@keyframes menu-enter{0%{opacity:.88}to{opacity:1}}@keyframes menu-link-enter{0%{opacity:.7;translate:0 .375rem}to{opacity:1;translate:0 0}}:is(.desktop-nav a,.language-switch a,.language-toggle,.menu-button,.menu-top button,.menu-panel nav a,.footer-links a,.footer-bottom a){transition:color var(--duration-ui) ease,background-color var(--duration-ui) ease}.menu-fab{transition:color var(--duration-ui) ease,opacity var(--duration-ui) ease,translate var(--duration-view) var(--ease-out),visibility var(--duration-ui)}}@media (hover:hover) and (pointer:fine){.desktop-nav a:hover{background:var(--glass-hover)}}}@layer components{.section-label{display:flex;align-items:baseline;gap:var(--space-4)}.section-label>span{color:var(--muted);letter-spacing:.08em}.about{padding-block:var(--section-block);border-block-start:1px solid oklch(from var(--line) l c h/40%);background:radial-gradient(circle at 10% 40%,var(--glow-ambient),transparent 60%)}.about-body{margin-block-start:var(--space-8)}.about h2{font-size:clamp(2.6rem,2rem + 3vw,5.2rem);line-height:1}.about-description{max-inline-size:var(--measure);margin-block-start:var(--space-8)}.about-description>p{font-size:var(--text-base)}.about-description>p+p{margin-block-start:var(--space-4)}.about-portrait{max-inline-size:26rem;margin-block-start:var(--space-6)}.about-portrait img{inline-size:100%;block-size:auto}.about-statement{grid-column:2/-1;max-inline-size:34ch;margin-block-start:var(--space-12);padding-block-start:var(--space-6);border-block-start:1px solid var(--line);font:400 clamp(1.75rem,1.2rem + 2.8vw,3.75rem)/1.16 var(--serif);letter-spacing:-.025em}.scroll-word{color:var(--ink)}.about-description .text-link{margin-block-start:var(--space-5)}.contact{padding-block:var(--section-block);background:radial-gradient(circle at 90% 20%,var(--glow-ambient),transparent 60%),var(--surface-raised);border-block-start:1px solid oklch(from var(--line) l c h/40%)}.contact h2{max-inline-size:15ch}.contact-body{display:grid;gap:var(--space-6);margin-block-start:var(--space-4)}.contact-actions,.contact-intro{min-inline-size:0}.contact-actions{display:grid;justify-items:stretch;align-content:start;gap:var(--space-2);padding:var(--space-6);border-inline-start:1px solid var(--accent);background:oklch(from var(--surface) l c h/25%)}.contact-socials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.contact-cta,.contact-socials .text-link{display:flex}.contact-cta{gap:var(--space-10);border-block-end-color:var(--accent)}.contact-address{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);margin-block-start:var(--space-2)}.contact-email{font-size:var(--text-base);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.copy-button{display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:var(--target);padding-inline:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:var(--text-sm);color:var(--ink);text-decoration:none;background:oklch(from var(--surface) l c h/60%)}.copy-button .icon{inline-size:1rem;block-size:1rem}.copy-status{display:grid;inline-size:100%;min-block-size:1.5em;min-block-size:1lh;font-size:var(--text-sm);color:var(--muted)}.copy-status>span{grid-area:1/1}.copy-status:after{content:attr(data-reserve);grid-area:1/1;visibility:hidden;pointer-events:none}.contact-note{max-inline-size:34ch;margin-block-start:var(--space-4);font-size:var(--text-base);color:var(--muted)}.contact-note span{display:block;margin-block-start:var(--space-2)}html:not(.js) .copy-button{display:none}}@layer responsive{@media (min-width:48em){.about-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}.about-description{margin-block-start:0}}@media (min-width:64em){.about-body{gap:var(--space-12)}.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;align-items:start;column-gap:clamp(var(--space-6),5vw,var(--space-10))}.contact-body{display:contents}.contact>.section-label{grid-column:1;grid-row:1}.contact-intro{grid-column:1;grid-row:2;margin-block-start:var(--space-4)}.contact-actions{grid-column:2;grid-row:1/span 2;align-self:stretch;align-content:space-between;row-gap:var(--space-1);padding-block:var(--space-2) var(--space-4)}}@media (min-width:80em){.about{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr) minmax(0,1.05fr);grid-template-rows:auto auto 1fr auto;column-gap:clamp(2rem,3.6vw,5rem)}.about-body,.about-intro{display:contents}.about .section-label{grid-column:1;grid-row:1;align-self:start;margin-block-start:var(--space-2)}.about h2{grid-column:1;grid-row:2;margin-block-start:var(--space-6);font-size:clamp(2.6rem,1.8rem + 3.2vw,5.6rem)}.about-portrait{grid-column:2;grid-row:1/-1;max-inline-size:none;margin-block-start:0}.about-description{grid-column:3;grid-row:1/-1;margin-block-start:0}.about-statement{grid-column:1;grid-row:4;max-inline-size:20ch;margin-block-start:var(--space-8);font-size:clamp(1.6rem,.8rem + 1.9vw,2.9rem)}}}@layer motion{@media (hover:hover) and (pointer:fine){.copy-button:hover{color:var(--accent);border-color:var(--accent);background:var(--glass-hover)}}@media (prefers-reduced-motion:no-preference){.copy-button{transition:color var(--duration-ui) ease,border-color var(--duration-ui) ease}.copy-status:not([data-state=idle]){animation:copy-confirm .24s ease-out backwards}@keyframes copy-confirm{0%{opacity:.6;translate:0 .25rem}to{opacity:1;translate:0 0}}}}@layer components{.hero-wall{--header:5rem;--bar:3.75rem;--wall-gap:clamp(1.25rem,2.4vw,3.25rem);--wall-h:max(16rem,min(calc(100svh - var(--header) - var(--bar) - var(--space-4)),125vw));--fade:0rem;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title bar" "lead lead" "wall wall";overflow:clip;padding-block-end:var(--space-4)}.wall-intro{display:contents}.wall-intro h1{grid-area:title;align-self:end;margin:var(--space-4) 0 0 var(--gutter)}.wall-bar{grid-area:bar;display:flex;align-items:flex-start;justify-content:flex-end;padding:var(--space-4) var(--gutter) 0 var(--space-3)}.wall-viewport{grid-area:wall;min-inline-size:0}.wall-controls{display:flex;gap:var(--space-2)}.wall-controls button{display:grid;place-items:center;inline-size:var(--target);block-size:var(--target);border:1px solid var(--glass-border);border-radius:50%;background:var(--glass-surface)}.wall-controls :is(.arrow,.icon){inline-size:var(--space-5);block-size:var(--space-5)}.wall-pause[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.wall-viewport{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-y pinch-zoom}.wall-track{position:relative;display:flex;inline-size:max-content;padding-inline-start:max(var(--gutter),var(--fade))}.wall-set{display:flex;flex:none;align-items:flex-end;gap:var(--wall-gap);padding-inline-end:var(--wall-gap)}.wall-item{flex:none}.wall-intro h1{font-family:var(--serif);font-size:clamp(2.6rem,1.5rem + 3.4vw,6.4rem);font-weight:400;line-height:.92;letter-spacing:var(--tracking-display)}.wall-line,.wall-line>*{display:block}.wall-intro em{font-style:italic}.wall-lead{grid-area:lead;margin:var(--space-4) var(--gutter) var(--space-5);font-size:var(--text-lg);line-height:1.45;color:var(--ink);text-wrap:balance}.wall-figure{position:relative;inline-size:calc(var(--wall-h) * var(--k) * var(--r));margin:0}.wall-photo{display:block;overflow:hidden;overflow:clip;block-size:calc(var(--wall-h) * var(--k))}.wall-photo picture{display:block;block-size:100%}.wall-photo img{inline-size:100%;block-size:100%;object-fit:cover;scale:calc(var(--zoom, 1) * var(--lift, 1));translate:var(--shift,0) 0}.wall-credits{position:absolute;inset-block-end:var(--space-3);inset-inline-end:var(--space-3);display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);max-inline-size:calc(100% - var(--space-6));font-size:var(--text-sm)}.wall-credits:empty{display:none}.wall-credits a{display:inline-flex;align-items:center;min-block-size:var(--target);padding-inline:var(--space-3);border:1px solid var(--accent);border-radius:var(--radius-pill);background:oklch(from var(--surface-sunken) l c h/82%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--accent);font-weight:500;overflow-wrap:anywhere}}@layer responsive{@media (min-width:48em){.hero-wall{--header:6.5rem;--bar:4.25rem;--fade:clamp(3rem,5vw,6rem);--wall-h:max(18rem,calc(100svh - var(--header) - var(--bar) - var(--space-6)));grid-template-columns:auto minmax(0,1fr);grid-template-rows:var(--bar) auto;grid-template-areas:"intro bar" "intro wall";padding-block-end:var(--space-6)}.wall-intro{display:block;grid-area:intro;align-self:end;padding-inline:var(--gutter) var(--space-2);max-inline-size:min(30rem,34vw)}.wall-intro h1{margin:0}.wall-lead{max-inline-size:22ch;margin:var(--space-5) 0 0}.wall-bar{align-items:center;padding-block-start:0}.wall-viewport{-webkit-mask-image:linear-gradient(to right,transparent,black var(--fade));mask-image:linear-gradient(to right,transparent,black var(--fade))}}@media (min-width:48em) and (max-height:47.5em){.hero-wall{--header:4.5rem;--bar:3.75rem}}@media (orientation:landscape) and (max-height:30em){.hero-wall{--header:4.5rem;--bar:3.25rem;--wall-h:max(10rem,calc(100svh - var(--header) - var(--bar) - var(--space-3)))}}@media (hover:hover) and (pointer:fine){.wall-credits a{min-block-size:2rem}}html.js .wall-viewport{overflow:hidden;overflow:clip}html:not(.js) .wall-controls,html:not(.js) .wall-set+.wall-set{display:none}@media (forced-colors:active){.wall-pause[aria-pressed=true]{border-color:Highlight}}}@layer motion{@media (prefers-reduced-motion:no-preference){.wall-set>.wall-item{animation:wall-rise 1.15s var(--ease-out) backwards;animation-delay:calc(.12s + var(--i) * 90ms)}.wall-photo img{animation:wall-settle 1.8s var(--ease-out) backwards;animation-delay:calc(.12s + var(--i) * 90ms);transition:opacity .45s ease,filter .45s ease,scale .6s var(--ease-out)}.wall-line{overflow:clip;padding-block:.14em;margin-block:-.14em}.wall-line>*{animation:title-unfold 1.05s var(--ease-out) backwards;animation-delay:.2s}.wall-line+.wall-line>*{animation-delay:.33s}.wall-lead{animation:wall-fade 1s ease-out .65s backwards}.wall-credits{animation:wall-fade .9s ease-out backwards;animation-delay:calc(.7s + var(--i) * 90ms)}html.js .wall-photo img{--zoom:1.04}.wall-controls button{transition:color var(--duration-ui) ease,border-color var(--duration-ui) ease,background-color var(--duration-ui) ease}.wall-controls button:active{scale:.94}.wall-credits a{transition:background-color var(--duration-ui) ease,color var(--duration-ui) ease}@keyframes wall-rise{0%{opacity:.15;translate:0 2.75rem}}@keyframes wall-settle{0%{scale:1.16}}@keyframes wall-fade{0%{opacity:0;translate:0 .5rem}}}@media (prefers-reduced-motion:reduce){.wall-pause{display:none}}@media (hover:hover) and (pointer:fine){html.js .wall-viewport{cursor:grab}.hero-wall[data-dragging] .wall-viewport{cursor:grabbing}.wall-track:has(.wall-photo:hover) .wall-photo:not(:hover) img{opacity:.5;filter:saturate(.6)}.wall-photo:hover{--lift:1.035}.wall-credits a:hover{background:var(--accent);color:var(--surface-sunken)}.wall-controls button:hover{color:var(--accent);border-color:var(--accent);background:var(--glass-hover)}}}@layer components{html:has(.scene-anchor:target,.scene-link:focus-visible){scroll-padding-block:0}.collection-showcase{background:var(--surface);color:var(--ink);border-block-start:1px solid var(--line)}.showcase-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4) var(--space-3);align-items:end;padding-block:var(--section-block) var(--space-4)}.showcase-heading>div:first-child{grid-column:1/-1}.showcase-heading h2{margin-block-start:var(--space-4)}.showcase-intro{max-inline-size:34ch}.showcase-intro>p{font-size:var(--text-base);color:var(--muted)}.showcase-intro .text-link{max-inline-size:100%;gap:var(--space-3);margin-block-start:var(--space-2)}.ribbon{--ribbon-height:10.5rem;padding-block-end:var(--space-6)}.ribbon-bar{display:flex;justify-content:flex-end}.ribbon-pause{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:var(--target);min-inline-size:var(--target);font-size:var(--text-sm);color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none}.ribbon-pause .icon{inline-size:1rem;block-size:1rem}.ribbon-pause:has(:focus-visible){outline:2px solid var(--accent);outline-offset:5px}.ribbon-pause:has(:checked){color:var(--ink);text-decoration:underline;text-underline-offset:.35em}.motion-ribbon{overflow:hidden;overflow:clip}.ribbon-track{display:flex;inline-size:max-content}.ribbon-group{display:flex;align-items:flex-start;gap:var(--space-4);padding-inline-end:var(--space-4)}.ribbon-group>a{display:block;inline-size:calc(var(--ribbon-height) * var(--r))}.ribbon-frame{display:block;overflow:hidden;border:1px solid oklch(from var(--line) l c h/35%)}.ribbon-frame img{inline-size:100%;block-size:var(--ribbon-height);object-fit:cover;transition:scale var(--duration-photo) var(--ease-out)}.ribbon-label{display:block;margin-block-start:var(--space-2);font-size:var(--text-sm);line-height:1.35;color:var(--muted)}.collection-showcase:has(.ribbon-pause :checked) .motion-ribbon{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.scene-anchor{block-size:0;scroll-margin-block-start:0}.scene-gallery{position:relative}.collection-scene{--scene-min:40.625rem;position:sticky;inset-block-start:min(0px,100svh - var(--scene-min));block-size:max(100svh,var(--scene-min));container:scene/size;background:var(--surface);border-block-start:1px solid var(--line);scroll-margin-block-start:0}.collection-scene:nth-of-type(2n){background:var(--surface-raised)}.collection-scene:has(.scene-link:focus-visible){z-index:1}.scene-link{display:grid;grid-template-rows:auto minmax(0,1fr);row-gap:var(--space-6);block-size:100%;padding:var(--space-10) var(--gutter) var(--space-8);overflow:hidden}.scene-link:focus-visible{outline-offset:-8px}.scene-copy h3{font:400 min(var(--text-display),12cqi,14svh)/.95 var(--serif);letter-spacing:-.02em;overflow-wrap:anywhere}.scene-tagline{font:italic 400 var(--text-lg)/1.25 var(--serif);color:var(--muted)}.scene-meta,.scene-tagline{margin-block-start:var(--space-3)}.scene-meta{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--space-6)}.scene-cta{display:inline-flex;align-items:center;gap:var(--space-4);min-block-size:var(--target);border-block-end:1px solid var(--line-strong);font-size:var(--text-sm);font-weight:500}.scene-cta .arrow{inline-size:20px}.scene-photos{--gap:var(--space-5);--cap-left:55;--cap-right:56;--share-right:100;position:relative;container-type:size;--w-right:min(var(--cap-right) * 1cqi,var(--share-right) * 1cqb * var(--r-right));--w-left:max(min(100cqi - var(--w-right) - var(--gap),75cqb * var(--r-left)),min(var(--cap-left) * 1cqi,(100cqb - var(--w-right)/var(--r-right) - var(--gap)) * var(--r-left)));--slack:max(0px,(100cqb - var(--w-left)/var(--r-left) - var(--w-right)/var(--r-right) - var(--gap))/3)}.scene-photos[data-left=landscape]{--cap-left:90}.scene-photos[data-right=landscape]{--cap-right:100;--share-right:55}.scene-photo{position:absolute}.scene-photo img{inline-size:100%;block-size:auto}.scene-photo--left{inset-block-start:var(--slack);inset-inline-start:0;inline-size:var(--w-left)}.scene-photo--right{inset-block-end:var(--slack);inset-inline-end:0;inline-size:var(--w-right)}.scene-photo--left .scene-photo-frame{rotate:-2deg}.scene-photo--left .scene-photo-frame,.scene-photo--right .scene-photo-frame{border:1px solid oklch(from var(--line) l c h/40%);box-shadow:0 16px 40px -10px oklch(from var(--surface-sunken) l c h/70%);transition:rotate var(--duration-scene) var(--ease-out),scale var(--duration-scene) var(--ease-out)}.scene-photo--right .scene-photo-frame{rotate:1deg}}@layer responsive{@media (min-width:48em){.showcase-heading{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;column-gap:var(--space-6)}.showcase-heading>div:first-child{grid-column:auto}.showcase-intro{max-inline-size:22rem}.ribbon{--ribbon-height:14rem}.ribbon-group{gap:var(--space-6);padding-inline-end:var(--space-6)}.collection-scene{--scene-min:38.75rem}.scene-link{padding-block:var(--space-8)}}@media (min-width:80em){.showcase-heading{grid-template-columns:auto minmax(0,34ch) minmax(0,1fr);column-gap:clamp(var(--space-6),4vw,var(--space-16))}}@container scene (min-aspect-ratio: 23/20){.scene-link{grid-template:"left copy right" minmax(0,1fr) /auto minmax(0,1fr) auto;column-gap:var(--space-8);padding-block:var(--space-8)}.scene-photos{display:contents;--slack:0px;--w-left:min(27cqi,68cqb * var(--r-left));--w-right:min(29cqi,74cqb * var(--r-right))}.scene-photos[data-left=landscape]{--w-left:min(31cqi,68cqb * var(--r-left))}.scene-photos[data-right=landscape]{--w-right:min(31cqi,74cqb * var(--r-right))}.scene-photo{position:relative}.scene-photo--left{grid-area:left;align-self:start;margin-block-start:6cqb}.scene-photo--right{grid-area:right;align-self:end;margin-block-end:4cqb}.scene-copy{grid-area:copy;align-self:center;text-align:center}.scene-copy h3{font-size:min(var(--text-display),(44cqi - 2 * var(--gutter) - 2 * var(--space-8))/4.2)}.scene-meta{justify-content:center}.scene-link:has(.scene-photos[data-left=landscape][data-right=landscape]){grid-template:"left copy" minmax(0,1fr) ". right" minmax(0,1fr) /minmax(0,1fr) minmax(0,1fr);row-gap:var(--space-6)}.scene-photos[data-left=landscape][data-right=landscape]{--cell-inline:(100cqi - 2 * var(--gutter) - var(--space-8)) /2;--cell-block:(100cqb - 2 * var(--space-12) - var(--space-6)) /2;--w-left:min(var(--cell-inline),var(--cell-block) * var(--r-left));--w-right:min(var(--cell-inline),var(--cell-block) * var(--r-right))}.scene-photos[data-left=landscape][data-right=landscape] .scene-photo{justify-self:start;margin:0}.scene-link:has(.scene-photos[data-left=landscape][data-right=landscape]) :is(.scene-copy,.scene-meta){text-align:start;justify-content:start}}@media (forced-colors:active){.ribbon-pause:has(:checked){forced-color-adjust:none;color:Highlight;outline-color:CanvasText}}}@layer motion{@keyframes ribbon-flow{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:no-preference){.ribbon-track{animation:ribbon-flow var(--duration-ribbon) linear infinite}.collection-showcase:has(.ribbon-pause :checked) .ribbon-track{animation-play-state:paused}.scene-in-view .scene-photo-frame{animation:scene-arrive 1.1s var(--ease-out) backwards}.scene-photo--left{--arrival-turn:-5deg}.scene-photo--right{--arrival-turn:4deg}.scene-in-view .scene-photo--right .scene-photo-frame{animation-delay:.14s}.scene-link:focus-visible .scene-photo-frame{animation:none}.scene-photo-frame{transition:translate .45s var(--ease-out),rotate .45s var(--ease-out)}.scene-photo-motion{transform:translate3d(var(--scene-move-x,0),var(--scene-move-y,0),0)}.scene-motion-active .scene-photo-motion{will-change:transform}@keyframes scene-arrive{0%{opacity:.25;scale:.84;rotate:var(--arrival-turn);clip-path:inset(8% 6%)}to{opacity:1;scale:1;clip-path:inset(0)}}.ribbon-frame img{transition:scale var(--duration-photo) var(--ease-out)}:is(.ribbon-pause,.scene-cta){transition:color var(--duration-ui) ease,border-color var(--duration-ui) ease,background-color var(--duration-ui) ease}.ribbon-pause:active{scale:.97}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.motion-ribbon:hover .ribbon-track{animation-play-state:paused}.ribbon-group>a:hover img{scale:1.04}.scene-link:hover .scene-photo--left .scene-photo-frame{translate:-.375rem -.25rem;rotate:-3deg}.scene-link:hover .scene-photo--right .scene-photo-frame{translate:.375rem .25rem;rotate:2deg}}@media (hover:hover) and (pointer:fine){.ribbon-group>a:hover .ribbon-label,.ribbon-pause:hover,.scene-link:hover .scene-cta{color:var(--accent)}}@media (prefers-reduced-motion:reduce){.ribbon-bar,.ribbon-group--copy{display:none}.motion-ribbon{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:thin}.ribbon-track{padding-inline:var(--gutter)}.ribbon-group>a{scroll-snap-align:start}.collection-scene{position:relative}}}@layer components{.services-section{padding-block:var(--section-block);border-block-start:1px solid var(--line);overflow-anchor:none}html:has(.services-section){overflow-anchor:none}html:has(.service-summary:focus,.service-details summary:focus){scroll-padding-block-start:0}.service-summary{scroll-margin-block-start:var(--space-4)}.services-heading h2,.services-intro{margin-block-start:var(--space-4)}.services-intro{max-inline-size:34ch;font-size:var(--text-base);color:var(--muted)}.price-list-download{gap:var(--space-3);margin-block-start:var(--space-2);color:var(--ink);text-align:start}.price-list-download .icon{inline-size:1.125rem;block-size:1.125rem}.service-groups{margin-block-start:var(--space-8)}.service-group{border-block-start:1px solid var(--line);scroll-margin-block-start:var(--space-6)}.service-group:last-child{border-block-end:1px solid var(--line)}.service-summary{display:grid;grid-template-columns:minmax(0,1fr) var(--space-5);align-items:center;gap:var(--space-2) var(--space-3);min-block-size:var(--target);padding-block:var(--space-6);list-style:none;cursor:pointer}.service-details summary::-webkit-details-marker,.service-summary::-webkit-details-marker{display:none}.service-summary h3{font:500 var(--text-xl)/1.25 var(--sans);letter-spacing:-.025em;text-wrap:balance}.service-range{grid-area:2/1;font-size:var(--text-sm);color:var(--muted);white-space:nowrap}.service-summary .icon{grid-area:1/2/3/3;inline-size:var(--space-5);block-size:var(--space-5)}.service-group[open]>.service-summary .icon{rotate:180deg}.service-group[open]>.service-summary h3{color:var(--accent)}.service-body{display:grid;gap:var(--space-5);padding-block:var(--space-2) var(--space-6)}.service-details:not([open])>:not(summary),.service-group:not([open])>.service-body{display:none}.service-photo{display:flex;justify-content:flex-start;align-items:start}.service-photo img{inline-size:auto;block-size:auto;max-inline-size:100%;max-block-size:10rem;border:1px solid oklch(from var(--line) l c h/35%);border-radius:var(--radius-sm)}.service-content{min-inline-size:0;container:service-packages/inline-size}.service-tiers{display:grid;gap:var(--space-8)}.service-tier{min-inline-size:0;padding:var(--space-5);border:1px solid oklch(from var(--line) l c h/55%);border-radius:var(--radius-sm);background:oklch(from var(--surface-raised) l c h/28%)}.service-tier h4{font-size:var(--text-base);font-weight:500}.service-price{margin-block:var(--space-2) var(--space-4);font:500 var(--text-2xl)/1.15 var(--sans);letter-spacing:-.035em;font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.service-description{margin-block-end:var(--space-6);color:var(--muted)}.service-description,.service-gift{max-inline-size:var(--measure);font-size:var(--text-base)}.service-gift{margin-block:calc(var(--space-2) - var(--space-6)) var(--space-6);color:var(--ink)}.service-facts{margin:0}.service-facts>div{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:var(--space-3);padding-block:var(--space-2);border-block-start:1px solid var(--line)}.service-facts dt{font-size:var(--text-sm);font-weight:400;color:var(--muted)}.service-facts dd{margin:0;font-size:var(--text-base)}.service-details{margin-block-start:var(--space-3)}.service-details summary{display:inline-flex;align-items:center;gap:var(--space-3);min-block-size:var(--target);font-size:var(--text-sm);font-weight:500;list-style:none;cursor:pointer}.service-details summary .icon{inline-size:1.125rem;block-size:1.125rem}.service-details[open]>summary .icon{rotate:180deg}.service-includes{max-inline-size:var(--measure);margin-block:var(--space-3) 0;padding-inline-start:var(--space-5);font-size:var(--text-base);color:var(--muted)}.service-includes li+li{margin-block-start:var(--space-2)}.service-delivery{margin-block-start:var(--space-3);font-size:var(--text-base)}.service-delivery>span{color:var(--muted)}.service-actions{margin-block-start:var(--space-3)}.service-inquiry{border-block-end-color:var(--accent)}.service-extras{max-inline-size:var(--measure);margin-block-start:var(--space-5);font-size:var(--text-base);color:var(--muted)}.service-extras p+p{margin-block-start:var(--space-2)}.service-terms{margin-block-start:var(--space-6);color:var(--muted)}.service-terms>summary{font:500 var(--text-base)/1.4 var(--sans);color:var(--ink)}.service-terms-content{display:grid;gap:var(--space-5);margin-block-start:var(--space-3)}.service-terms-content>p{margin:0;font-size:var(--text-base);color:var(--ink)}.service-terms ul{display:grid;column-gap:var(--space-8);margin:0;padding:0;list-style:none}.service-terms li{padding-block:var(--space-4);border-block-start:1px solid var(--line);font-size:var(--text-base)}}@layer responsive{@media (min-width:48em){.services-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-12)}.services-intro{max-inline-size:24rem;margin-block-start:0}.service-groups{margin-block-start:var(--space-8)}.service-summary{grid-template-columns:minmax(0,1fr) auto var(--space-5);padding-block:var(--space-5);gap:var(--space-6)}.service-range{grid-area:auto;font-size:var(--text-base)}.service-summary .icon{grid-area:auto}.service-body{grid-template-columns:minmax(0,2fr) minmax(0,10fr);gap:var(--space-6)}.service-photo img{max-block-size:16rem}@container service-packages (min-width: 30em){.service-tiers[data-tiers="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}}@container service-packages (min-width: 44em){.service-tiers[data-tiers="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}@container service-packages (min-width: 50em){.service-tiers[data-tiers="1"] .service-tier{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-rows:auto auto auto 1fr auto;grid-template-areas:"name facts" "price facts" "description facts" "gift facts" "actions details";column-gap:clamp(var(--space-8),4cqi,var(--space-16));align-items:start;padding:var(--space-6)}.service-tiers[data-tiers="1"] .service-tier>h4{grid-area:name}.service-tiers[data-tiers="1"] .service-price{grid-area:price}.service-tiers[data-tiers="1"] .service-description{grid-area:description;margin-block-end:var(--space-4)}.service-tiers[data-tiers="1"] .service-gift{grid-area:gift;margin-block:0 var(--space-4)}.service-tiers[data-tiers="1"] .service-facts{grid-area:facts}.service-tiers[data-tiers="1"] .service-details{grid-area:details}.service-tiers[data-tiers="1"] .service-actions{grid-area:actions}}}@media (min-width:64em){.service-terms ul{grid-template-columns:repeat(2,minmax(0,1fr))}.service-extras{max-inline-size:none}}@media (min-width:100em){.service-terms ul{grid-template-columns:repeat(4,minmax(0,1fr))}}}@layer motion{@media (hover:hover) and (pointer:fine){.service-details summary:hover,.service-summary:hover{color:var(--accent)}}@media (prefers-reduced-motion:no-preference){.service-group[open]>.service-body{animation:service-enter .26s var(--ease-out) backwards}@keyframes service-enter{0%{opacity:.88;translate:0 .25rem}to{opacity:1;translate:0 0}}.service-details summary,.service-summary{transition:color var(--duration-ui) ease}.service-details summary .icon,.service-summary .icon{transition:rotate var(--duration-ui) ease}}}@layer components{.awards-section{padding-block:var(--section-block);border-block-start:1px solid var(--line)}.awards-heading{margin-block:var(--space-3) var(--space-5)}.awards-heading>p{max-inline-size:42ch;margin-block-start:var(--space-4);font-size:var(--text-base);color:var(--muted)}.awards-body{display:grid;gap:var(--space-6)}.awarded-photo{max-inline-size:24rem}.awarded-photo img{inline-size:100%;block-size:auto;border:1px solid oklch(from var(--line) l c h/40%);box-shadow:0 16px 40px -10px oklch(from var(--surface-sunken) l c h/70%)}.awarded-photo figcaption{display:grid;gap:var(--space-1);margin-block-start:var(--space-4);padding-inline-start:var(--space-3);border-inline-start:1px solid var(--accent);font-size:var(--text-sm);color:var(--muted)}.awards-records{min-inline-size:0}.award-meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--muted)}.award-detail{font-size:var(--text-base);color:var(--muted)}.award-links{display:flex;flex-wrap:wrap;gap:var(--space-2)}.award-icon{display:grid;place-items:center;inline-size:var(--target);block-size:var(--target);border:1px solid var(--line-strong);border-radius:50%;color:var(--ink)}.award-icon .icon{inline-size:1.4rem;block-size:1.4rem}.awards-highlights{display:grid;gap:1px;margin:0;padding:0;list-style:none;background:var(--line);border:1px solid var(--line)}.award-card{align-content:start;padding:var(--space-6) var(--space-5);background:var(--surface)}.award-card,.award-card h3{display:grid;gap:var(--space-2)}.award-card h3{margin:var(--space-2) 0 0}.award-result{font:400 clamp(2rem,1.3rem + 1.5vw,3.1rem)/1 var(--serif);letter-spacing:-.02em}.award-category{font:500 var(--text-base)/1.35 var(--sans)}.award-card .award-links{margin-block-start:var(--space-2)}.awards-more{margin-block:var(--space-10) var(--space-3)}.awards-list{margin:0;padding:0;list-style:none}.awards-list li{display:grid;gap:var(--space-1) var(--space-4);align-items:baseline;padding-block:var(--space-3);border-block-start:1px solid var(--line)}.award-year{font-size:var(--text-sm);color:var(--muted)}.award-title{margin:0;font:500 clamp(.95rem,.85rem + .2vw,1.1rem)/1.35 var(--sans);letter-spacing:-.01em}.award-works{display:inline-flex;gap:var(--space-2);margin-inline-start:var(--space-3);vertical-align:middle}.award-works a{display:block}.award-works img{inline-size:1.6rem;block-size:2rem;object-fit:cover}}@layer responsive{@media (min-width:48em){.awards-heading{display:flex;align-items:end;flex-wrap:wrap;gap:var(--space-4) var(--space-8)}.awards-heading>p{margin-block-start:0;max-inline-size:34ch}.awards-body{grid-template-columns:minmax(0,min(28%,26rem)) minmax(0,1fr);gap:var(--space-8);align-items:start}.awarded-photo{max-inline-size:none}.awards-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.awards-list li{grid-template-columns:4.75rem minmax(0,1fr)}.award-year{grid-column:1;grid-row:1}.awards-list :is(.award-title,.award-detail,.award-links){grid-column:2}}@media (min-width:48em) and (min-height:40em){.awarded-photo{position:sticky;inset-block-start:var(--space-8)}}@media (min-width:64em){.awards-list li{grid-template-columns:4.5rem minmax(0,20rem) minmax(0,1fr) auto;align-items:center;column-gap:var(--space-6);padding-block:var(--space-1)}.awards-list :is(.award-year,.award-title,.award-detail,.award-links){grid-row:1}.awards-list .award-detail{grid-column:3}.awards-list .award-links{grid-column:4;justify-content:flex-end}}@media (min-width:100em){.awards-highlights{grid-template-columns:repeat(4,minmax(0,1fr))}}}@layer motion{@media (hover:hover) and (pointer:fine){.awards-list li:hover{background:oklch(from var(--surface-raised) l c h/45%)}.award-card:hover .award-result,.award-icon:hover,.awards-list li:hover .award-title{color:var(--accent)}.award-icon:hover{border-color:var(--accent)}}@media (prefers-reduced-motion:no-preference){.awards-list li{transition:background-color var(--duration-ui) ease}:is(.award-title,.award-result,.award-icon){transition:color var(--duration-ui) ease,border-color var(--duration-ui) ease}}}@layer components{.archive-page,.collection-page{padding-block-start:var(--space-2)}.collection-back{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--muted)}.collection-back a{display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:var(--target)}.collection-back .arrow{inline-size:1rem;block-size:1rem}.collection-after{padding-block-start:var(--space-4)}.collection-sessions,.collection-story{display:grid;gap:var(--space-4);padding-block:var(--space-6);border-block-start:1px solid var(--line)}:is(.collection-story,.collection-sessions) h2{font-size:var(--text-xl);line-height:var(--leading-title);letter-spacing:-.01em}.collection-story p{max-inline-size:var(--measure);font-size:var(--text-base)}.session-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-4);max-inline-size:var(--measure)}.collection-sessions h3,.session-name,.session-price{font:500 var(--text-lg)/1.4 var(--sans);font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.session-list{display:grid;gap:var(--space-4);margin:var(--space-3) 0 0;padding:0;list-style:none}.session-list li{display:grid;align-content:start;gap:var(--space-1);padding-block-start:var(--space-3);border-block-start:1px solid var(--line)}.session-name{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-1) var(--space-4)}.session-description{max-inline-size:var(--measure);font-size:var(--text-base);color:var(--muted)}.session-head+.session-description{margin-block-start:var(--space-2)}.session-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-8);margin-block-start:var(--space-4)}.next-project-heading{font-family:var(--sans);font-size:var(--text-base);line-height:var(--leading-body);letter-spacing:normal}.next-project{display:block;margin-block-start:var(--space-8);padding-block:var(--space-10) var(--section-block);border-block-start:1px solid var(--line)}.next-project-label{display:block;font-size:var(--text-sm);color:var(--muted)}.next-project-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);margin-block-start:var(--space-5);font-family:var(--serif);font-size:var(--text-2xl);line-height:var(--leading-title)}.next-project-title>.arrow{inline-size:2.375rem;block-size:2.375rem}.gallery-browser{--frame-height:clamp(20rem,calc(100svh - 24.375rem),45rem);--edge:var(--gutter);position:relative;padding-block-end:var(--space-6);background:var(--surface);color:var(--ink)}.gallery-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-4);padding:var(--space-2) var(--gutter) var(--space-4)}.archive-filters,.filmstrip-footer,.gallery-toolbar,.overview{inline-size:100%;margin-inline:auto}.gallery-heading{font-size:var(--text-xl);line-height:1.05}.gallery-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3)}.gallery-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-inline-size:100%;gap:2px;padding:var(--space-1);border:1px solid var(--line-strong);border-radius:var(--radius-pill)}.gallery-modes button{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-inline-size:0;min-block-size:var(--target);padding:var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-base);line-height:1.4;text-align:start;color:var(--muted)}.gallery-modes button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.mode-icon{display:inline-block;inline-size:.75rem;block-size:.75rem;flex-shrink:0}.mode-icon--film{border:1px solid;border-inline-width:3px}.mode-icon--grid{background:linear-gradient(currentColor,currentColor) 0 0 /42% 42%,linear-gradient(currentColor,currentColor) 100% 0 /42% 42%,linear-gradient(currentColor,currentColor) 0 100% /42% 42%,linear-gradient(currentColor,currentColor) 100% 100% /42% 42%;background-repeat:no-repeat}.gallery-count{font-size:var(--text-sm);white-space:nowrap;color:var(--muted)}.gallery-count strong{font-size:var(--text-lg);font-weight:400;color:var(--ink)}.gallery-skip:not(:focus){position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.gallery-skip:focus{position:absolute;z-index:6;inset-inline-start:var(--edge);margin-block-start:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--ink);color:var(--surface);font-size:var(--text-sm);font-weight:500}.gallery-end{display:block}.gallery-end:focus{outline:none}.photo-link{position:relative;display:block;overflow:hidden;cursor:zoom-in}.photo-link img{inline-size:100%;block-size:auto;transition:scale var(--duration-photo) var(--ease-out)}.photo-link:focus-visible{outline:none}.photo-link:focus-visible:after{content:"";position:absolute;inset:0;border:2px solid var(--surface-sunken);box-shadow:inset 0 0 0 2px var(--accent),inset 0 0 0 4px var(--surface-sunken)}.photo-open-label{position:absolute;inset-inline-end:var(--space-3);inset-block-end:var(--space-3);display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);line-height:1.4;background:var(--ink);color:var(--surface);opacity:0}.photo-open-label:before{content:"";inline-size:1rem;block-size:1rem;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.3'%3E%3Cpath d='M4.5 9.5v-5h5M19.5 9.5v-5h-5M4.5 14.5v5h5M19.5 14.5v5h-5'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.3'%3E%3Cpath d='M4.5 9.5v-5h5M19.5 9.5v-5h-5M4.5 14.5v5h5M19.5 14.5v5h-5'/%3E%3C/svg%3E") center /contain no-repeat}.filmstrip{position:relative;display:flex;align-items:end;gap:var(--space-5);overflow-x:auto;overflow-y:hidden;padding:var(--space-2) var(--edge) var(--space-4);scroll-padding-inline:var(--edge);scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab}.filmstrip::-webkit-scrollbar{display:none}.filmstrip[data-dragging=true],.filmstrip[data-dragging=true] a{cursor:grabbing;-webkit-user-select:none;user-select:none}.film-frame{flex:none;inline-size:min(calc(var(--frame-height) * var(--photo-ratio)),82vw);content-visibility:auto;contain-intrinsic-block-size:auto var(--frame-height)}.film-photo{block-size:var(--frame-height)}.film-photo img{block-size:100%;object-fit:contain;object-position:bottom}.frame-caption{margin-block-start:var(--space-3);font-size:var(--text-sm);line-height:1.4;color:var(--muted)}.filmstrip-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2) var(--space-5);padding:var(--space-1) var(--gutter) 0}.gallery-arrows{display:flex;gap:var(--space-2)}.gallery-arrows button{display:grid;place-items:center;inline-size:var(--target);block-size:var(--target);border:1px solid var(--line-strong);border-radius:50%}.gallery-arrows .arrow,:is(.viewer-previous,.viewer-next) .arrow{inline-size:1.25rem;block-size:1.25rem}:is(.gallery-arrows,.viewer-stage) [aria-disabled=true]{opacity:.3}:is(.gallery-arrows,.viewer-stage) [aria-disabled=true]:focus-visible{opacity:1;border-color:oklch(from var(--line-strong) l c h/30%)}:is(.gallery-arrows,.viewer-stage) [aria-disabled=true]:focus-visible>*{opacity:.3}.overview{padding:var(--space-2) var(--gutter) 0}.archive-group{container-type:inline-size}.archive-group+.archive-group{margin-block-start:var(--space-6)}.archive-group-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 var(--space-3);padding-block:var(--space-3) var(--space-4);border-block-start:1px solid var(--line)}.archive-group-head h2{font-size:var(--text-lg);line-height:var(--leading-title);letter-spacing:-.01em}.archive-grid{--columns:2;--rows:var(--rows-2);--column:calc(100cqi / (var(--columns) + (var(--columns) - 1) * .1));display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));grid-auto-rows:calc(var(--column) / 100);column-gap:calc(var(--column) / 10);content-visibility:auto;contain-intrinsic-block-size:calc(var(--rows) * var(--column) / 100)}@supports (inline-size:round(down,1.5px,.015625px)){.archive-grid{contain-intrinsic-block-size:calc(var(--rows) * round(down, var(--column) / 100, .015625px))}}.photo-tile{grid-row-end:span var(--span);content-visibility:auto}@supports not (inline-size:1cqi){.archive-grid{grid-auto-rows:auto;align-items:start;gap:var(--space-6) var(--space-3)}.archive-grid,.photo-tile{content-visibility:visible}.photo-tile{grid-row-end:auto}}.archive-filters{position:sticky;inset-block-start:0;z-index:5;display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-2) var(--gutter) var(--space-3);scroll-padding-inline:var(--gutter);margin-block-end:var(--space-1);scrollbar-width:thin;scrollbar-color:var(--line) transparent;background:var(--surface)}.archive-filters button{display:flex;flex-shrink:0;align-items:center;gap:var(--space-2);min-block-size:var(--target);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:var(--text-sm);white-space:nowrap}.archive-filters button>span{font-size:var(--text-sm);color:var(--muted)}.archive-filters button[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.archive-filters button[aria-pressed=true]>span{color:var(--muted-on-ink)}.photo-viewer{position:fixed;inset:0;inline-size:100%;block-size:100svh;max-inline-size:none;max-block-size:none;margin:0;padding:0;border:0;background:var(--surface-sunken);color:var(--ink)}.photo-viewer::backdrop{background:var(--surface-sunken)}.viewer-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:calc(4rem + env(safe-area-inset-top)) minmax(0,1fr) calc(5.5rem + env(safe-area-inset-bottom));block-size:100%}.viewer-top{display:flex;align-items:center;gap:var(--space-2);padding:env(safe-area-inset-top) max(var(--space-3),env(safe-area-inset-right)) 0 max(var(--space-4),env(safe-area-inset-left));font-size:var(--text-sm)}.viewer-title{display:flex;flex:1 1;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 var(--space-3);min-inline-size:0;margin-inline-end:var(--space-2);line-height:1.4}.viewer-title>.numerals{margin-inline-start:auto;color:var(--muted);white-space:nowrap}.viewer-top>button{display:grid;flex-shrink:0;place-items:center;inline-size:var(--target);block-size:var(--target)}.viewer-top .icon{inline-size:1.5rem;block-size:1.5rem}.viewer-stage{position:relative;min-block-size:0;overflow:hidden;padding-inline:max(var(--space-3),env(safe-area-inset-left)) max(var(--space-3),env(safe-area-inset-right));touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}.viewer-stage[data-zoomed]{touch-action:pinch-zoom;cursor:grab}.viewer-stage[data-panning]{cursor:grabbing}.viewer-stage[data-pinched]{touch-action:manipulation}.viewer-photo{position:relative;inline-size:100%;block-size:100%}.viewer-photo:not([data-shown]){opacity:0}.viewer-copy,.viewer-zoom{position:absolute;inset:0}.viewer-copy{background:50%/contain no-repeat}.viewer-photo img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:contain}.viewer-photo:not([data-state=ready]) img{opacity:0}.viewer-loading{position:absolute;z-index:1;inset-inline:0;inset-block-end:var(--space-4);display:flex;align-items:center;gap:var(--space-2);inline-size:fit-content;margin-inline:auto;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:oklch(from var(--surface-sunken) l c h/82%);font-size:var(--text-sm);line-height:1.4;color:var(--muted);pointer-events:none}.viewer-spinner{inline-size:1rem;block-size:1rem;flex-shrink:0;border:2px solid var(--line-strong);border-block-start-color:var(--accent);border-radius:50%}.viewer-error{position:absolute;z-index:1;inset:0;display:grid;justify-items:center;gap:var(--space-4);inline-size:fit-content;max-inline-size:min(24rem,100% - 9rem);block-size:fit-content;margin:auto;padding:var(--space-5) var(--space-6);background:oklch(from var(--surface-sunken) l c h/88%);text-align:center;font-size:var(--text-sm);line-height:1.5}.viewer-retry{min-block-size:var(--target);padding-inline:var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:500}.viewer-next,.viewer-previous{position:absolute;z-index:1;inset-block-start:50%;display:grid;place-items:center;inline-size:var(--target);block-size:var(--target);border:1px solid var(--line-strong);border-radius:50%;background:oklch(from var(--surface-sunken) l c h/60%);transform:translateY(-50%)}.viewer-previous{inset-inline-start:max(var(--space-4),env(safe-area-inset-left))}.viewer-next{inset-inline-end:max(var(--space-4),env(safe-area-inset-right))}.viewer-thumbnails{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-3) max(var(--space-3),env(safe-area-inset-bottom))}.viewer-thumbnails button{inline-size:3rem;block-size:3.5rem;padding:3px;border:1px solid transparent;opacity:.5}.viewer-thumbnails button[aria-pressed=true]{border-color:var(--ink);opacity:1}.viewer-thumbnails img{inline-size:100%;block-size:100%;object-fit:cover}}@layer responsive{@media (min-width:24.375em){.gallery-modes button{padding-inline:var(--space-4);gap:var(--space-2)}}@media (min-width:48em){.collection-sessions,.collection-story{grid-template-columns:1fr 2fr;gap:var(--space-10)}.session-list[data-tiers="2"]{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-8)}.session-list[data-tiers="3"]{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--space-6)}.next-project{margin-block-start:var(--space-8);padding-block-start:var(--space-8)}.next-project-title>.arrow{inline-size:3.75rem;block-size:3.75rem}.gallery-browser{--frame-height:clamp(21.25rem,calc(100svh - 21.875rem),48.75rem)}.gallery-toolbar{flex-direction:row;justify-content:space-between;align-items:center;gap:var(--space-6);padding-block:var(--space-2) var(--space-4)}.gallery-controls{flex-wrap:nowrap;gap:var(--space-7)}.gallery-modes button{padding-inline:var(--space-5);gap:var(--space-3)}.filmstrip{gap:var(--space-9)}.film-frame{inline-size:min(calc(var(--frame-height) * var(--photo-ratio)),80vw)}.filmstrip-footer{flex-wrap:nowrap;gap:var(--space-9)}.archive-grid{--columns:3;--rows:var(--rows-3)}.archive-group+.archive-group{margin-block-start:var(--space-8)}.archive-filters{gap:var(--space-3)}.archive-filters button{padding-inline:var(--space-5)}.viewer-layout{grid-template-rows:calc(4.75rem + env(safe-area-inset-top)) minmax(0,1fr) calc(6.25rem + env(safe-area-inset-bottom))}.viewer-top{padding-inline:var(--gutter)}.viewer-stage{padding-inline:4.5rem}.viewer-previous{inset-inline-start:max(var(--space-5),env(safe-area-inset-left))}.viewer-next{inset-inline-end:max(var(--space-5),env(safe-area-inset-right))}.viewer-thumbnails button{inline-size:3.625rem;block-size:4.375rem}}@media (min-width:64em){.archive-grid{--columns:4;--rows:var(--rows-4)}}@media (orientation:landscape) and (max-height:30em){.gallery-browser{--frame-height:calc(100svh - 5.5rem)}.gallery-toolbar{flex-direction:row;justify-content:space-between;align-items:center;gap:var(--space-4)}.gallery-heading{font-size:var(--text-lg)}.gallery-controls{flex-wrap:nowrap;gap:var(--space-4)}.filmstrip-footer{flex-wrap:nowrap}.viewer-layout{grid-template-areas:". zoom stage close ." ". info stage thumbs .";grid-template-columns:env(safe-area-inset-left) 3.5rem minmax(0,1fr) 4rem env(safe-area-inset-right);grid-template-rows:auto minmax(0,1fr)}.viewer-top{display:contents}.viewer-close,.viewer-zoom-toggle{justify-self:center;margin-block-start:max(var(--space-2),env(safe-area-inset-top))}.viewer-zoom-toggle{grid-area:zoom}.viewer-close{grid-area:close}.viewer-title{grid-area:info;justify-self:center;flex:none;flex-wrap:nowrap;margin:0;padding:0;padding-inline:var(--space-4);writing-mode:vertical-rl;rotate:.5turn}.viewer-stage{grid-area:stage;padding-inline:0}.viewer-previous{inset-inline-start:var(--space-2)}.viewer-next{inset-inline-end:var(--space-2)}.viewer-thumbnails{grid-area:thumbs;flex-direction:column;gap:var(--space-1);padding:var(--space-2) 0 max(var(--space-2),env(safe-area-inset-bottom))}.viewer-thumbnails button{inline-size:var(--target);block-size:var(--target)}}@media (pointer:coarse){.filmstrip{scroll-snap-type:x mandatory}.film-frame{scroll-snap-align:start}}@media (forced-colors:active){.archive-filters button[aria-pressed=true],.gallery-modes button[aria-pressed=true]{forced-color-adjust:none;background:SelectedItem;color:SelectedItemText;border-color:SelectedItem}.archive-filters button[aria-pressed=true]>span{color:SelectedItemText}.mode-icon--grid{forced-color-adjust:none}.photo-link:focus-visible{outline:3px solid Highlight;outline-offset:-5px}.viewer-thumbnails button{border-color:Canvas}.viewer-thumbnails button[aria-pressed=true]{border:2px solid Highlight}.viewer-spinner{border-block-start-color:Highlight}}html:not(.js) :is(.gallery-controls,.archive-filters,.filmstrip-footer){display:none}}@layer motion{@keyframes viewer-arrive{0%{opacity:.2;transform:translateX(var(--arrive,1.125rem))}to{opacity:1;transform:translateX(0)}}@keyframes viewer-spin{to{rotate:1turn}}@keyframes viewer-appear{0%{opacity:0}}@media (prefers-reduced-motion:no-preference){.viewer-photo[data-shown]{animation:viewer-arrive var(--duration-view) ease-out both}.viewer-zoom{transition:transform var(--duration-view) var(--ease-out)}[data-panning] .viewer-zoom{transition:none}.viewer-spinner{animation:viewer-spin .9s linear infinite}.viewer-loading{animation:viewer-appear var(--duration-ui) ease-out both}.tile-photo img{transition:transform var(--duration-photo) var(--ease-out)}.photo-open-label{translate:0 .25rem;transition:opacity var(--duration-ui) ease,translate var(--duration-ui) ease}:is(.collection-back a,.next-project-title,.gallery-modes button,.gallery-arrows button,.archive-filters button,.viewer-top button,.viewer-previous,.viewer-next,.viewer-retry){transition:color var(--duration-ui) ease,border-color var(--duration-ui) ease}}@media (prefers-reduced-motion:no-preference){.photo-link:focus-visible .photo-open-label{translate:0 0}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.photo-link:hover img,.tile-photo:hover img{scale:1.035}}@media (hover:hover) and (pointer:fine){.photo-link:hover .photo-open-label{opacity:1;translate:0 0}.next-project:hover .next-project-title,:is(.collection-back a,.gallery-modes button:not([aria-pressed=true],[aria-disabled=true]),.viewer-top button):hover{color:var(--accent)}:is(.gallery-arrows button,.archive-filters button:not([aria-pressed=true]),.viewer-previous,.viewer-next,.viewer-retry):not([aria-disabled=true]):hover{color:var(--accent);border-color:currentColor}.viewer-thumbnails button:not([aria-pressed=true]):hover{opacity:.8}}.photo-link:focus-visible .photo-open-label{opacity:1}}@layer components{.model-credits{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:0 var(--space-3);font-size:var(--text-sm)}.model-credits>span{color:var(--muted)}.model-credits a{display:inline-flex;align-items:center;min-block-size:var(--target);overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:.3em}.viewer-bottom{display:flex;flex-direction:column;min-block-size:0}.viewer-credits{max-block-size:33svh;overflow-y:auto;padding-inline:max(var(--space-4),env(safe-area-inset-left)) max(var(--space-4),env(safe-area-inset-right))}.viewer-layout:has(.viewer-bottom[data-credits=true]){grid-template-rows:calc(4rem + env(safe-area-inset-top)) minmax(0,1fr) auto}.viewer-thumbnails{flex:1 1}}@layer responsive{@media (min-width:48em){.viewer-layout:has(.viewer-bottom[data-credits=true]){grid-template-rows:calc(4.75rem + env(safe-area-inset-top)) minmax(0,1fr) auto}.viewer-bottom[data-credits=true]{display:grid;grid-template:"thumbs credits" auto/minmax(0,1fr) minmax(0,1fr);align-items:center;padding-inline:var(--space-5)}.viewer-credits{grid-area:credits;padding-inline:0}.viewer-bottom[data-credits=true] .viewer-thumbnails{grid-area:thumbs}}@media (orientation:landscape) and (max-height:30em){.viewer-layout:has(.viewer-bottom[data-credits=true]){grid-template-rows:auto minmax(0,1fr)}.viewer-bottom,.viewer-bottom[data-credits=true]{display:flex;grid-area:thumbs;justify-content:center;overflow-y:auto;padding-inline:0}.viewer-bottom .viewer-thumbnails,.viewer-bottom[data-credits=true] .viewer-thumbnails{grid-area:auto}.viewer-credits{position:static;padding-inline:var(--space-1);max-inline-size:none;justify-content:center;font-size:var(--text-sm)}.viewer-credits>span{display:none}.viewer-credits a{writing-mode:vertical-rl;max-block-size:9rem}}@media (forced-colors:active){.model-credits a{text-decoration-color:LinkText}}}@layer motion{@media (hover:hover) and (pointer:fine){.model-credits a:hover{color:var(--accent)}}}@layer components{:is(.about,.awards-section,.services-section,.contact){position:relative;isolation:isolate}.collection-scene{isolation:isolate}:is(.about,.awards-section,.services-section,.contact,.collection-scene):before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:var(--film-grain-opacity);background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)'/%3E%3C/svg%3E") repeat 0 0 /10rem 10rem}.reading-progress{position:fixed;inset:0 0 auto;block-size:2px;z-index:30;pointer-events:none;background:var(--accent);transform:scaleX(0);transform-origin:left}html:has(dialog[open]) .reading-progress{visibility:hidden}.title-word{max-inline-size:100%;vertical-align:bottom}.title-word,.title-word>span{display:inline-block}}@layer motion{@media (prefers-reduced-motion:no-preference){.reveal-entered{animation:section-arrive .7s var(--ease-out) backwards;animation-delay:var(--reveal-delay,0s)}.reveal-entered:focus-within{animation:none}@keyframes section-arrive{0%{opacity:.35;translate:0 1rem}to{opacity:1;translate:0 0}}.reveal-entered:has(.motion-text){animation:none}:is(.reveal-entered,.scene-in-view) .title-word{overflow:clip;padding-block:.15em;margin-block:-.15em}:is(.reveal-entered,.scene-in-view) .title-word>span{animation:title-unfold .85s var(--ease-out) backwards;animation-delay:calc(var(--reveal-delay, 0s) + var(--word-index) * 65ms)}:is(.reveal-entered:focus-within,.scene-link:focus-visible) .title-word>span{animation:none}@keyframes title-unfold{0%{translate:0 125%}to{translate:0 0}}.about-statement[data-motion=true] .scroll-word{color:color-mix(in oklch,var(--ink) calc(var(--word-light, 1) * 100%),var(--ink-quiet))}.about-statement .scroll-word{transition:color 90ms linear}}@media (forced-colors:active){.reading-progress{background:Highlight}}}