/* Satsuma Property Group shared brand layer.
   Linked from spg pages and /apply. Cursor + footer mark only; palette lives in each page. */

/* ---------- Cursor: the Satsuma mark ----------
   Hotspot sits at the center of the orange circle. Plain url() first as the
   cross-browser baseline, then image-set for the crisp 2x asset where supported. */
html, body {
  cursor: auto;
  cursor: url("/spg/cursor.png") 16 20, auto;
  cursor: -webkit-image-set(url("/spg/cursor.png") 1x, url("/spg/cursor@2x.png") 2x) 16 20, auto;
  cursor: image-set(url("/spg/cursor.png") 1x, url("/spg/cursor@2x.png") 2x) 16 20, auto;
}

/* Links, buttons and other clickable controls: same mark with a ring.
   !important so page-level "cursor:pointer" rules do not win with the stock hand. */
a[href], button:not(:disabled), summary, label[for], select,
[role="button"], [onclick], .btn, .ghost, .link, .addbtn, .drop, .yn label,
input[type="checkbox"], input[type="radio"], input[type="file"],
input[type="submit"], input[type="button"] {
  cursor: pointer !important;
  cursor: url("/spg/cursor-pointer.png") 16 20, pointer !important;
  cursor: -webkit-image-set(url("/spg/cursor-pointer.png") 1x, url("/spg/cursor-pointer@2x.png") 2x) 16 20, pointer !important;
  cursor: image-set(url("/spg/cursor-pointer.png") 1x, url("/spg/cursor-pointer@2x.png") 2x) 16 20, pointer !important;
}

/* Text entry keeps the native I-beam. */
input:not([type]), input[type="text"], input[type="email"], input[type="tel"],
input[type="number"], input[type="date"], input[type="password"], input[type="search"],
input[type="url"], textarea, [contenteditable="true"] {
  cursor: text !important;
}

button:disabled, [aria-disabled="true"] { cursor: not-allowed; }

/* ---------- Footer mark ----------
   Orange circle with the roofline recolored to cream so it reads on grove green. */
.spg-footmark, .bf-mark {
  display: inline-block;
  flex: 0 0 auto;
  line-height: 0;
  margin-bottom: 6px;
}
.spg-footmark img, .bf-mark img {
  display: block;
  height: 112px;
  width: auto;
}
@media (max-width: 599px) {
  .spg-footmark img, .bf-mark img { height: 80px; }
}

/* Dark grove footer used on the spg pages (matches the /apply brand footer). */
.spg-foot {
  background: #14342B;
  color: #F3F5F0;
  border-top: 0;
  padding: 64px 0 52px;
}
.spg-foot .row {
  display: flex;
  flex-wrap: wrap;
  gap: 28px 48px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 28px;
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(243, 245, 240, .2);
}
.spg-foot .spg-foot-id { display: flex; flex-direction: column; gap: 10px; }
.spg-foot .spg-foot-addr { color: #B8C4BC; font-size: .8rem; line-height: 1.7; }
.spg-foot nav { display: flex; flex-wrap: wrap; gap: 6px 24px; max-width: 640px; }
.spg-foot nav a { color: #F3F5F0; text-decoration-color: rgba(243, 245, 240, .4); }
.spg-foot nav a:hover, .spg-foot nav a:focus-visible { color: #F08A24; text-decoration-color: #F08A24; }
.spg-foot p { color: #B8C4BC; }
