/* 60&Over Site Kit — global tokens */
.container { max-width: 1100px; margin: 0 auto; padding: 0 24px; }

/* HERO */
.hub-hero { position:relative; color:#fff; }
.hub-hero__bg { position:absolute; inset:0; background:linear-gradient(105deg,var(--g1),var(--g2),var(--g3)); }
.hub-hero__content { position:relative; z-index:1; padding:48px 0; }

/* Quick jumps */
.hub-strip { position:sticky; top:0; z-index:20; background:#fff; border-bottom:1px solid #e2e8f0; }
.hub-pill { display:inline-flex; align-items:center; padding:.5rem .75rem; border:1px solid #e2e8f0; border-radius:999px; background:#fff; color:#475569; font-weight:600; }

/* Card */
.hub-card { border:1px solid #e2e8f0; border-radius:16px; overflow:hidden; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.04); transition:transform .15s, box-shadow .15s; }
.hub-card:hover { transform: translateY(-2px); box-shadow:0 8px 24px rgba(0,0,0,.08); }
.hub-card__bar { height:6px; background:linear-gradient(90deg,var(--g1),var(--g2),var(--g3)); }
.hub-card__body { padding:20px; }
.hub-card__badge { display:inline-flex; padding:2px 8px; font-size:12px; border-radius:999px; background:#f1f5f9; border:1px solid #e2e8f0; color:#475569; }

/* Palettes — map from ACF select (color_style) to classes */
.palette--jamaica { --g1:#14b8a6; --g2:#10b981; --g3:#06b6d4; }
.palette--brain   { --g1:#38bdf8; --g2:#06b6d4; --g3:#2563eb; }
.palette--money   { --g1:#34d399; --g2:#14b8a6; --g3:#06b6d4; }
.palette--health  { --g1:#fb7185; --g2:#ec4899; --g3:#e11d48; }
.palette--tools   { --g1:#94a3b8; --g2:#64748b; --g3:#334155; }
.palette--spotlit { --g1:#f59e0b; --g2:#f97316; --g3:#f43f5e; }
.palette--europe  { --g1:#818cf8; --g2:#a78bfa; --g3:#d946ef; }
.palette--carib   { --g1:#2dd4bf; --g2:#10b981; --g3:#06b6d4; }
.palette--cities  { --g1:#60a5fa; --g2:#6366f1; --g3:#7c3aed; }

/* Simple grid helpers */
.grid { display:grid; gap:16px; }
@media(min-width:680px){ .grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media(min-width:980px){ .grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
