:root{--paper:#f8f6f3;--white:#fff;--ink:#282422;--muted:#706761;--rose:#885d52;--line:#e0d8d2;--blush:#f0e6e0;--serif:'Bodoni MT',Didot,'Times New Roman',serif;--sans:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:2rem}
*{box-sizing:border-box}body{margin:0}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--rose);outline-offset:5px}img{display:block;max-width:100%}svg{width:20px;height:20px;stroke-width:1.4;flex-shrink:0}.skip-link{position:fixed;left:1rem;top:-100px;padding:1rem;background:var(--ink);color:white;z-index:100}.skip-link:focus{top:1rem}
.site-header{border-bottom:1px solid var(--line)}.header-inner{max-width:1344px;margin:0 auto;min-height:100px;padding:20px 42px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{font-size:19px;font-weight:500;letter-spacing:.22em;line-height:1.4;white-space:nowrap}.wordmark span{display:block;font-size:12px;font-weight:400;letter-spacing:.23em;margin-top:5px}.header-edition{font-size:12px;letter-spacing:.22em;color:var(--muted)}.header-link{display:flex;gap:16px;align-items:center;font-size:14px}.header-link:hover{color:var(--rose)}
.page-shell{max-width:1344px;margin:auto;padding:0 42px}.profile{display:grid;grid-template-columns:130px 1fr auto;gap:34px;align-items:center;padding:44px 0 42px}.profile-image{width:130px;height:130px;border-radius:50%;padding:5px;border:1px solid #b5998b;overflow:hidden}.profile-image img{width:100%;height:100%;object-fit:cover;object-position:43% 34%;border-radius:50%}.eyebrow{font-size:12px;letter-spacing:.19em;color:var(--rose);line-height:1.5;margin:0 0 10px}.profile h1{font-family:var(--serif);font-weight:400;font-size:clamp(36px,3.5vw,52px);letter-spacing:-.04em;line-height:1.12;margin:0 0 12px}.profile h1 em{font-weight:400;color:var(--rose)}.profile-description{font-size:16px;line-height:1.55;margin:0 0 13px;color:#4e4743}.profile-details{display:flex;gap:13px;align-items:center;color:var(--muted);font-size:13px;line-height:1.5}.detail-separator{color:#b89b8f}.profile-contact{display:flex;flex-direction:column;align-items:center;gap:13px;margin-left:18px}.contact-button{background:var(--ink);color:#fff;min-height:48px;padding:14px 20px;display:flex;justify-content:center;align-items:center;gap:22px;font-size:14px;transition:background .2s}.contact-button:hover{background:#694b42}.contact-caption{font-size:12px;letter-spacing:.17em;color:var(--muted)}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:21px 0}.section-title{display:flex;align-items:center;gap:12px}.section-title svg{width:15px;height:15px;stroke-width:1.1}.section-title h2{font-weight:400;font-size:14px;letter-spacing:.13em;text-transform:uppercase;margin:0}.collection-count{font-size:12px;color:var(--muted);letter-spacing:.15em}.preview-note{font-size:12px;color:var(--muted);margin:15px 0;display:flex;gap:9px;line-height:1.5}.preview-note span{color:var(--rose)}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 15px}.portfolio-card{min-width:0}.card-button{display:block;border:0;text-align:left;padding:0;background:transparent;width:100%;color:inherit}.card-image{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:var(--blush)}.card-image>img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.3,1)}.album-symbol{position:absolute;top:15px;right:15px;color:white;filter:drop-shadow(0 1px 3px #0009);transition:opacity .2s}.album-symbol svg{width:22px;height:22px;stroke-width:1.5}.card-overlay{position:absolute;inset:0;background:linear-gradient(transparent 55%,#221a174d);opacity:0;transition:opacity .25s;display:flex;align-items:flex-end;justify-content:space-between;padding:24px;color:white}.card-overlay span{font-size:14px}.card-button:hover .card-image>img{transform:scale(1.035)}.card-button:hover .card-overlay,.card-button:focus-visible .card-overlay{opacity:1}.card-button:hover .album-symbol{opacity:0}.card-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 1px 0}.card-title{font-family:var(--serif);font-size:21px;font-weight:400;letter-spacing:-.015em}.card-count{color:var(--muted);font-size:12px;white-space:nowrap}.collection-end{display:flex;align-items:center;justify-content:center;gap:28px;padding:59px 0 64px}.collection-end span{height:1px;background:var(--line);width:72px}.collection-end p{font-family:var(--serif);font-size:24px;font-style:italic;margin:0;color:var(--rose);text-align:center}
.site-footer{max-width:1260px;margin:0 auto;padding:25px 0 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font-size:12px}.site-footer>span{letter-spacing:.17em}.site-footer p{margin:0;font-size:13px}.site-footer a{font-size:13px}.site-footer a:hover{color:var(--rose)}
dialog{color:var(--ink);background:var(--paper);border:0;padding:0;width:min(1100px,calc(100% - 48px));max-width:1100px;max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 24px 100px #0006}dialog::backdrop{background:#211a17cf;backdrop-filter:blur(5px)}.gallery-top{height:65px;padding:10px 16px 10px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.gallery-brand{font-size:12px;letter-spacing:.19em}.icon-button{border:0;background:transparent;display:grid;place-items:center;width:44px;height:44px;color:var(--ink)}.icon-button:hover{background:var(--blush)}.gallery-body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr)}.gallery-photo-area{position:relative;min-height:360px;height:min(740px,calc(100dvh - 115px));background:#e9e4df;display:flex;align-items:center;justify-content:center;touch-action:pan-y}.gallery-photo-area>img{width:100%;height:100%;object-fit:contain}.photo-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid #ffffff77;border-radius:50%;background:#ffffffed;color:#282422;display:grid;place-items:center}.photo-arrow:hover{background:white}.previous-photo{left:15px}.next-photo{right:15px}.image-counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);border-radius:20px;padding:7px 15px;background:#282422bb;color:white;font-size:12px;letter-spacing:.1em}.gallery-information{padding:42px 34px;display:flex;flex-direction:column;gap:35px}.gallery-information h2{font-family:var(--serif);font-size:48px;font-weight:400;letter-spacing:-.035em;margin:8px 0 18px}.gallery-information #gallery-description{white-space:pre-line;font-size:16px;line-height:1.65;color:#514842;margin:0}.gallery-preview-note{font-size:12px;line-height:1.6;color:var(--muted);margin:18px 0 0}.thumbnail-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 13px}.gallery-thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.thumbnail-button{padding:2px;border:1px solid transparent;background:transparent;opacity:.55;min-height:44px}.thumbnail-button[aria-current="true"]{border-color:var(--rose);opacity:1}.thumbnail-button:hover{opacity:1}.thumbnail-button img{aspect-ratio:3/4;object-fit:cover;object-position:50% 39%;width:100%}.gallery-bottom{border-top:1px solid var(--line);padding-top:25px;margin-top:auto}.gallery-bottom p{font-family:var(--serif);font-size:23px;font-style:italic;color:var(--rose);margin:0 0 16px}.gallery-bottom span{font-size:12px;letter-spacing:.1em;line-height:1.9;color:var(--muted)}
@media(min-width:1550px){.header-inner,.page-shell{max-width:1470px}.site-footer{max-width:1386px}}
@media(max-width:1050px){.profile{grid-template-columns:110px 1fr;gap:26px}.profile-image{width:110px;height:110px}.profile-contact{grid-column:2;flex-direction:row;margin:0;align-items:center}.contact-button{min-height:44px;padding:12px 18px}.contact-caption{display:none}.profile{padding:34px 0}.site-footer{margin:0 42px}.header-edition{display:none}.gallery-information{padding:30px 25px}}
@media(max-width:650px){.header-inner{padding:21px 20px;min-height:84px;gap:12px}.wordmark{font-size:16px;letter-spacing:.17em}.wordmark span{font-size:12px;letter-spacing:.04em}.header-link{font-size:12px;gap:7px}.header-link svg{width:16px;height:16px}.page-shell{padding:0 14px}.profile{grid-template-columns:76px minmax(0,1fr);gap:16px;padding:29px 6px 25px}.profile-image{width:76px;height:76px;padding:3px;align-self:start;margin-top:3px}.eyebrow{font-size:12px;letter-spacing:.13em;margin-bottom:8px}.profile h1{font-size:34px;margin-bottom:10px;line-height:1.08}.profile-description{font-size:16px;line-height:1.55;margin-bottom:11px}.profile-details{font-size:12px;gap:3px;flex-wrap:wrap;line-height:1.65}.detail-separator{padding:0 4px}.profile-contact{grid-column:1/-1;display:flex;margin-top:3px}.contact-button{width:100%;font-size:14px;min-height:46px}.section-heading{padding:18px 6px}.section-title{gap:9px}.section-title h2{font-size:12px;letter-spacing:.12em}.collection-count{font-size:12px;letter-spacing:.1em}.preview-note{font-size:12px;margin:12px 6px}.portfolio-grid{gap:18px 5px}.card-image{aspect-ratio:3/4}.album-symbol{top:7px;right:7px}.album-symbol svg{width:16px;height:16px}.card-caption{padding:8px 2px 0;display:block}.card-title{font-size:18px;display:block}.card-count{font-size:12px;display:block;margin-top:3px}.card-overlay{display:none}.collection-end{gap:16px;padding:38px 5px 42px}.collection-end span{width:25px}.collection-end p{font-size:23px}.site-footer{margin:0 20px;padding:24px 0;flex-wrap:wrap;gap:13px}.site-footer>span{font-size:12px}.site-footer p{order:3;width:100%;font-size:12px}.site-footer a{font-size:12px}dialog{width:100%;height:100dvh;max-width:100%;max-height:100dvh;margin:0}.gallery-top{height:60px;padding:8px 8px 8px 20px;position:sticky;top:0;z-index:3;background:var(--paper)}.gallery-body{display:flex;flex-direction:column}.gallery-photo-area{min-height:0;height:58dvh;flex-shrink:0}.gallery-information{padding:23px 24px 28px;gap:23px}.gallery-information h2{font-size:36px;margin:6px 0 10px}.gallery-information .eyebrow{font-size:12px}.gallery-preview-note{margin-top:10px}.gallery-thumbnails{max-width:330px}.gallery-bottom{padding-top:19px}.gallery-bottom span{font-size:12px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(forced-colors:active){.card-image,.profile-image,.contact-button,.thumbnail-button{border:1px solid CanvasText}.thumbnail-button[aria-current="true"]{outline:2px solid Highlight}}

@media(max-width:380px){.header-link{display:none}.wordmark{font-size:17px}.profile{grid-template-columns:64px minmax(0,1fr);gap:14px}.profile-image{width:64px;height:64px}.profile h1{font-size:31px}}
