/* ===========================================================
   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; } }
