.san-lm { box-sizing:border-box; }
.san-lm-heading { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.san-lm-heading h2 { margin:.15rem 0; }
.san-lm-heading p { margin:.3rem 0; }
.san-lm-heading a { color:#844300; font-weight:700; }
.san-lm-label { color:#874500; font-size:.72rem; font-weight:700; letter-spacing:.1em; }
.san-lm-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.san-lm:not(.wrap) .san-lm-grid { grid-template-columns:1fr; }
.san-lm-card { min-width:0; border:1px solid #e7c985; border-radius:10px; background:#fff9e9; padding:1.2rem; }
.san-lm-card h3 { font-size:1.1rem; margin:.3rem 0 .7rem; line-height:1.35; }
.san-lm-card h3 a { color:#282014; }
.san-lm-place,.san-lm-date { margin:.35rem 0; }
.san-lm-price { font-size:1.15rem; font-weight:700; margin:.7rem 0; }
.san-lm-price span { font-size:.85rem; font-weight:400; }
.san-lm-button { display:inline-flex; align-items:center; min-height:44px; padding:0 1rem; border-radius:6px; color:#241900; background:#ffbd27; font-weight:700; text-decoration:none; }
.san-lm-button:focus-visible,.san-lm a:focus-visible { outline:3px solid #694500; outline-offset:3px; }
.san-lm-note { font-size:.85rem; color:#655a4c; margin:.8rem 0 0; }
@media(max-width:700px) { .san-lm-heading { align-items:start; flex-direction:column; } .san-lm-grid { grid-template-columns:1fr; } }
