/* slice 18b: one primary CTA per audience. Mobile (<768px): sticky bottom bar with dismiss; never over footer or forms (JS hides it).
   Desktop: static band just above the footer. Brand palette only: #1B4332 dark, #D4A373 gold, #F7F3EE cream. */
.cta18{background:#1B4332;color:#fff;font-size:.875rem;line-height:1.35}
.cta18-in{max-width:72rem;margin:0 auto;padding:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}
.cta18-txt{flex:1 1 16rem;margin:0}
.cta18-txt strong{color:#D4A373;font-weight:600}
.cta18-txt a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.cta18-btn{display:inline-block;background:#D4A373;color:#1B4332;font-weight:600;border-radius:9999px;padding:.625rem 1.25rem;text-decoration:none;white-space:nowrap}
.cta18-btn:focus-visible,.cta18-x:focus-visible{outline:2px solid #fff;outline-offset:2px}
.cta18-wa{display:none}
.cta18-x{display:none;background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:9999px;width:2.25rem;height:2.25rem;font-size:1.1rem;line-height:1;cursor:pointer}
@media (max-width:767px){
  .cta18.cta18-sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;box-shadow:0 -4px 16px rgba(0,0,0,.18);padding-bottom:env(safe-area-inset-bottom)}
  .cta18.cta18-sticky .cta18-in{padding:.6rem .75rem;flex-wrap:nowrap;gap:.5rem}
  .cta18.cta18-sticky .cta18-txt{font-size:.75rem;flex:1 1 auto;min-width:0}
  .cta18.cta18-sticky .cta18-more,.cta18.cta18-sticky .cta18-txt strong{display:none}
  .cta18.cta18-sticky .cta18-wa{display:inline}
  .cta18.cta18-sticky .cta18-btn{padding:.55rem .9rem;font-size:.8125rem}
  .cta18.cta18-sticky .cta18-x{display:inline-block;flex:0 0 auto}
  .cta18.cta18-sticky.cta18-off{visibility:hidden;transform:translateY(110%)}
  body.cta18-pad{padding-bottom:6.5rem} /* fallback; cta18.js sets the exact bar height */
}
@media (prefers-reduced-motion:no-preference){.cta18.cta18-sticky{transition:transform .2s ease,visibility .2s}}
