/* Shared offers for service pages; load after the existing service styles. */
.sl-page .sl-promotions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:0 0 28px; }
.sl-page .sl-promotion { display:flex; flex-direction:column; gap:8px; min-width:0; padding:20px 22px; border:1px solid #e4d6c3; border-left:4px solid #d77716; border-radius:10px; background:#fff8ee; color:var(--sl-ink,#182521); text-decoration:none; }
.sl-page .sl-promotion-title { font-size:18px; line-height:1.3; font-weight:700; text-wrap:pretty; }
.sl-page .sl-promotion-copy { font-size:13px; line-height:1.55; color:var(--sl-muted,#586660); }
.sl-page .sl-promotion-link { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding-top:5px; font-size:12px; line-height:1.5; font-weight:700; color:#8b4700; }
.sl-page .sl-promotion:hover { border-color:#bf7a32; background:#fff2df; text-decoration:none; }
.sl-page .sl-promotion:hover .sl-promotion-link { text-decoration:underline; text-underline-offset:3px; }
.sl-page .sl-promotion:focus-visible { outline:3px solid #147358; outline-offset:4px; }
@media (max-width:640px) { .sl-page .sl-promotions { grid-template-columns:1fr; gap:10px; margin-bottom:22px; } .sl-page .sl-promotion { padding:16px 18px; } .sl-page .sl-promotion-title { font-size:17px; } }
