.nav{position:fixed;top:calc(clamp(1rem,3vw,2rem) + env(safe-area-inset-top,0px));right:calc(clamp(1rem,3vw,2rem) + env(safe-area-inset-right,0px));z-index:2}.nav__toggle{background:#00000059;color:var(--fg);border:1px solid rgba(245,245,245,.4);border-radius:4px;padding:.55rem 1.1rem;font:inherit;letter-spacing:.15em;text-transform:uppercase;font-size:.85rem;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s ease}.nav__toggle:hover{background:#0009}.nav__menu{position:absolute;top:calc(100% + .5rem);right:0;margin:0;padding:.4rem 0;list-style:none;min-width:11rem;background:#0a0a0ad9;border:1px solid rgba(245,245,245,.2);border-radius:4px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav__menu a{display:block;padding:.6rem 1.2rem;color:var(--fg);text-decoration:none;letter-spacing:.08em;font-size:.95rem;white-space:nowrap;transition:background .15s ease}.nav__menu a:hover{background:#f5f5f51f}.photo-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:var(--bg)}.photo-flash__slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity var(--fade-duration) ease-in-out;will-change:opacity}@media(prefers-reduced-motion:reduce){.photo-flash__slide{transition:none}}.pj{position:relative;z-index:1;min-height:100vh;min-height:100dvh;background:#f7f7f5;color:#161616;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1.5rem;padding:clamp(5rem,14vh,9rem) clamp(1.5rem,8vw,8rem) clamp(3rem,10vh,7rem);padding-bottom:calc(clamp(3rem,10vh,7rem) + env(safe-area-inset-bottom,0px));font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.pj__title{margin:0;font-size:clamp(2rem,6vw,3.5rem);font-weight:600;letter-spacing:-.02em;line-height:1.05}.pj__lede{margin:0;max-width:48ch;font-size:clamp(1rem,2.2vw,1.25rem);line-height:1.6;color:#444}.pj__thumb{display:inline-block;border-radius:4px;overflow:hidden;box-shadow:0 12px 40px #0000002e;transition:transform .2s ease,box-shadow .2s ease}.pj__thumb:hover{transform:translateY(-3px);box-shadow:0 18px 50px #0000003d}.pj__thumb img{display:block;width:auto;max-width:100%;max-height:60vh}.pj__cta{font-size:clamp(.95rem,2vw,1.1rem);font-weight:500;letter-spacing:.02em;color:#161616;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}.pj__cta:hover{opacity:.65}.contact{display:flex;flex-direction:column;gap:1.1rem;max-width:32rem;margin-top:1.5rem}.contact__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;opacity:.8}.contact input,.contact textarea{font:inherit;text-transform:none;letter-spacing:normal;color:var(--fg);background:#f5f5f50f;border:1px solid rgba(245,245,245,.25);border-radius:4px;padding:.7rem .85rem;resize:vertical}.contact input:focus,.contact textarea:focus{outline:none;border-color:#f5f5f5b3}.contact button{align-self:flex-start;font:inherit;letter-spacing:.15em;text-transform:uppercase;font-size:.85rem;color:var(--bg);background:var(--fg);border:none;border-radius:4px;padding:.7rem 1.6rem;cursor:pointer;transition:opacity .2s ease}.contact button:disabled{opacity:.6;cursor:default}.contact__error{margin:0;color:#ff8a80}.contact__thanks{margin-top:1.5rem;font-size:1.1rem}.hero{position:relative;z-index:1;height:100vh;height:100dvh;display:flex;align-items:flex-end;padding:clamp(1.5rem,5vw,4rem);padding-bottom:calc(clamp(1.5rem,5vw,4rem) + env(safe-area-inset-bottom,0px));padding-left:calc(clamp(1.5rem,5vw,4rem) + env(safe-area-inset-left,0px))}.hero__brand{text-shadow:0 2px 24px rgba(0,0,0,.8)}.hero__brand h1{margin:0;font-size:clamp(2.5rem,9vw,6rem);font-weight:300;letter-spacing:.08em;line-height:1}.hero__brand p{margin:.25rem 0 0;font-size:clamp(1rem,3vw,1.75rem);letter-spacing:.4em;text-transform:uppercase;opacity:.85}.page{position:relative;z-index:1;min-height:100vh;min-height:100dvh;padding:clamp(5rem,14vh,9rem) clamp(1.5rem,8vw,8rem) clamp(3rem,10vh,7rem);padding-bottom:calc(clamp(3rem,10vh,7rem) + env(safe-area-inset-bottom,0px));background-image:linear-gradient(#0a0a0ab8,#0a0a0ad1),url(/photos/backgrounds/page.jpg);background-size:cover;background-position:center}.copy{position:relative;z-index:1;background:#0a0a0af5;padding:clamp(3rem,10vh,7rem) clamp(1.5rem,8vw,8rem);border-top:1px solid rgba(245,245,245,.08)}.copy p{margin:0 0 1rem;max-width:60ch;line-height:1.7;opacity:.85}.page h1{margin:0 0 1.5rem;font-size:clamp(1.75rem,5vw,3rem);font-weight:300;letter-spacing:.06em}.page p{margin:0 0 1rem;max-width:60ch;line-height:1.7;opacity:.85}.service{margin-top:2.5rem}.service h2{margin:0 0 .5rem;font-size:clamp(1.25rem,3vw,1.75rem);font-weight:400;letter-spacing:.04em}.gallery__thumb{display:inline-block;margin-top:1rem;max-width:min(100%,32rem);border:1px solid rgba(245,245,245,.12);transition:opacity .2s ease,transform .2s ease}.gallery__thumb:hover{opacity:.9;transform:scale(1.01)}.gallery__thumb img{display:block;width:100%;height:auto}:root{--bg: #0a0a0a;--fg: #f5f5f5;--fade-duration: 1.5s;--hold-duration: 4s}*{box-sizing:border-box}html{scroll-behavior:smooth}body,#root{margin:0;min-height:100%;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
