/* ===========================================================
   SampleSalesNYC.com — CHROME STYLESHEET (v2 redesign)
   Styles the shared HEADER and FOOTER only. Every selector is
   namespaced under .ssnyc-header / .ssnyc-footer so it can never
   affect page bodies. Works with both the v1 and v2 partial markup
   (same class names), so the whole site picks up the new look as
   soon as this file is uploaded.
   Text colours follow the WCAG rule: pink #e8638a / gold #b8933f
   are shapes only; text uses #c0396a / #836722 on light,
   #f2ebdd / #e0bd6b on dark.
   =========================================================== */
.ssnyc-header, .ssnyc-footer{
  --ss-ink:#241612; --ss-body:#3d332c; --ss-muted:#5c5249; --ss-brown:#7a3728;
  --ss-pink:#e8638a; --ss-pink-t:#c0396a; --ss-gold:#b8933f;
  --ss-paper:#fbf8f3; --ss-cream:#f4ede1; --ss-line:#e8e0d4;
  --ss-dark:#1c120e; --ss-dark3:#3a2a22; --ss-on-dark:#f2ebdd; --ss-gold-d:#e0bd6b; --ss-soft-d:#d8ccb8; --ss-dim-d:#b9ab95;
  --ss-serif:'Fraunces', Georgia, 'Times New Roman', serif;
  --ss-sans:'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  box-sizing:border-box;
}
.ssnyc-header *, .ssnyc-footer *{ box-sizing:border-box; }
.ssnyc-header .ssnyc-sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

/* ---------------- HEADER ---------------- */
header.ssnyc-header{
  background:var(--ss-paper); border-bottom:1px solid var(--ss-line);
  position:relative; z-index:500; margin:0; padding:0;
}
.ssnyc-header .ssnyc-header-inner{
  max-width:1240px; margin:0 auto; padding:12px 24px; min-height:74px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.ssnyc-header .ssnyc-logo{ display:flex; align-items:center; min-height:44px; flex:none; text-decoration:none; border:0; }
.ssnyc-header .ssnyc-logo img{ height:48px; width:auto; display:block; max-width:none; }
.ssnyc-header .ssnyc-nav{ display:flex; align-items:center; gap:2px; }
.ssnyc-header .ssnyc-nav a{
  font-family:var(--ss-sans); font-size:15px; font-weight:500; letter-spacing:0; text-transform:none;
  color:var(--ss-body); text-decoration:none; white-space:nowrap;
  min-height:44px; display:inline-flex; align-items:center; padding:0 14px;
  border-bottom:2px solid transparent; border-radius:0; background:none; transition:color .15s, border-color .15s;
}
.ssnyc-header .ssnyc-nav a:hover{ color:var(--ss-ink); border-bottom-color:var(--ss-pink); background:none; }
.ssnyc-header .ssnyc-nav a[aria-current="page"]{ color:var(--ss-ink); font-weight:600; border-bottom-color:var(--ss-pink); }
.ssnyc-header .ssnyc-nav a.ssnyc-nav-search{
  width:44px; height:44px; padding:0; margin-left:12px; justify-content:center;
  border:1px solid #e0d6c6; border-radius:50%; background:#fff; color:var(--ss-ink);
}
.ssnyc-header .ssnyc-nav a.ssnyc-nav-search:hover{ border-color:var(--ss-ink); }
.ssnyc-header .ssnyc-nav a.ssnyc-nav-cta{
  margin-left:10px; padding:0 20px; border-radius:999px; border:0;
  background:var(--ss-ink); color:var(--ss-on-dark); font-weight:600; font-size:14.5px;
}
.ssnyc-header .ssnyc-nav a.ssnyc-nav-cta:hover{ background:#3a241c; color:var(--ss-on-dark); }
.ssnyc-header .ssnyc-nav-toggle{
  display:none; width:44px; height:44px; padding:0; cursor:pointer;
  align-items:center; justify-content:center;
  border:0; border-radius:50%; background:var(--ss-ink); color:var(--ss-on-dark); font-size:18px; line-height:1;
}
.ssnyc-header a:focus-visible, .ssnyc-header button:focus-visible{ outline:3px solid var(--ss-pink-t); outline-offset:2px; }

@media (max-width:1000px){
  .ssnyc-header .ssnyc-header-inner{ min-height:64px; padding:10px 16px; }
  .ssnyc-header .ssnyc-logo img{ height:38px; }
  .ssnyc-header .ssnyc-nav-toggle{ display:inline-flex; }
  .ssnyc-header .ssnyc-nav{
    display:none; position:absolute; top:calc(100% + 8px); right:16px; left:16px;
    flex-direction:column; align-items:stretch; gap:2px; padding:8px;
    background:#fff; border:1px solid var(--ss-line); border-radius:16px; box-shadow:0 12px 32px rgba(36,22,18,.14);
  }
  .ssnyc-header .ssnyc-nav.open{ display:flex; }
  .ssnyc-header .ssnyc-nav a{ border-bottom:0; border-radius:10px; padding:0 14px; }
  .ssnyc-header .ssnyc-nav a:hover{ background:var(--ss-cream); }
  .ssnyc-header .ssnyc-nav a.ssnyc-nav-search{ width:auto; height:auto; min-height:44px; margin:0; padding:0 14px; border:0; border-radius:10px; justify-content:flex-start; gap:10px; background:none; }
  .ssnyc-header .ssnyc-nav a.ssnyc-nav-search .ssnyc-sr{ position:static; width:auto; height:auto; clip:auto; overflow:visible; }
  .ssnyc-header .ssnyc-nav a.ssnyc-nav-cta{ margin:6px 0 0; justify-content:center; }
}

/* ---------------- FOOTER ---------------- */
footer.ssnyc-footer{
  background:var(--ss-dark); color:var(--ss-soft-d);
  font-family:var(--ss-sans); font-size:15px; line-height:1.7;
  padding:64px 0 28px; margin:0;
}
.ssnyc-footer .ssnyc-footer-inner{ max-width:1240px; margin:0 auto; padding:0 24px; }
.ssnyc-footer .ssnyc-footer-grid{ display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:40px; }
.ssnyc-footer .ssnyc-footer-brand img{ height:48px; width:auto; display:block; max-width:none; }
.ssnyc-footer .ssnyc-footer-brand p{ margin:18px 0 0; max-width:340px; color:var(--ss-soft-d); font-size:15px; }
.ssnyc-footer .ssnyc-footer-cta{ display:inline-flex; align-items:center; min-height:44px; margin-top:8px; color:var(--ss-gold-d); font-weight:600; text-decoration:none; }
.ssnyc-footer .ssnyc-footer-col{ display:flex; flex-direction:column; }
.ssnyc-footer .ssnyc-footer-col h2{
  font-family:var(--ss-sans); font-size:13.6px; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  color:var(--ss-gold-d); margin:0 0 8px; line-height:1.4;
}
.ssnyc-footer a{ color:var(--ss-on-dark); text-decoration:none; }
.ssnyc-footer .ssnyc-footer-col a{ min-height:40px; display:flex; align-items:center; }
.ssnyc-footer a:hover{ color:var(--ss-gold-d); }
.ssnyc-footer a:focus-visible{ outline:3px solid var(--ss-gold-d); outline-offset:2px; }
.ssnyc-footer .ssnyc-footer-bottom{
  margin-top:40px; padding-top:20px; border-top:1px solid var(--ss-dark3);
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 24px;
  font-size:13.6px; color:var(--ss-dim-d);
}
.ssnyc-footer .ssnyc-footer-bottom p{ margin:0; color:var(--ss-dim-d); }
@media (max-width:900px){ .ssnyc-footer .ssnyc-footer-grid{ grid-template-columns:1fr 1fr; } .ssnyc-footer .ssnyc-footer-brand{ grid-column:1 / -1; } }
@media (max-width:520px){ .ssnyc-footer .ssnyc-footer-grid{ grid-template-columns:1fr; } footer.ssnyc-footer{ padding-top:48px; } }
@media print{ header.ssnyc-header, footer.ssnyc-footer{ display:none; } }

/* ---------------------------------------------------------------
   Legacy page contrast fixes (WCAG AA 4.5:1). Older pages use the
   pink #e8638a and gold #b8933f as TEXT colours, which fail contrast.
   Layered on top — page markup and page styles are untouched.
   --------------------------------------------------------------- */
.announce{background:#a52f5a!important;color:#fff!important}
.announce a{color:#fff!important}
.btn-primary,.btn-cta{background:#a52f5a!important;color:#fff!important}
.btn-primary:hover,.btn-cta:hover{background:#8f2850!important}
.int-link{color:#a52f5a!important}
.prose a,td.brand-name a,.sale-cta a,.related li a{color:#c0396a!important}
.prose .notice.info a{color:#1f3f72!important}.prose .notice:not(.info) a{color:#7a1d3c!important}
.org-addr,.addr,.cc-lbl,.ab-title,.wb-title{color:#a52f5a!important}
.card-cat{background:#a52f5a!important;color:#fff!important}
.card-cat.cat-brown{background:#7a3728!important}
.card-cat.cat-gold{background:#836722!important}
.badge.b-new,.badge.badge-last,.badge.b-last{color:#a52f5a!important}
.badge.b-live,.badge.badge-live{color:#146c3a!important}
.badge.badge-lux,.disc{color:#836722!important}
/* links inside running text need more than colour to stand out */
main p a:not([class]),.prose a{text-decoration:underline;text-underline-offset:2px}
