/* Residence shared base — used by search/404/events/directory mockups */
:root{
  --black:#0A0A0A; --gold:#C5A572; --gold-dim:rgba(197,165,114,0.28); --cream:#F5F0EB; --ivory:#FAF8F5;
  --white:#FFFFFF; --mute:rgba(245,240,235,0.45); --mute-2:rgba(245,240,235,0.62); --rule:rgba(197,165,114,0.16);
  --serif:'Cormorant Garamond',Georgia,serif; --sans:'Inter',system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--black);color:var(--cream);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.6;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}

.site-header{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;align-items:center;
  padding:20px 60px;background:rgba(10,10,10,0.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--rule);}
.logo{font-family:var(--serif);font-size:26px;font-weight:600;letter-spacing:1.5px;color:var(--white);}
.logo span{color:var(--gold);}
.nav-links{display:flex;gap:26px;list-style:none;}
.nav-links li{font-size:11px;letter-spacing:2.4px;text-transform:uppercase;color:var(--mute-2);transition:color .2s;}
.nav-links li:hover,.nav-links li.active{color:var(--gold);}
.header-tools{display:flex;align-items:center;gap:22px;}
.header-tools .search-ico{font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--mute-2);}
.subscribe-btn{font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--black);background:var(--gold);
  padding:9px 18px;border-radius:1px;font-weight:500;}

.grid-label{max-width:1400px;margin:64px auto 36px;padding:0 60px;display:flex;align-items:center;gap:24px;}
.grid-label::before,.grid-label::after{content:"";flex:1;height:1px;background:var(--rule);}
.grid-label span{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);white-space:nowrap;}

.newsletter{max-width:1400px;margin:88px auto 0;padding:80px 60px;text-align:center;border-top:1px solid var(--rule);}
.newsletter h3{font-family:var(--serif);font-weight:400;font-size:clamp(28px,3.5vw,42px);color:var(--white);}
.newsletter p{color:var(--mute-2);font-size:15px;margin-top:14px;}
.nl-form{display:flex;justify-content:center;margin-top:32px;max-width:480px;margin-left:auto;margin-right:auto;}
.nl-form input{flex:1;background:transparent;border:1px solid var(--gold-dim);border-right:none;color:var(--cream);
  padding:15px 18px;font-family:var(--sans);font-size:13px;letter-spacing:.5px;}
.nl-form button{background:var(--gold);color:var(--black);border:none;padding:15px 28px;font-size:11px;
  letter-spacing:2.6px;text-transform:uppercase;font-weight:500;cursor:pointer;}

.site-footer{border-top:1px solid var(--rule);padding:64px 60px 44px;}
.footer-top{display:flex;justify-content:space-between;gap:60px;flex-wrap:wrap;max-width:1400px;margin:0 auto;}
.footer-brand .logo{font-size:30px;margin-bottom:16px;}
.footer-brand p{color:var(--mute);font-size:13px;max-width:280px;line-height:1.7;}
.footer-cols{display:flex;gap:64px;flex-wrap:wrap;}
.footer-col h4{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:18px;}
.footer-col ul{list-style:none;}
.footer-col li{font-size:13px;color:var(--mute-2);margin-bottom:12px;}
.footer-bottom{max-width:1400px;margin:48px auto 0;padding-top:24px;border-top:1px solid var(--rule);
  display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px;color:var(--mute);flex-wrap:wrap;gap:12px;}

@media(max-width:880px){
  .site-header{padding:16px 22px;}
  .nav-links,.header-tools .search-ico{display:none;}
  .grid-label,.newsletter,.site-footer{padding-left:22px;padding-right:22px;}
}
