@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/cormorant-garamond-latin.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2")}:root{--bg: #fbfaf8;--fg: #161616;--muted: #8a8a8a;--accent: #161616;--gap: 1.25rem;--maxw: 1400px;--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.55}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 clamp(1.25rem,4vw,3.5rem)}.site-header{padding:clamp(3rem,8vw,6rem) 0 clamp(2rem,5vw,3.5rem);text-align:center}.site-header h1{font-family:var(--font-display);font-weight:500;font-size:clamp(2.5rem,7vw,4.5rem);letter-spacing:.01em;line-height:1.05}.site-header p{margin-top:.75rem;color:var(--muted);font-size:.8rem;letter-spacing:.28em;text-transform:uppercase}.gallery{column-count:2;column-gap:.6rem;padding-bottom:clamp(3rem,8vw,6rem)}@media(min-width:640px){.gallery{column-count:2;column-gap:var(--gap)}}@media(min-width:1000px){.gallery{column-count:3}}@media(min-width:1500px){.gallery{column-count:4}}.gallery-item{break-inside:avoid;margin-bottom:.6rem;cursor:zoom-in;overflow:hidden}@media(min-width:640px){.gallery-item{margin-bottom:var(--gap)}}.gallery-item img{width:100%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.gallery-item:hover img{transform:scale(1.03)}.gallery-empty{color:var(--muted);text-align:center;padding:4rem 0;font-size:.95rem}.gallery-empty code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#0000000d;padding:.15em .4em;border-radius:4px}.contact{border-top:1px solid rgba(0,0,0,.08);padding:clamp(3rem,8vw,5rem) 0 clamp(4rem,10vw,7rem);text-align:center}.contact h2{font-family:var(--font-display);font-weight:500;font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:1.5rem}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2.25rem;font-size:.85rem;letter-spacing:.18em;text-transform:uppercase}.contact-links a{position:relative;padding-bottom:2px}.contact-links a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.contact-links a:hover:after{transform:scaleX(1)}.lightbox{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:#0a0a0af0;opacity:0;transition:opacity .25s ease}.lightbox.is-open{display:flex;opacity:1}.lightbox img{max-width:92vw;max-height:88vh;object-fit:contain;user-select:none}.lightbox-btn{position:absolute;background:none;border:none;color:#fff;cursor:pointer;opacity:.7;transition:opacity .2s ease;-webkit-tap-highlight-color:transparent}.lightbox-btn:hover{opacity:1}.lightbox-close{top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem);font-size:2rem;line-height:1}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);font-size:2.5rem;line-height:1;padding:1rem}.lightbox-prev{left:clamp(.5rem,2vw,1.5rem)}.lightbox-next{right:clamp(.5rem,2vw,1.5rem)}@media(max-width:640px){.lightbox-prev,.lightbox-next{font-size:2rem}}.site-footer{margin-top:clamp(3rem,8vw,6rem);padding:1.5rem 0 2rem;border-top:1px solid rgba(0,0,0,.08)}.site-footer .container{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.85rem;color:var(--muted)}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--accent)}.privacy-page{max-width:46rem;padding-top:clamp(2.5rem,6vw,4rem)}.privacy-page h1{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:500;margin-bottom:.35rem}.privacy-page .updated{color:var(--muted);font-size:.85rem;margin-bottom:2.2rem}.privacy-page h2{font-family:var(--font-display);font-size:1.35rem;font-weight:500;margin:2rem 0 .5rem}.privacy-page p{margin-bottom:.8rem}.privacy-page a{color:var(--accent)}
