nav {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 1000;
    padding: 18px 60px;
    background: rgba(26,46,28,0.97);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.nav-logo {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.8rem;
    color: white;
    letter-spacing: 3px;
    text-decoration: none;
    font-weight: 300;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.nav-logo span { color: var(--gold); }

/* Real logo mark (static/images/brookhills_logo.png) — inspected
   directly: 2172x724 source, RGBA transparent, content bounding box
   2157x665 (only ~1-5% margin, not "excessive empty space"), true
   aspect ratio ~3:1. It is NOT low-resolution — at any of the display
   widths below (150-240px) this is an 9-14x downscale from the source,
   so sharpness comes from the browser's normal downscale filtering, not
   from re-exporting the asset. Sized by HEIGHT ONLY (width:auto) so the
   real aspect ratio is preserved exactly — never stretched/squashed,
   never forced into a fixed/square box. Height is chosen PER BREAKPOINT
   so the resulting auto-width lands inside the target range at that
   breakpoint (240px desktop / 190-220px tablet / 150-170px mobile)
   while never exceeding the max-height cap — width and max-height can't
   both be hit exactly against a fixed real aspect ratio, so max-height
   wins and width is the closest the ratio allows. max-width remains a
   safety net only (this asset never reaches it at any breakpoint below)
   so a future differently-shaped logo can't blow out the navbar.
   object-fit: contain is the same guarantee at the replaced-element
   level, belt-and-braces with width:auto/height. */
.nav-logo-img {
    display: block;
    height: 75px;
    width: auto;
    max-width: 260px;
    max-height: 75px;
    object-fit: contain;
}

/* Tablet: 769px-1200px */
@media (min-width: 769px) and (max-width: 1200px) {
    .nav-logo-img {
        height: 64px;
        max-width: 220px;
        max-height: 64px;
    }
}

/* Mobile: <=768px (matches this file's existing mobile breakpoint) */
@media (max-width: 768px) {
    .nav-logo-img {
        height: 50px;
        max-width: 170px;
        max-height: 50px;
    }
}

.nav-links {
    display: flex;
    gap: 32px;
    list-style: none;
}

.nav-links a {
    color: rgba(255,255,255,0.85);
    text-decoration: none;
    font-size: 13px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-weight: 500;
    transition: color 0.2s;
}
.nav-links a:hover { color: var(--gold); }