/* Refer a business (comp 6 Oct 2026): reuses demo.css (road signs, paper card, stamp) and adds the tear-off line and the Home box. */
.rf .dm-road { margin-top: 4px; }
.rf-reward { margin: 22px 0 0; font: 500 13px var(--mono); color: var(--muted); }
.rf-part { display: block; margin-top: 14px; font: 600 11.5px var(--mono); color: #B23B2E; letter-spacing: .04em; }
.rf-tear { position: relative; margin: 22px -34px 6px; border-top: 2px dashed #8A826F; }
.rf-tear span { position: absolute; left: 22px; top: -13px; font-size: 18px; color: #6B6455; background: #F4F1EA; padding: 0 6px; }
.rf-tear::before, .rf-tear::after { content: ''; position: absolute; top: -10px; width: 18px; height: 18px; border-radius: 50%; background: var(--bg); }
.rf-tear::before { left: -9px; } .rf-tear::after { right: -9px; }
.rf-slip .boxes .rf-ok span { font-size: 14px; }
.rf-slip .foot { margin-top: 70px; }
.rf-slip .booked { bottom: 96px; }
/* Home box */
.rf-home { padding: 30px 0 10px; }
.rf-strip { display: grid; grid-template-columns: auto 1fr auto; gap: 34px; align-items: center; border: 1px dashed var(--line-2); border-radius: 18px; padding: 26px 34px; background: var(--bg-2); }
.rf-mini { width: 150px; background: #F4F1EA; border-radius: 4px; padding: 14px 14px 18px; transform: rotate(-4deg); box-shadow: 0 16px 24px -16px rgba(0,0,0,.8); display: grid; gap: 9px; position: relative; }
.rf-mini b { font: 700 10px var(--rf-font); letter-spacing: .08em; color: #2A2823; border-bottom: 1.5px solid #2A2823; padding-bottom: 5px; }
.rf-mini i { display: block; height: 1px; border-bottom: 1px dotted #8A826F; }
.rf-mini .rf-cut { border-top: 1.5px dashed #8A826F; font-size: 11px; color: #6B6455; line-height: 0; padding-top: 2px; }
.rf-hand { font: 700 26px/1 'Caveat', cursive; color: var(--brand); }
.rf-copy h2 { font-size: 28px; margin: 6px 0 6px; } .rf-copy p { margin: 0; color: var(--soft); }
@media (max-width: 860px) { .rf-strip { grid-template-columns: 1fr; } .rf-mini { display: none; } }
.rf-slip .two { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); }
@media (max-width: 760px) { .rf-tear { margin-left: -20px; margin-right: -20px; } .apt-wrap { overflow: hidden; padding: 8px 0 12px; } }
@media (max-width: 760px) { .rf-slip .two { grid-template-columns: 1fr; } .rf-slip .boxes .rf-ok { text-align: left; } }
