@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-cyrillic-ext-wght-normal.1dtltwig2y3wh.woff2)format("woff2-variations");unicode-range:U+460-52F,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(../media/manrope-cyrillic-wght-normal.1hmx3sz6swr8m.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-greek-wght-normal.37b2k1x9f-55d.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-vietnamese-wght-normal.3xvzy9_grgcx4.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-latin-ext-wght-normal.0-hru0xfwhnbp.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-latin-wght-normal.1p_a2k8qd5zhp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-cyrillic-ext-400-normal.2cm1lmmxgyuzi.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-ext-400-normal.13-qxyt2ndsce.woff)format("woff");unicode-range:U+460-52F,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(../media/cormorant-garamond-cyrillic-400-normal.1j66mrznmjy8v.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-400-normal.3inys_a6icas8.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-vietnamese-400-normal.3jk2oynaxz96y.woff2)format("woff2"),url(../media/cormorant-garamond-vietnamese-400-normal.2nfyw9kszoq2g.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-ext-400-normal.3l9zym-e3q4nf.woff2)format("woff2"),url(../media/cormorant-garamond-latin-ext-400-normal.3e1hzg9uz-984.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-400-normal.1fm7t8dmldrtt.woff2)format("woff2"),url(../media/cormorant-garamond-latin-400-normal.38f0-_0_stt74.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-cyrillic-ext-400-italic.2hvvmmxcbibnt.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-ext-400-italic.37_stmxg-hbfa.woff)format("woff");unicode-range:U+460-52F,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(../media/cormorant-garamond-cyrillic-400-italic.0px4qoz9egig_.woff2)format("woff2"),url(../media/cormorant-garamond-cyrillic-400-italic.44q2zfn8guwbv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-vietnamese-400-italic.31b_eihkav8qt.woff2)format("woff2"),url(../media/cormorant-garamond-vietnamese-400-italic.0p0t1-ufjc6gk.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-ext-400-italic.1cpj25_nc9h0x.woff2)format("woff2"),url(../media/cormorant-garamond-latin-ext-400-italic.179asuki6ytsv.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-400-italic.1zhb_kb4w2oq1.woff2)format("woff2"),url(../media/cormorant-garamond-latin-400-italic.3qhckdzyyfe93.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@layer reset,base,components,responsive,motion;@layer tokens{:root{--surface:#121611;--surface-raised:#1b2119;--surface-sunken:#0d0f0d;--ink:#f7f4ec;--muted:#c4c8b8;--ink-quiet:#858c7c;--muted-on-ink:#535d4b;--line:#353d31;--line-strong:#5f6659;--accent:#d1ad85;--backdrop:#060905cc;--scrim:#0009;--glow-accent:#d1ad8514;--glow-ambient:#1b211980;--glass-surface:#121611d1;--glass-border:#5f665940;--glass-hover:#242b22b3;--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:.2s;--duration-view:.28s;--duration-photo:.65s;--duration-scene:1.2s;--duration-ribbon:84s}@supports (color:lab(0% 0 0)){:root{--surface:lab(6.72803% -2.6511 2.48916);--surface-raised:lab(11.9337% -4.27294 4.38368);--surface-sunken:lab(4.09969% -.87972 .672716);--ink:lab(96.3542% -.146061 4.59031);--muted:lab(79.9315% -3.70789 7.29263);--ink-quiet:lab(57.3498% -4.74575 7.44921);--muted-on-ink:lab(38.1833% -6.80479 9.05606);--line:lab(24.7615% -5.48112 6.27218);--line-strong:lab(42.2571% -4.76599 6.46741);--accent:lab(73.2648% 9.58687 25.6007);--backdrop:lab(2.23486% -1.20813 1.20519/.8);--scrim:lab(0% 0 0/.6);--glow-accent:lab(73.2648% 9.58687 25.6007/.08);--glow-ambient:lab(12.0615% -4.52167 4.64802/.5);--glass-surface:lab(6.72803% -2.6511 2.48916/.82);--glass-border:lab(42.2571% -4.76599 6.46741/.25);--glass-hover:lab(16.7266% -5.02676 5.15782/.7)}}@media (min-width:48em){:root{--text-base:.875rem}}}
@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,figure{margin:0}button{font:inherit;color:inherit}img{max-inline-size:100%;display:block}picture{display:contents}a{color:inherit;text-decoration:none}}@layer base{html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth;-webkit-tap-highlight-color:oklch(from var(--ink) l c h / 14%);scroll-padding-block-start:6.875rem}html:has(dialog[open]){overflow:hidden}body{background:var(--surface);color:var(--ink);font-family:var(--sans);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;position:relative}::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}p,li,figcaption{text-wrap:pretty}em{font-weight:400}button{cursor:pointer;background:0 0;border:0;border-radius:0}.section-shell{inline-size:100%;padding-inline:var(--gutter);margin-inline:auto}.eyebrow{font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:500;line-height:1.65}.arrow{flex-shrink:0;block-size:1.5rem;inline-size:1.5rem}.arrow--right{transform:rotate(45deg)}.arrow--down{transform:rotate(135deg)}.arrow--left{transform:rotate(-135deg)}.arrow--up{transform:rotate(-45deg)}.icon{flex-shrink:0;block-size:1.25rem;inline-size:1.25rem}[aria-disabled=true]{cursor:default;opacity:.5}.text-link{justify-content:space-between;align-items:center;gap:var(--space-6);min-block-size:var(--target);font-size:var(--text-sm);border-block-end:1px solid;font-weight:500;line-height:1.4;display:inline-flex}.text-link .arrow{inline-size:1.25rem}.numerals{font-variant-numeric:lining-nums tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@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}.text-link:hover .arrow--diagonal{translate:.125rem -.125rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation: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{z-index:100;padding:var(--space-3) var(--space-4);background:var(--ink);color:var(--surface);font-size:var(--text-sm);font-weight:500;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));transform:translateY(-180%)}.skip-link:focus{transform:none}.site-header{z-index:10;justify-content:space-between;align-items:center;gap:var(--space-2);block-size:5rem;inline-size:100%;padding-inline:var(--gutter);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%);margin-inline:auto;display:flex;position:relative}.brand{min-block-size:var(--target);font-size:var(--text-sm);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;flex-direction:column;justify-content:center;font-weight:600;line-height:1.5;display:flex}.brand-subtitle{font-size:var(--text-xs);letter-spacing:.2em;font-weight:400}.desktop-nav{display:none}.desktop-nav a{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;flex:none;justify-content:center;align-items:center;display:flex}:is(.desktop-nav,.menu-panel nav) a[aria-current]{text-underline-offset:.45em;text-decoration:underline;text-decoration-thickness:1px}.header-controls{align-items:center;gap:var(--space-3);display:flex}.language-switch{font-size:var(--text-sm);color:var(--muted);align-items:center;display:none}.language-switch>:not(.language-divider){min-block-size:var(--target);min-inline-size:var(--target);padding:var(--space-1);place-items:center;display:grid}.language-current{color:var(--ink);text-underline-offset:5px;text-decoration:underline}.language-toggle{inline-size:var(--target);block-size:var(--target);font-size:var(--text-sm);letter-spacing:.04em;place-items:center;display:grid}.menu-button{min-block-size:var(--target);align-items:center;gap:var(--space-2);font-size:var(--text-sm);padding:0;display:flex}.menu-lines{gap:5px;inline-size:17px;display:grid}.menu-lines i{border-block-start:1px solid}.menu-lines i:last-child{justify-self:end;inline-size:12px}.mobile-menu{background:var(--surface);block-size:100%;max-block-size:none;inline-size:100%;max-inline-size:none;color:var(--ink);border:0;margin:0;padding:0}.mobile-menu::backdrop{background:var(--backdrop)}.menu-panel{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));flex-direction:column;display:flex}.menu-top{font-size:var(--text-sm);letter-spacing:.08em;justify-content:space-between;align-items:center;display:flex}.menu-brand{text-transform:uppercase}.menu-top button{align-items:center;gap:var(--space-2);min-block-size:var(--target);font-size:var(--text-sm);letter-spacing:normal;display:flex}.menu-top .icon{block-size:1.5rem;inline-size:1.5rem}.menu-panel nav{padding-block:var(--space-16);flex-direction:column;flex:1;justify-content:center;display:flex}.menu-panel nav a{padding-block:var(--space-6);border-block-end:1px solid var(--line);font-family:var(--serif);font-size:var(--text-2xl);align-items:center;line-height:1;display:flex}.menu-fab{z-index:20;inline-size:calc(var(--target) + var(--space-1));block-size:calc(var(--target) + var(--space-1));border:1px solid var(--line-strong);background:oklch(from var(--surface-raised) l c h / 88%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink);border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;inset-block-end:max(var(--space-4), env(safe-area-inset-bottom));inset-inline-end:max(var(--space-4), env(safe-area-inset-right))}: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%;padding:var(--space-5) var(--gutter) max(var(--space-4), env(safe-area-inset-bottom));margin-inline:auto}.footer-name{gap:var(--space-1);font-size:var(--text-sm);display:grid}.footer-brand{letter-spacing:.09em;text-transform:uppercase;font-weight:600}.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{column-gap:var(--space-6);flex-wrap:wrap;margin-block-start:var(--space-3);display:flex}.footer-links a{align-items:center;gap:var(--space-2);min-block-size:var(--target);font-size:var(--text-sm);display:inline-flex}.site-footer .arrow{block-size:.875rem;inline-size:.875rem}.footer-bottom{justify-content:space-between;align-items:center;gap:var(--space-1) var(--space-5);border-block-start:1px solid var(--line);font-size:var(--text-sm);color:var(--muted);flex-wrap:wrap;margin-block-start:var(--space-4);padding-block-start:var(--space-3);display:flex}.footer-bottom>a{align-items:center;gap:var(--space-2);min-block-size:var(--target);min-inline-size:var(--target);flex:none;display:inline-flex}.site-footer--home{border-block-start:1px solid var(--line)}.site-footer--home .footer-bottom{border-block-start:0;margin-block-start:0;padding-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{border-block-end:1px solid var(--line);block-size:6.5rem}.language-switch{display:flex}.language-toggle,.menu-fab{display:none}.site-footer{column-gap:var(--space-6);grid-template-columns:1fr 1fr;padding-block-start:var(--space-6);display:grid}.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{gap:clamp(var(--space-4), 2vw, var(--space-8));margin-inline:auto clamp(var(--space-6), 3vw, var(--space-12));display:flex}.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{padding-block:var(--space-1)}.menu-panel nav a{min-block-size:var(--target);padding-block:var(--space-1);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:.105s}.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}}: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{align-items:baseline;gap:var(--space-4);display:flex}.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{block-size:auto;inline-size:100%}.about-statement{max-inline-size:34ch;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;grid-column:2/-1;margin-block-start:var(--space-12);padding-block-start:var(--space-6)}.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{gap:var(--space-6);margin-block-start:var(--space-4);display:grid}.contact-intro,.contact-actions{min-inline-size:0}.contact-actions{align-content:start;justify-items:stretch;gap:var(--space-2);padding:var(--space-6);border-inline-start:1px solid var(--accent);background:oklch(from var(--surface) l c h / 25%);display:grid}.contact-socials{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact-socials .text-link,.contact-cta{display:flex}.contact-cta{gap:var(--space-10);border-block-end-color:var(--accent)}.contact-address{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin-block-start:var(--space-2);display:flex}.contact-email{font-size:var(--text-base);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.copy-button{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);background:oklch(from var(--surface) l c h / 60%);text-decoration:none;display:inline-flex}.copy-button .icon{block-size:1rem;inline-size:1rem}.copy-status{min-block-size:1.5em;inline-size:100%;min-block-size:1lh;font-size:var(--text-sm);color:var(--muted);display:grid}.copy-status>span{grid-area:1/1}.copy-status:after{content:attr(data-reserve);visibility:hidden;pointer-events:none;grid-area:1/1}.contact-note{max-inline-size:34ch;font-size:var(--text-base);color:var(--muted);margin-block-start:var(--space-4)}.contact-note span{margin-block-start:var(--space-2);display:block}html:not(.js) .copy-button{display:none}}@layer responsive{@media (min-width:48em){.about-body{gap:var(--space-8);grid-template-columns:1fr 1fr;display:grid}.about-description{margin-block-start:0}}@media (min-width:64em){.about-body{gap:var(--space-12)}.contact{align-items:start;column-gap:clamp(var(--space-6), 5vw, var(--space-10));grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.contact-body{display:contents}.contact>.section-label{grid-area:1/1}.contact-intro{grid-area:2/1;margin-block-start:var(--space-4)}.contact-actions{align-content:space-between;align-self:stretch;row-gap:var(--space-1);padding-block:var(--space-2) var(--space-4);grid-area:1/2/span 2}}@media (min-width:80em){.about{grid-template-rows:auto auto 1fr auto;grid-template-columns:minmax(0,.95fr) minmax(0,1fr) minmax(0,1.05fr);column-gap:clamp(2rem,3.6vw,5rem);display:grid}.about-body,.about-intro{display:contents}.about .section-label{grid-area:1/1;align-self:start;margin-block-start:var(--space-2)}.about h2{grid-area:2/1;margin-block-start:var(--space-6);font-size:clamp(2.6rem,1.8rem + 3.2vw,5.6rem)}.about-portrait{grid-area:1/2/-1;max-inline-size:none;margin-block-start:0}.about-description{grid-area:1/3/-1;margin-block-start:0}.about-statement{max-inline-size:20ch;grid-area:4/1;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:.24s ease-out backwards copy-confirm}@keyframes copy-confirm{0%{opacity:.6;translate:0 .25rem}to{opacity:1;translate: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;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title bar""lead lead""wall wall";padding-block-end:var(--space-4);display:grid;position:relative;overflow:clip}.wall-intro{display:contents}.wall-intro h1{margin:var(--space-4) 0 0 var(--gutter);grid-area:title;align-self:end}.wall-bar{padding:var(--space-4) var(--gutter) 0 var(--space-3);grid-area:bar;justify-content:flex-end;align-items:flex-start;display:flex}.wall-viewport{grid-area:wall;min-inline-size:0}.wall-controls{gap:var(--space-2);display:flex}.wall-controls button{inline-size:var(--target);block-size:var(--target);border:1px solid var(--glass-border);background:var(--glass-surface);border-radius:50%;place-items:center;display:grid}.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{overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-y pinch-zoom;overflow-x:auto}.wall-track{inline-size:max-content;padding-inline-start:max(var(--gutter), var(--fade));display:flex;position:relative}.wall-set{align-items:flex-end;gap:var(--wall-gap);flex:none;padding-inline-end:var(--wall-gap);display:flex}.wall-item{flex:none}.wall-intro h1{font-family:var(--serif);letter-spacing:var(--tracking-display);font-size:clamp(2.6rem,1.5rem + 3.4vw,6.4rem);font-weight:400;line-height:.92}.wall-line,.wall-line>*{display:block}.wall-intro em{font-style:italic}.wall-lead{margin:var(--space-4) var(--gutter) var(--space-5);font-size:var(--text-lg);color:var(--ink);text-wrap:balance;grid-area:lead;line-height:1.45}.wall-figure{inline-size:calc(var(--wall-h) * var(--k) * var(--r));margin:0;position:relative}.wall-photo{block-size:calc(var(--wall-h) * var(--k));display:block;overflow:clip}.wall-photo picture{block-size:100%;display:block}.wall-photo img{object-fit:cover;block-size:100%;inline-size:100%;scale:calc(var(--zoom,1) * var(--lift,1));translate:var(--shift,0) 0}.wall-credits{justify-content:flex-end;gap:var(--space-2);max-inline-size:calc(100% - var(--space-6));font-size:var(--text-sm);flex-wrap:wrap;display:flex;position:absolute;inset-block-end:var(--space-3);inset-inline-end:var(--space-3)}.wall-credits:empty{display:none}.wall-credits a{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);overflow-wrap:anywhere;align-items:center;font-weight:500;display:inline-flex}}@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{padding-inline:var(--gutter) var(--space-2);grid-area:intro;align-self:end;max-inline-size:min(30rem,34vw);display:block}.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));-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:clip}html:not(.js) .wall-set+.wall-set,html:not(.js) .wall-controls{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{margin-block:-.14em;padding-block:.14em;overflow:clip}.wall-line>*{animation:title-unfold 1.05s var(--ease-out) backwards;animation-delay:.2s}.wall-line+.wall-line>*{animation-delay:.33s}.wall-lead{animation:1s ease-out .65s backwards wall-fade}.wall-credits{animation:.9s ease-out backwards wall-fade;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{gap:var(--space-4) var(--space-3);padding-block:var(--section-block) var(--space-4);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.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{gap:var(--space-3);max-inline-size:100%;margin-block-start:var(--space-2)}.ribbon{--ribbon-height:10.5rem;padding-block-end:var(--space-6)}.ribbon-bar{justify-content:flex-end;display:flex}.ribbon-pause{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;display:inline-flex;position:relative}.ribbon-pause .icon{block-size:1rem;inline-size:1rem}.ribbon-pause:has(:focus-visible){outline:2px solid var(--accent);outline-offset:5px}.ribbon-pause:has(:checked){color:var(--ink);text-underline-offset:.35em;text-decoration:underline}.motion-ribbon{overflow:clip}.ribbon-track{inline-size:max-content;display:flex}.ribbon-group{align-items:flex-start;gap:var(--space-4);padding-inline-end:var(--space-4);display:flex}.ribbon-group>a{inline-size:calc(var(--ribbon-height) * var(--r));display:block}.ribbon-frame{border:1px solid oklch(from var(--line) l c h / 35%);display:block;overflow:hidden}.ribbon-frame img{inline-size:100%;block-size:var(--ribbon-height);object-fit:cover;transition:scale var(--duration-photo) var(--ease-out)}.ribbon-label{font-size:var(--text-sm);color:var(--muted);margin-block-start:var(--space-2);line-height:1.35;display:block}.collection-showcase:has(.ribbon-pause :checked) .motion-ribbon{overscroll-behavior-x:contain;scrollbar-width:thin;overflow-x:auto}.scene-anchor{block-size:0;scroll-margin-block-start:0}.scene-gallery{position:relative}.collection-scene{--scene-min:40.625rem;block-size:max(100svh, var(--scene-min));background:var(--surface);border-block-start:1px solid var(--line);scroll-margin-block-start:0;position:sticky;inset-block-start:min(0px, 100svh - var(--scene-min));container:scene/size}.collection-scene:nth-of-type(2n){background:var(--surface-raised)}.collection-scene:has(.scene-link:focus-visible){z-index:1}.scene-link{row-gap:var(--space-6);block-size:100%;padding:var(--space-10) var(--gutter) var(--space-8);grid-template-rows:auto minmax(0,1fr);display:grid;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);margin-block-start:var(--space-3)}.scene-meta{align-items:center;gap:0 var(--space-6);flex-wrap:wrap;margin-block-start:var(--space-3);display:flex}.scene-cta{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;display:inline-flex}.scene-cta .arrow{inline-size:20px}.scene-photos{--gap:var(--space-5);--cap-left:55;--cap-right:56;--share-right:100;--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);position:relative;container-type:size}.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{block-size:auto;inline-size:100%}.scene-photo--left{inline-size:var(--w-left);inset-block-start:var(--slack);inset-inline-start:0}.scene-photo--right{inline-size:var(--w-right);inset-block-end:var(--slack);inset-inline-end:0}.scene-photo--left .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);rotate:-2deg}.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);rotate:1deg}}@layer responsive{@media (min-width:48em){.showcase-heading{column-gap:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.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{column-gap:clamp(var(--space-6), 4vw, var(--space-16));grid-template-columns:auto minmax(0,34ch) minmax(0,1fr)}}@container scene (min-aspect-ratio:23/20){.scene-link{column-gap:var(--space-8);padding-block:var(--space-8);grid-template:"left copy right"minmax(0,1fr)/auto minmax(0,1fr) auto}.scene-photos{--slack:0px;--w-left:min(27cqi, 68cqb * var(--r-left));--w-right:min(29cqi, 74cqb * var(--r-right));display:contents}.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{text-align:center;grid-area:copy;align-self: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]){row-gap:var(--space-6);grid-template:"left copy"minmax(0,1fr)".right"minmax(0,1fr)/minmax(0,1fr) minmax(0,1fr)}.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:translate(-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,0px), var(--scene-move-y,0px), 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;clip-path:inset(0);scale:1}}.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){.scene-link:hover .scene-cta,.ribbon-group>a:hover .ribbon-label,.ribbon-pause:hover{color:var(--accent)}}@media (prefers-reduced-motion:reduce){.ribbon-bar,.ribbon-group--copy{display:none}.motion-ribbon{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:thin;overflow-x:auto}.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{margin-block-start:var(--space-4)}.services-intro{max-inline-size:34ch;font-size:var(--text-base);color:var(--muted);margin-block-start:var(--space-4)}.price-list-download{gap:var(--space-3);color:var(--ink);text-align:start;margin-block-start:var(--space-2)}.price-list-download .icon{block-size:1.125rem;inline-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{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);cursor:pointer;list-style:none;display:grid}.service-summary::-webkit-details-marker{display:none}.service-details 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{font-size:var(--text-sm);color:var(--muted);white-space:nowrap;grid-area:2/1}.service-summary .icon{inline-size:var(--space-5);block-size:var(--space-5);grid-area:1/2/3/3}.service-group[open]>.service-summary .icon{rotate:180deg}.service-group[open]>.service-summary h3{color:var(--accent)}.service-body{gap:var(--space-5);padding-block:var(--space-2) var(--space-6);display:grid}.service-group:not([open])>.service-body,.service-details:not([open])>:not(summary){display:none}.service-photo{justify-content:flex-start;align-items:start;display:flex}.service-photo img{border:1px solid oklch(from var(--line) l c h / 35%);border-radius:var(--radius-sm);block-size:auto;max-block-size:10rem;inline-size:auto;max-inline-size:100%}.service-content{min-inline-size:0;container:service-packages/inline-size}.service-tiers{gap:var(--space-8);display:grid}.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-variant-numeric:lining-nums tabular-nums}.service-description{max-inline-size:var(--measure);font-size:var(--text-base);color:var(--muted);margin-block-end:var(--space-6)}.service-gift{max-inline-size:var(--measure);margin-block:calc(var(--space-2) - var(--space-6)) var(--space-6);font-size:var(--text-base);color:var(--ink)}.service-facts{margin:0}.service-facts>div{gap:var(--space-3);padding-block:var(--space-2);border-block-start:1px solid var(--line);grid-template-columns:5.5rem minmax(0,1fr);display:grid}.service-facts dt{font-size:var(--text-sm);color:var(--muted);font-weight:400}.service-facts dd{font-size:var(--text-base);margin:0}.service-details{margin-block-start:var(--space-3)}.service-details summary{align-items:center;gap:var(--space-3);min-block-size:var(--target);font-size:var(--text-sm);cursor:pointer;font-weight:500;list-style:none;display:inline-flex}.service-details summary .icon{block-size:1.125rem;inline-size:1.125rem}.service-details[open]>summary .icon{rotate:180deg}.service-includes{max-inline-size:var(--measure);margin-block:var(--space-3) 0;font-size:var(--text-base);color:var(--muted);padding-inline-start:var(--space-5)}.service-includes li+li{margin-block-start:var(--space-2)}.service-delivery{font-size:var(--text-base);margin-block-start:var(--space-3)}.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);font-size:var(--text-base);color:var(--muted);margin-block-start:var(--space-5)}.service-extras p+p{margin-block-start:var(--space-2)}.service-terms{color:var(--muted);margin-block-start:var(--space-6)}.service-terms>summary{font:500 var(--text-base)/1.4 var(--sans);color:var(--ink)}.service-terms-content{gap:var(--space-5);margin-block-start:var(--space-3);display:grid}.service-terms-content>p{font-size:var(--text-base);color:var(--ink);margin:0}.service-terms ul{column-gap:var(--space-8);margin:0;padding:0;list-style:none;display:grid}.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{justify-content:space-between;align-items:end;gap:var(--space-12);display:flex}.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{font-size:var(--text-base);grid-area:auto}.service-summary .icon{grid-area:auto}.service-body{gap:var(--space-6);grid-template-columns:minmax(0,2fr) minmax(0,10fr)}.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{column-gap:clamp(var(--space-8), 4cqi, var(--space-16));padding:var(--space-6);grid-template:"name facts""price facts""description facts""gift facts"1fr"actions details"/minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}.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{margin-block:0 var(--space-4);grid-area:gift}.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-summary:hover,.service-details 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}}.service-summary,.service-details summary{transition:color var(--duration-ui) ease}.service-summary .icon,.service-details 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;font-size:var(--text-base);color:var(--muted);margin-block-start:var(--space-4)}.awards-body{gap:var(--space-6);display:grid}.awarded-photo{max-inline-size:24rem}.awarded-photo img{border:1px solid oklch(from var(--line) l c h / 40%);block-size:auto;inline-size:100%;box-shadow:0 16px 40px -10px oklch(from var(--surface-sunken) l c h / 70%)}.awarded-photo figcaption{gap:var(--space-1);border-inline-start:1px solid var(--accent);font-size:var(--text-sm);color:var(--muted);margin-block-start:var(--space-4);padding-inline-start:var(--space-3);display:grid}.awards-records{min-inline-size:0}.award-meta{gap:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--muted);flex-wrap:wrap;display:flex}.award-detail{font-size:var(--text-base);color:var(--muted)}.award-links{gap:var(--space-2);flex-wrap:wrap;display:flex}.award-icon{inline-size:var(--target);block-size:var(--target);border:1px solid var(--line-strong);color:var(--ink);border-radius:50%;place-items:center;display:grid}.award-icon .icon{block-size:1.4rem;inline-size:1.4rem}.awards-highlights{background:var(--line);border:1px solid var(--line);gap:1px;margin:0;padding:0;list-style:none;display:grid}.award-card{align-content:start;gap:var(--space-2);padding:var(--space-6) var(--space-5);background:var(--surface);display:grid}.award-card h3{gap:var(--space-2);margin:var(--space-2) 0 0;display:grid}.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{gap:var(--space-1) var(--space-4);padding-block:var(--space-3);border-block-start:1px solid var(--line);align-items:baseline;display:grid}.award-year{font-size:var(--text-sm);color:var(--muted)}.award-title{font:500 clamp(.95rem, .85rem + .2vw, 1.1rem)/1.35 var(--sans);letter-spacing:-.01em;margin:0}.award-works{gap:var(--space-2);vertical-align:middle;margin-inline-start:var(--space-3);display:inline-flex}.award-works a{display:block}.award-works img{object-fit:cover;block-size:2rem;inline-size:1.6rem}}@layer responsive{@media (min-width:48em){.awards-heading{align-items:end;gap:var(--space-4) var(--space-8);flex-wrap:wrap;display:flex}.awards-heading>p{max-inline-size:34ch;margin-block-start:0}.awards-body{gap:var(--space-8);grid-template-columns:minmax(0,min(28%,26rem)) minmax(0,1fr);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-area:1/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{align-items:center;column-gap:var(--space-6);padding-block:var(--space-1);grid-template-columns:4.5rem minmax(0,20rem) minmax(0,1fr) auto}.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%)}.awards-list li:hover .award-title,.award-card:hover .award-result{color:var(--accent)}.award-icon:hover{color:var(--accent);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{.collection-page,.archive-page{padding-block-start:var(--space-2)}.collection-back{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--muted);display:flex}.collection-back a{align-items:center;gap:var(--space-2);min-block-size:var(--target);display:inline-flex}.collection-back .arrow{block-size:1rem;inline-size:1rem}.collection-after{padding-block-start:var(--space-4)}.collection-story,.collection-sessions{gap:var(--space-4);padding-block:var(--space-6);border-block-start:1px solid var(--line);display:grid}: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{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-4);max-inline-size:var(--measure);flex-wrap:wrap;display:flex}.collection-sessions h3,.session-price,.session-name{font:500 var(--text-lg)/1.4 var(--sans);font-variant-numeric:lining-nums tabular-nums}.session-list{gap:var(--space-4);margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid}.session-list li{align-content:start;gap:var(--space-1);border-block-start:1px solid var(--line);padding-block-start:var(--space-3);display:grid}.session-name{justify-content:space-between;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.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{align-items:center;gap:var(--space-1) var(--space-8);flex-wrap:wrap;margin-block-start:var(--space-4);display:flex}.next-project-heading{font-family:var(--sans);font-size:var(--text-base);line-height:var(--leading-body);letter-spacing:normal}.next-project{padding-block:var(--space-10) var(--section-block);border-block-start:1px solid var(--line);margin-block-start:var(--space-8);display:block}.next-project-label{font-size:var(--text-sm);color:var(--muted);display:block}.next-project-title{justify-content:space-between;align-items:center;gap:var(--space-5);font-family:var(--serif);font-size:var(--text-2xl);line-height:var(--leading-title);margin-block-start:var(--space-5);display:flex}.next-project-title>.arrow{block-size:2.375rem;inline-size:2.375rem}.gallery-browser{--frame-height:clamp(20rem, calc(100svh - 24.375rem), 45rem);--edge:var(--gutter);background:var(--surface);color:var(--ink);padding-block-end:var(--space-6);position:relative}.gallery-toolbar{align-items:stretch;gap:var(--space-4);padding:var(--space-2) var(--gutter) var(--space-4);flex-direction:column;display:flex}.gallery-toolbar,.archive-filters,.filmstrip-footer,.overview{inline-size:100%;margin-inline:auto}.gallery-heading{font-size:var(--text-xl);line-height:1.05}.gallery-controls{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.gallery-modes{max-inline-size:100%;padding:var(--space-1);border:1px solid var(--line-strong);border-radius:var(--radius-pill);grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;display:grid}.gallery-modes button{justify-content:center;align-items: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);text-align:start;color:var(--muted);line-height:1.4;display:flex}.gallery-modes button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.mode-icon{flex-shrink:0;block-size:.75rem;inline-size:.75rem;display:inline-block}.mode-icon--film{border:1px solid;border-inline-width:3px}.mode-icon--grid{background-color:#0000;background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-position:0 0,100% 0,0 100%,100% 100%;background-repeat:no-repeat;background-size:42% 42%,42% 42%,42% 42%,42% 42%;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}.gallery-count{font-size:var(--text-sm);white-space:nowrap;color:var(--muted)}.gallery-count strong{font-size:var(--text-lg);color:var(--ink);font-weight:400}.gallery-skip:not(:focus){clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.gallery-skip:focus{z-index:6;padding:var(--space-3) var(--space-4);background:var(--ink);color:var(--surface);font-size:var(--text-sm);margin-block-start:var(--space-3);font-weight:500;position:absolute;inset-inline-start:var(--edge)}.gallery-end{display:block}.gallery-end:focus{outline:none}.photo-link{cursor:zoom-in;display:block;position:relative;overflow:hidden}.photo-link img{block-size:auto;inline-size:100%;transition:scale var(--duration-photo) var(--ease-out)}.photo-link:focus-visible{outline:none}.photo-link:focus-visible:after{content:"";border:2px solid var(--surface-sunken);box-shadow:inset 0 0 0 2px var(--accent), inset 0 0 0 4px var(--surface-sunken);position:absolute;inset:0}.photo-open-label{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);background:var(--ink);color:var(--surface);opacity:0;line-height:1.4;display:flex;position:absolute;inset-block-end:var(--space-3);inset-inline-end:var(--space-3)}.photo-open-label:before{content:"";background:currentColor;block-size:1rem;inline-size:1rem;-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") 50%/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") 50%/contain no-repeat}.filmstrip{align-items:end;gap:var(--space-5);padding:var(--space-2) var(--edge) var(--space-4);scroll-padding-inline:var(--edge);scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;display:flex;position:relative;overflow:auto hidden}.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{inline-size:min(calc(var(--frame-height) * var(--photo-ratio)), 82vw);content-visibility:auto;contain-intrinsic-block-size:auto var(--frame-height);flex:none}.film-photo{block-size:var(--frame-height)}.film-photo img{object-fit:contain;object-position:bottom;block-size:100%}.frame-caption{font-size:var(--text-sm);color:var(--muted);margin-block-start:var(--space-3);line-height:1.4}.filmstrip-footer{justify-content:flex-end;align-items:center;gap:var(--space-2) var(--space-5);padding:var(--space-1) var(--gutter) 0;flex-wrap:wrap;display:flex}.gallery-arrows{gap:var(--space-2);display:flex}.gallery-arrows button{inline-size:var(--target);block-size:var(--target);border:1px solid var(--line-strong);border-radius:50%;place-items:center;display:grid}.gallery-arrows .arrow,:is(.viewer-previous,.viewer-next) .arrow{block-size:1.25rem;inline-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{justify-content:space-between;align-items:baseline;gap:0 var(--space-3);padding-block:var(--space-3) var(--space-4);border-block-start:1px solid var(--line);flex-wrap:wrap;display:flex}.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));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);display:grid}@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{align-items:start;gap:var(--space-6) var(--space-3);content-visibility:visible;grid-auto-rows:auto}.photo-tile{content-visibility:visible;grid-row-end:auto}}.archive-filters{z-index:5;gap:var(--space-2);padding:var(--space-2) var(--gutter) var(--space-3);scroll-padding-inline:var(--gutter);scrollbar-width:thin;scrollbar-color:var(--line) transparent;background:var(--surface);margin-block-end:var(--space-1);display:flex;position:sticky;inset-block-start:0;overflow-x:auto}.archive-filters button{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;flex-shrink:0;display:flex}.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{background:var(--surface-sunken);block-size:100svh;max-block-size:none;inline-size:100%;max-inline-size:none;color:var(--ink);border:0;margin:0;padding:0;position:fixed;inset:0}.photo-viewer::backdrop{background:var(--surface-sunken)}.viewer-layout{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%;display:grid}.viewer-top{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);display:flex}.viewer-title{justify-content:space-between;align-items:baseline;gap:0 var(--space-3);min-inline-size:0;flex-wrap:wrap;flex:1;margin-inline-end:var(--space-2);line-height:1.4;display:flex}.viewer-title>.numerals{color:var(--muted);white-space:nowrap;margin-inline-start:auto}.viewer-top>button{inline-size:var(--target);block-size:var(--target);flex-shrink:0;place-items:center;display:grid}.viewer-top .icon{block-size:1.5rem;inline-size:1.5rem}.viewer-stage{min-block-size:0;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;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.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{block-size:100%;inline-size:100%;position:relative}.viewer-photo:not([data-shown]){opacity:0}.viewer-zoom{position:absolute;inset:0}.viewer-copy{background:50%/contain no-repeat;position:absolute;inset:0}.viewer-photo img{object-fit:contain;block-size:100%;inline-size:100%;position:absolute;inset:0}.viewer-photo:not([data-state=ready]) img{opacity:0}.viewer-loading{z-index:1;align-items:center;gap:var(--space-2);inline-size:fit-content;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);color:var(--muted);pointer-events:none;margin-inline:auto;line-height:1.4;display:flex;position:absolute;inset-block-end:var(--space-4);inset-inline:0}.viewer-spinner{border:2px solid var(--line-strong);border-block-start-color:var(--accent);border-radius:50%;flex-shrink:0;block-size:1rem;inline-size:1rem}.viewer-error{z-index:1;justify-items:center;gap:var(--space-4);block-size:fit-content;inline-size:fit-content;max-inline-size:min(24rem,100% - 9rem);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);margin:auto;line-height:1.5;display:grid;position:absolute;inset:0}.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-previous,.viewer-next{z-index:1;inline-size:var(--target);block-size:var(--target);border:1px solid var(--line-strong);background:oklch(from var(--surface-sunken) l c h / 60%);border-radius:50%;place-items:center;display:grid;position:absolute;inset-block-start:50%;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{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-3) max(var(--space-3), env(safe-area-inset-bottom));display:flex}.viewer-thumbnails button{opacity:.5;border:1px solid #0000;block-size:3.5rem;inline-size:3rem;padding:3px}.viewer-thumbnails button[aria-pressed=true]{border-color:var(--ink);opacity:1}.viewer-thumbnails img{object-fit:cover;block-size:100%;inline-size:100%}}@layer responsive{@media (min-width:24.375em){.gallery-modes button{padding-inline:var(--space-4);gap:var(--space-2)}}@media (min-width:48em){.collection-story,.collection-sessions{gap:var(--space-10);grid-template-columns:1fr 2fr}.session-list[data-tiers="2"]{column-gap:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr))}.session-list[data-tiers="3"]{column-gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr))}.next-project{margin-block-start:var(--space-8);padding-block-start:var(--space-8)}.next-project-title>.arrow{block-size:3.75rem;inline-size:3.75rem}.gallery-browser{--frame-height:clamp(21.25rem, calc(100svh - 21.875rem), 48.75rem)}.gallery-toolbar{justify-content:space-between;align-items:center;gap:var(--space-6);padding-block:var(--space-2) var(--space-4);flex-direction:row}.gallery-controls{gap:var(--space-7);flex-wrap:nowrap}.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{gap:var(--space-9);flex-wrap:nowrap}.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{block-size:4.375rem;inline-size:3.625rem}}@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{justify-content:space-between;align-items:center;gap:var(--space-4);flex-direction:row}.gallery-heading{font-size:var(--text-lg)}.gallery-controls{gap:var(--space-4);flex-wrap:nowrap}.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-zoom-toggle,.viewer-close{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{padding:0;padding-inline:var(--space-4);writing-mode:vertical-rl;flex-wrap:nowrap;flex:none;grid-area:info;justify-self:center;margin:0;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{gap:var(--space-1);padding:var(--space-2) 0 max(var(--space-2), env(safe-area-inset-bottom));flex-direction:column;grid-area:thumbs}.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){.gallery-modes button[aria-pressed=true],.archive-filters button[aria-pressed=true]{forced-color-adjust:none;color:selecteditemtext;background:selecteditem;border-color:selecteditem}.archive-filters button[aria-pressed=true]>span{color:selecteditemtext}.mode-icon--grid{forced-color-adjust:none}.photo-link:focus-visible{outline-offset:-5px;outline:3px solid highlight}.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:translate(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:.9s linear infinite viewer-spin}.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{transition:opacity var(--duration-ui) ease, translate var(--duration-ui) ease;translate:0 .25rem}: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}.photo-link:focus-visible .photo-open-label{translate:0}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.tile-photo:hover img,.photo-link:hover img{scale:1.035}}@media (hover:hover) and (pointer:fine){.photo-link:hover .photo-open-label{opacity:1;translate:0}:is(.collection-back a,.gallery-modes button:not([aria-pressed=true],[aria-disabled=true]),.viewer-top button):hover,.next-project:hover .next-project-title{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{justify-content:flex-end;align-items:center;gap:0 var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.model-credits>span{color:var(--muted)}.model-credits a{min-block-size:var(--target);overflow-wrap:anywhere;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:.3em;align-items:center;display:inline-flex}.viewer-bottom{flex-direction:column;min-block-size:0;display:flex}.viewer-credits{max-block-size:33svh;padding-inline:max(var(--space-4), env(safe-area-inset-left)) max(var(--space-4), env(safe-area-inset-right));overflow-y:auto}.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}}@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]{padding-inline:var(--space-5);grid-template:"thumbs credits"/minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.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]{grid-area:thumbs;justify-content:center;padding-inline:0;display:flex;overflow-y:auto}.viewer-bottom .viewer-thumbnails,.viewer-bottom[data-credits=true] .viewer-thumbnails{grid-area:auto}.viewer-credits{padding-inline:var(--space-1);max-inline-size:none;font-size:var(--text-sm);justify-content:center;position:static}.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){isolation:isolate;position:relative}.collection-scene{isolation:isolate}:is(.about,.awards-section,.services-section,.contact,.collection-scene):before{content:"";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") 0 0/10rem 10rem;position:absolute;inset:0}.reading-progress{z-index:30;pointer-events:none;background:var(--accent);transform-origin:0;block-size:2px;position:fixed;inset:0 0 auto;transform:scaleX(0)}html:has(dialog[open]) .reading-progress{visibility:hidden}.title-word{vertical-align:bottom;max-inline-size:100%;display:inline-block}.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}}.reveal-entered:has(.motion-text){animation:none}:is(.reveal-entered,.scene-in-view) .title-word{margin-block:-.15em;padding-block:.15em;overflow:clip}: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}}.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}}}
