@font-face{font-family:Roboto;src:url('assets/roboto.woff2') format('woff2');font-display:swap}@font-face{font-family:Forum;src:url('assets/forum.woff2') format('woff2');font-display:swap}
*{box-sizing:border-box}html{color:#222;background:#fff}body{margin:0;font:400 16px/1.6 Roboto,Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:2px solid #555;outline-offset:5px}header{text-align:center;padding:50px 24px 0}.brand{display:inline-block}.brand img{display:block;width:352px;max-width:80vw;height:auto}nav{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;margin:34px 0 46px}nav a{font-size:14px;line-height:24px;text-transform:uppercase}nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}h1,h2{font-family:Forum,Georgia,serif;font-weight:400;line-height:1.12;margin:0}h1{font-size:36px}.gallery-title{text-align:center;margin:0 24px 52px}.portfolio-intro{text-align:center;margin:65px 24px 48px}.portfolio-intro h1{margin:0 auto 45px}.portfolio-intro h1 img{width:352px;height:auto;max-width:85vw}.portfolio-intro p{margin:10px 0;font-size:14px}.gallery{margin:0 50px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;align-items:start}.gallery.layout-ready{position:relative;display:block}.photo{display:block;line-height:0;overflow:hidden;cursor:zoom-in}.layout-ready .photo{position:absolute}.photo img{display:block;width:100%;height:auto}.about{max-width:980px;margin:55px auto;padding:0 30px;font-size:18px;text-align:center}.about a{text-decoration:underline}.contact{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:0 0 12px}.portrait{width:100%;height:auto;display:block}.contact h1{margin-bottom:32px}.contact p{margin:20px 0}.email-button{display:inline-flex;min-height:56px;align-items:center;justify-content:center;background:#202020;color:white;padding:15px 36px;border-radius:30px;font-size:14px;letter-spacing:1px;margin-top:14px}.email-address{overflow-wrap:anywhere}footer{text-align:center;font-size:13px;line-height:1.6;padding:44px 20px 35px}footer p{margin:0}footer a{text-decoration:underline;color:#666}.lightbox{border:0;padding:0;width:100vw;height:100dvh;max-width:none;max-height:none;background:rgba(15,15,15,.98);color:#fff;overflow:hidden}.lightbox::backdrop{background:#111}.lightbox:not([open]){display:none}.lightbox[open]{display:flex;align-items:center;justify-content:center}.lightbox img{width:auto;height:auto;max-width:calc(100% - 120px);max-height:calc(100dvh - 90px);object-fit:contain}.lightbox button{position:absolute;border:0;background:transparent;color:white;font:300 36px/1 Arial;cursor:pointer;min-height:52px;min-width:52px;border-radius:4px}.lightbox button:hover{background:#ffffff20}.close{right:12px;top:12px}.previous{left:12px;top:calc(50% - 26px)}.next{right:12px;top:calc(50% - 26px)}.counter{position:absolute;bottom:15px;left:0;right:0;text-align:center;font-size:14px}.skip{position:absolute;left:10px;top:-100px;background:white;padding:8px}.skip:focus{top:10px;z-index:100}
@media(min-width:1800px){.gallery{max-width:1800px;margin-left:auto;margin-right:auto}}
@media(max-width:900px){.gallery{margin:0 24px}.contact{padding:0 30px;gap:30px}nav{gap:24px}.contact h1{font-size:30px}}
@media(max-width:600px){header{padding:30px 18px 0}.brand img{width:300px}nav{gap:10px 20px;margin:25px 0 32px}nav a{font-size:14px}.portfolio-intro{margin:38px 20px 35px}.portfolio-intro h1{margin-bottom:24px}.portfolio-intro h1 img{width:300px}.gallery{margin:0 12px;grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-title{font-size:30px;margin-bottom:32px}.contact{grid-template-columns:1fr;padding:0 24px;gap:30px}.contact h1{font-size:32px}.about{font-size:16px;margin:36px auto;padding:0 24px}footer{font-size:12px;padding-top:35px}.lightbox img{max-width:100%;max-height:calc(100dvh - 150px)}.previous,.next{top:auto!important;bottom:7px}.counter{bottom:24px;pointer-events:none}}
@media(prefers-reduced-motion:no-preference){.email-button{transition:background .15s}.email-button:hover{background:#444}}

.portfolio-intro{margin:36px 24px 48px}.portfolio-intro p.intro-copy{max-width:760px;margin:0 auto 20px;font-size:14px;line-height:24px;color:#777}.portfolio-intro p:last-child{margin-bottom:0}@media(max-width:600px){.portfolio-intro{margin:28px 24px 34px}.portfolio-intro p.intro-copy{font-size:14px}.portfolio-intro .intro-copy br{display:none}}
