:root{--ink:#000;--paper:#fff;--muted:rgba(255, 255, 255, 0.82);--serif:"Lora", "Palatino Linotype", Palatino, serif;--sans:"Cabin", "Helvetica Neue", Helvetica, Arial, sans-serif}html{scroll-behavior:smooth}body{margin:0;color:var(--paper);background:var(--ink);font-family:var(--serif);font-size:1.125rem;line-height:1.6}h1,h2,h3,.navbar-brand,.nav-link{font-family:var(--sans);font-weight:700;letter-spacing:.08em;text-transform:uppercase}h2{margin:0 0 1.25rem;font-size:clamp(1.6rem,3vw,2.25rem)}.content-section,.gallery-block{scroll-margin-top:5rem}a{color:var(--paper);text-decoration:none}a:hover,a:focus{color:var(--paper)}p{margin:0 0 1.25rem}.navbar{padding:1.1rem 0;background:0 0;transition:background .3s ease,padding .3s ease}.navbar.is-shrunk{padding:.45rem 0;background:rgba(0,0,0,.92)}.navbar-brand,.nav-link{color:var(--paper);font-size:.8rem}.navbar-brand:hover,.nav-link:hover,.nav-link:focus{color:var(--paper)}.nav-link{padding:.4rem .85rem}.navbar-toggler{border-color:rgba(255,255,255,.45)}.navbar-toggler-icon{filter:invert(1)}.masthead{display:flex;align-items:center;justify-content:center;min-height:100vh;text-align:center;background-position:50%;background-size:cover;background-repeat:no-repeat}.brand-heading{margin:0 0 .4rem;font-size:clamp(3.2rem,10vw,7rem);line-height:.92;letter-spacing:.12em}.intro-text{margin-bottom:1.5rem;font-size:clamp(1.1rem,2vw,1.6rem);font-style:italic}.btn-circle{display:inline-flex;align-items:center;justify-content:center;width:4.2rem;height:4.2rem;border:2px solid var(--paper);border-radius:50%;color:var(--paper);font-size:1.8rem;background:0 0}.btn-circle:hover,.btn-circle:focus{color:var(--paper);background:rgba(255,255,255,.12)}.content-section{padding:6rem 0}.gallery-section{padding:5rem 0 2rem;background-position:50%;background-size:cover;background-attachment:fixed}.gallery-block{margin-bottom:4.5rem}.gallery-block p{color:var(--muted)}.gallery a{display:block;overflow:hidden;background:#111}.gallery img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .35s ease,opacity .35s ease}.gallery a:hover img,.gallery a:focus img{transform:scale(1.04);opacity:.88}.contact-row .fa{display:block;margin-bottom:.75rem}footer{padding:2.5rem 0 3rem;color:var(--muted);font-size:.95rem}@media(max-width:991.98px){.navbar-collapse{margin-top:.75rem;padding:.5rem 0 .75rem;background:rgba(0,0,0,.92)}.gallery-section{background-attachment:scroll}}