:root{--background:#fff;--foreground:#171717;--white:#fff;--text-dark:#1f2937;--text-primary:#1f2937;--text-secondary:#6b7280;--primary-teal:#198754;--border:#e5e7eb}html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background:var(--background);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-shell{flex-direction:column;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}
.estate-navbar{z-index:1030;border-bottom:2px solid var(--en-brass)}.estate-navbar .navbar-brand{color:var(--en-ink);letter-spacing:.02em;font-size:1.75rem;font-weight:800;line-height:1}.estate-navbar .nav-link{font-weight:600;transition:all .2s;position:relative;color:var(--en-ink)!important}.estate-navbar .nav-link:hover{transform:translateY(-1px);color:var(--en-brass-dark)!important}.estate-navbar .nav-link.active{color:var(--en-brass-dark)!important}@media (min-width:992px){.estate-navbar .nav-link.active:after{content:"";background:var(--en-brass);border-radius:2px;height:2px;position:absolute;bottom:2px;left:.5rem;right:.5rem}}.estate-navbar .navbar-toggler{border:1px solid var(--en-brass-line)}.estate-navbar .navbar-toggler:focus{box-shadow:0 0 0 .2rem #b8862f40}.estate-navbar .nav-link:focus-visible,.estate-navbar .navbar-brand:focus-visible{outline:2px solid var(--en-brass);outline-offset:2px;border-radius:6px}.footer-section{background-color:var(--en-surface);color:var(--en-ink);border-top:3px solid var(--en-brass);font-family:Poppins,sans-serif;font-size:.9rem}.footer-container{width:100%;max-width:1400px;margin:0 auto;padding-left:40px;padding-right:40px}.footer-logo-wrapper{min-height:70px;color:var(--en-ink);letter-spacing:.02em;align-items:center;font-size:1.75rem;font-weight:800;line-height:1;display:flex}.footer-text{color:var(--en-ink);max-width:300px;font-size:.875rem;line-height:1.7}.footer-heading{color:var(--en-brass-dark);letter-spacing:1px;margin-bottom:1.2rem;font-size:.75rem;font-weight:700}.footer-links{flex-direction:column;gap:.5rem;margin:0;padding:0;display:flex}.footer-links a{color:var(--en-muted);align-items:center;gap:6px;font-size:.875rem;text-decoration:none;transition:all .2s;display:flex}.footer-links a:hover{color:var(--en-brass-dark);transform:translate(3px)}.footer-link-arrow{color:var(--en-brass);opacity:0;font-size:8px;transition:all .2s}.footer-links a:hover .footer-link-arrow{opacity:1}.social-icons{align-items:center;gap:10px;margin-top:22px;display:flex}.social-icon-btn{background-color:var(--en-navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;text-decoration:none;transition:all .25s;display:flex}.social-icon-btn:hover{background-color:var(--en-ink);color:#fff;transform:translateY(-3px)}.contact-info{color:var(--en-ink);font-size:.875rem}.contact-item{align-items:flex-start;gap:10px;line-height:1.6;display:flex}.contact-icon{color:var(--en-brass);flex-shrink:0;margin-top:3px}.contact-info a{color:inherit;transition:color .2s}.contact-info a:hover{color:var(--en-brass-dark)}.contact-hours{color:var(--en-muted)}.footer-divider{border-color:var(--en-brass-line);opacity:1}.footer-copyright{color:var(--en-muted);font-size:.8rem}.footer-bottom-links{flex-wrap:wrap;justify-content:center;align-items:center;row-gap:.25rem;display:flex}.footer-bottom-links a{color:var(--en-muted);padding:0 clamp(12px,2vw,30px);font-size:.8rem;text-decoration:none;transition:all .2s}.footer-bottom-links a:hover{color:var(--en-brass-dark)}.footer-bottom-links .divider{color:var(--en-brass-line)}@media (min-width:768px){.footer-bottom-links{justify-content:flex-end}}.scroll-to-top-btn{background-color:var(--en-navy);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;margin-left:auto;transition:all .25s;display:flex;box-shadow:0 6px 18px #17345a40}.scroll-to-top-btn:hover{background-color:var(--en-ink);transform:translateY(-3px)}.footer-section a:focus-visible,.scroll-to-top-btn:focus-visible{outline:2px solid var(--en-brass);outline-offset:3px}@media (prefers-reduced-motion:reduce){.footer-links a,.social-icon-btn,.scroll-to-top-btn{transition:none}.footer-links a:hover,.social-icon-btn:hover,.scroll-to-top-btn:hover{transform:none}}
