@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Inter:wght@300;400;500&display=swap";:root{--page-background: #13211a;--surface-background: #1b2e24;--card-background: #243a2e;--text-color: #f3f3ed;--muted-text: #b9c8be;--border-color: #35524300;--accent: #6d8f71;--accent-light: #d5e3d7;--overlay-color: rgba(5, 10, 7, .96);--header-height: 90px;--content-width: 1600px;--side-padding: clamp(1rem, 3vw, 3rem)}*,*:before,*:after{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body{margin:0;background:var(--page-background);color:var(--text-color);font-family:Inter,Arial,sans-serif;font-size:1rem;font-weight:300;line-height:1.5}body.lightbox-open{overflow:hidden}button,input,textarea{font:inherit}button,a{color:inherit}img{display:block;max-width:100%}main{min-height:calc(100vh - 170px)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;border:0;white-space:nowrap;clip:rect(0,0,0,0)}.site-header{position:relative;z-index:100;width:100%;background:var(--page-background)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:min(100%,var(--content-width));min-height:var(--header-height);margin-inline:auto;padding-inline:var(--side-padding)}.site-name{flex-shrink:0;color:var(--text-color);font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.7rem,2.2vw,2.35rem);font-weight:500;line-height:1;text-decoration:none}.site-name:hover,.site-name:focus-visible{color:var(--accent-light)}.main-navigation{display:flex;align-items:center;gap:clamp(1.15rem,2.3vw,2.4rem)}.navigation-link,.gallery-menu-button{position:relative;display:inline-flex;align-items:center;gap:.35rem;padding:.85rem 0;color:var(--muted-text);background:transparent;border:0;font-family:Inter,Arial,sans-serif;font-size:clamp(1rem,1.25vw,1.25rem);font-weight:300;line-height:1;text-decoration:none;cursor:pointer;transition:color .18s ease}.navigation-link:hover,.navigation-link:focus-visible,.navigation-link.active,.gallery-menu-button:hover,.gallery-menu-button:focus-visible,.gallery-menu-button.active{color:var(--text-color)}.navigation-link:after,.gallery-menu-button:after{position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--accent-light);content:"";transform:scaleX(0);transform-origin:center;transition:transform .18s ease}.navigation-link:hover:after,.navigation-link:focus-visible:after,.navigation-link.active:after,.gallery-menu-button:hover:after,.gallery-menu-button:focus-visible:after,.gallery-menu-button.active:after{transform:scaleX(1)}.gallery-menu{position:relative}.dropdown-arrow{display:inline-block;font-size:.8em;line-height:1;transition:transform .18s ease}.gallery-menu:hover .dropdown-arrow,.gallery-menu:focus-within .dropdown-arrow,.gallery-menu.is-open .dropdown-arrow{transform:rotate(180deg)}.gallery-dropdown{position:absolute;top:calc(100% - .1rem);left:50%;min-width:190px;margin:0;padding:0;list-style:none;visibility:hidden;opacity:0;background:var(--surface-background);border:1px solid var(--border-color);transform:translate(-50%,.5rem);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.gallery-menu:hover .gallery-dropdown,.gallery-menu:focus-within .gallery-dropdown,.gallery-menu.is-open .gallery-dropdown{visibility:visible;opacity:1;transform:translate(-50%)}.gallery-dropdown a{display:block;padding:.75rem 1.15rem;color:var(--muted-text);font-family:Inter,Arial,sans-serif;font-size:.95rem;font-weight:300;text-decoration:none;white-space:nowrap;transition:color .15s ease,background .15s ease}.gallery-dropdown a:hover,.gallery-dropdown a:focus-visible{color:var(--text-color);background:var(--card-background)}.mobile-menu-button{display:none;padding:.5rem;color:var(--text-color);background:transparent;border:0;font-family:Inter,Arial,sans-serif;font-size:1rem;cursor:pointer}.portfolio-heading-section{display:flex;align-items:center;justify-content:center;min-height:clamp(140px,18vw,220px);padding:clamp(2rem,4vw,3rem) var(--side-padding);text-align:center;background:var(--page-background)}.portfolio-heading{max-width:1100px;margin:0;color:var(--text-color);font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(4rem,9vw,8.5rem);font-weight:400;line-height:.95;letter-spacing:-.035em}.page-introduction{width:min(100%,var(--content-width));margin:0 auto;padding:clamp(2rem,4vw,3rem) var(--side-padding);text-align:center}.page-introduction h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(4rem,9vw,8.5rem);font-weight:400;line-height:.95;letter-spacing:-.035em}.page-introduction p{max-width:60ch;margin:1.5rem auto 0;color:var(--muted-text)}.photo-gallery{width:min(100%,var(--content-width));margin:0 auto;padding:0}.gallery-item{display:block;margin:0;padding:0;overflow:hidden;background:transparent;border:0;cursor:zoom-in}.gallery-item img{display:block;width:100%;height:auto;transition:transform .5s ease,filter .5s ease}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.012);filter:brightness(1.06)}.gallery-item-title{position:absolute;right:0;bottom:0;left:0;padding:3rem 1rem .8rem;color:#fff;background:linear-gradient(transparent,#000000b8);font-size:.82rem;font-weight:300;text-align:left;opacity:0;transition:opacity .18s ease}.gallery-item:hover .gallery-item-title,.gallery-item:focus-visible .gallery-item-title{opacity:1}.gallery-reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease var(--reveal-delay, 0ms),transform .75s ease var(--reveal-delay, 0ms)}.gallery-reveal.is-visible{opacity:1;transform:translateY(0)}.empty-message{width:min(100%,var(--content-width));margin:0 auto;padding:5rem var(--side-padding) 8rem;color:var(--muted-text);text-align:center}.lightbox{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;color:#fff;background:var(--overlay-color);border:0}.lightbox::backdrop{background:var(--overlay-color)}.lightbox-figure{width:100%;max-width:1500px;margin:0 auto;padding:3.5rem 0 2rem}.lightbox-image-wrapper{position:relative;display:grid;place-items:center;min-height:50vh}.lightbox-image{width:auto;max-width:100%;height:auto;max-height:76vh;margin-inline:auto;object-fit:contain}.lightbox-loading{position:absolute;color:#ffffffbf}.lightbox-loading.is-hidden{display:none}.lightbox-caption{max-width:1100px;margin:1rem auto 0;padding-inline:1rem;text-align:center}.lightbox-caption h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.65rem;font-weight:400}.lightbox-caption p{margin:.35rem 0 0;color:#ffffffc2;font-size:.86rem;font-weight:300}.lightbox-description{max-width:65ch;margin-inline:auto!important}.lightbox-close,.lightbox-navigation{color:#fff;background:transparent;border:0;cursor:pointer}.lightbox-close{position:absolute;z-index:2;top:.75rem;right:1.25rem;padding:.35rem;font-size:2.5rem;font-weight:200;line-height:1}.lightbox-navigation{align-self:stretch;padding:1rem;font-size:2rem;opacity:.7;transition:opacity .15s ease}.lightbox-navigation:hover,.lightbox-navigation:focus-visible,.lightbox-close:hover,.lightbox-close:focus-visible{opacity:1}.text-page{width:min(100%,900px);margin:0 auto;padding:clamp(4rem,8vw,7rem) var(--side-padding) clamp(5rem,9vw,9rem)}.text-page header{margin-bottom:2.5rem}.text-page h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(3rem,7vw,5.5rem);font-weight:400;line-height:1}.text-page header p,.about-copy p{max-width:62ch;color:var(--muted-text)}.about-page{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(300px,1.2fr);align-items:center;gap:clamp(2rem,6vw,6rem);width:min(100%,1050px)}.about-photo-placeholder{display:grid;place-items:center;min-height:420px;color:var(--muted-text);background:var(--surface-background);border:1px solid var(--border-color)}.contact-form{display:grid;gap:1.35rem}.form-field{display:grid;gap:.4rem}.form-field label{color:var(--text-color);font-size:.9rem;font-weight:400}.form-field input,.form-field textarea{width:100%;padding:.85rem .95rem;color:var(--text-color);background:var(--surface-background);border:1px solid var(--border-color);border-radius:0}.form-field textarea{resize:vertical}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent-light);outline:1px solid var(--accent-light);outline-offset:2px}.primary-button{justify-self:start;padding:.85rem 1.45rem;color:#fff;background:var(--accent);border:1px solid var(--accent);cursor:pointer;transition:background .15s ease,border-color .15s ease}.primary-button:hover,.primary-button:focus-visible{background:#7fa184;border-color:#7fa184}.honeypot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-note{margin-top:1.5rem;color:var(--muted-text);font-size:.85rem}.botcheck{position:absolute;left:-10000px;width:1px;height:1px;opacity:0;pointer-events:none}.primary-button:disabled{cursor:wait;opacity:.65}.form-result{min-height:1.5rem;margin:0;color:var(--muted-text);font-size:.9rem}.form-result--success{color:var(--accent-light)}.form-result--error{color:#efb4a9}.site-footer{margin-top:5rem;padding:3rem 2rem;border-top:1px solid rgba(255,255,255,.08);text-align:center;color:var(--muted-text);font-size:1rem}.footer-links{display:flex;justify-content:center;gap:2rem;margin-top:1rem}.footer-links a{color:inherit;text-decoration:none;transition:color .25s ease}.footer-links a:hover{color:var(--text-color)}@media(max-width:700px){:root{--header-height: 70px}.header-inner{position:relative;gap:1rem}.site-name{font-size:1.75rem}.mobile-menu-button{display:block}.main-navigation{position:absolute;top:100%;right:0;left:0;display:none;align-items:stretch;gap:0;padding:.5rem var(--side-padding) 1rem;background:var(--page-background);border-bottom:1px solid var(--border-color)}.main-navigation.is-open{display:grid}.navigation-link,.gallery-menu-button{display:flex;width:100%;padding:.85rem 0;font-size:1rem;text-align:left}.navigation-link:after,.gallery-menu-button:after{display:none}.gallery-dropdown{position:static;display:none;min-width:0;padding:0 0 .5rem 1rem;visibility:visible;opacity:1;border:0;transform:none}.gallery-menu:hover .gallery-dropdown,.gallery-menu:focus-within .gallery-dropdown{display:none}.gallery-menu.is-open .gallery-dropdown{display:block}.gallery-dropdown a{padding:.7rem 0;font-size:.95rem}.portfolio-heading-section{min-height:240px;padding:4rem var(--side-padding)}.portfolio-heading,.page-introduction h1{font-size:clamp(3.2rem,15vw,5rem);line-height:1}.page-introduction{padding:4rem var(--side-padding)}.gallery-item-title{opacity:1}.lightbox-figure{padding-top:4rem}.lightbox-navigation{padding:.25rem;font-size:1.4rem}.lightbox-image{max-height:68vh}.lightbox-caption{padding-inline:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery-reveal{opacity:1;transform:none;transition:none}.gallery-item img,.navigation-link,.gallery-menu-button,.gallery-dropdown,.dropdown-arrow{transition:none}}
