:root{--ink: #232830;--muted: #7a7570;--blue: #46627c;--serif: "Fraunces", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background-color:#4a7ab5}body{margin:0;color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.6;font-optical-sizing:auto;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/images/background-under-border.png) center / cover no-repeat}.border-frame{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none;background-size:100% 100%;background-repeat:no-repeat}.border-frame--landscape{background-image:url(/images/border.png)}.border-frame--portrait{background-image:url(/images/border-portrait.png);display:none}@media (orientation: portrait){.border-frame--landscape{display:none}.border-frame--portrait{display:block}}.page{position:relative;max-width:1180px;margin:0 auto;padding:clamp(3rem,8vw,7rem) clamp(2rem,6vw,3.5rem) clamp(3rem,8vw,6rem)}@media (orientation: portrait){.page{padding-left:clamp(2.5rem,7vw,3.5rem);padding-right:clamp(2.5rem,7vw,3.5rem)}}.header{text-align:center;margin-bottom:clamp(3rem,9vw,6.5rem)}.title{margin:0;font-weight:300;font-size:clamp(2.1rem,6vw,3.9rem);line-height:1.05;letter-spacing:-.015em;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.3)}.subtitle{margin:clamp(.75rem,2vw,1.15rem) 0 0;font-style:italic;font-weight:400;font-size:clamp(1.05rem,2.5vw,1.4rem);letter-spacing:.01em;color:#ffffffd9;text-shadow:0 1px 8px rgba(0,0,0,.2)}.subtitle:after{content:"";display:block;width:44px;height:1px;margin:clamp(1.5rem,4vw,2.25rem) auto 0;background-color:#ffffff59}.header-contact{margin:.25rem 0 0;font-style:italic;font-size:clamp(.95rem,2vw,1.1rem);color:#fffc;text-shadow:0 1px 8px rgba(0,0,0,.2)}.header-contact a{color:#ffffffe6;background-image:linear-gradient(#ffffffb3,#ffffffb3)}.header-contact a:hover{color:#fff}.gallery{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:clamp(1.75rem,5vw,3.5rem)}@media (min-width: 700px){.gallery{grid-template-columns:repeat(2,1fr);align-items:start}}.gallery-item{margin:0}.gallery-button{display:block;width:100%;margin:0;padding:0;border:none;background:none;cursor:pointer;border-radius:0}.gallery-image{display:block;width:100%;height:auto;border-radius:2px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.18)) drop-shadow(0 1px 3px rgba(0,0,0,.1));transition:filter .26s ease,transform .26s ease}.gallery-button:hover .gallery-image{filter:drop-shadow(0 12px 32px rgba(0,0,0,.25)) drop-shadow(0 4px 10px rgba(0,0,0,.12));transform:translateY(-2px)}.contact{margin-top:clamp(4rem,11vw,8rem);padding-top:clamp(2.25rem,5vw,3.5rem);border-top:1px solid rgba(255,255,255,.25);text-align:center}.contact-line{margin:0;font-style:italic;color:#ffffffd9;letter-spacing:.01em;text-shadow:0 1px 8px rgba(0,0,0,.2)}.contact-email{margin:.6rem 0 0;font-size:clamp(1.05rem,2.5vw,1.3rem);text-shadow:0 1px 8px rgba(0,0,0,.2)}.contact-email a{color:#ffffffe6;background-image:linear-gradient(#ffffffb3,#ffffffb3)}.contact-email a:hover{color:#fff}a{color:var(--blue);text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-size:0% 1px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .26s ease,color .2s ease}a:hover{color:var(--ink);background-size:100% 1px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,5vw,4rem);background-color:#1c1f25d1;backdrop-filter:blur(14px) saturate(110%);-webkit-backdrop-filter:blur(14px) saturate(110%);animation:lightbox-in .22s ease both}.lightbox-image{display:block;max-width:100%;max-height:86vh;height:auto;width:auto;border-radius:2px;box-shadow:0 24px 70px #00000073;animation:lightbox-image-in .26s ease both}.lightbox-close{position:absolute;top:clamp(.75rem,2.5vw,1.5rem);right:clamp(.75rem,2.5vw,1.5rem);width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:1.6rem;line-height:1;color:var(--ink);background-color:#ffffffe0;border:none;border-radius:999px;cursor:pointer;transition:background-color .2s ease}.lightbox-close:hover{background-color:#fff}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}@keyframes lightbox-image-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.lightbox-close:focus-visible{outline-color:#fff;outline-offset:3px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition:none!important;animation:none!important}.gallery-button:hover .gallery-image{transform:none}}
