/* ShopTownly Events — isolated styles */
.ste-page{padding:42px 18px 80px;background:#f8fafb;min-height:65vh;color:#17242b}
.ste-container{max-width:1200px;margin:auto}
.ste-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.12em;color:#157d86}
.ste-page h1{font-size:clamp(2rem,4vw,3rem);margin:10px 0 12px;line-height:1.15}
.ste-intro{max-width:750px;color:#52636d;margin-bottom:25px}
.ste-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:22px 0 28px}
.ste-filters label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:.88rem}
.ste-filters select,.ste-filters button{min-height:44px;border-radius:9px;border:1px solid #cbd6da;padding:9px 12px;background:white;font:inherit}
.ste-filters button,.ste-actions a{background:#136d77;color:#fff;border:0;font-weight:700;cursor:pointer;text-decoration:none}
.ste-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ste-event{display:block;border:1px solid #dfe7e9;background:#fff;border-radius:14px;padding:18px;color:inherit;text-decoration:none;box-shadow:0 3px 14px #12212a0a;transition:transform .15s,box-shadow .15s}
.ste-event:hover{transform:translateY(-2px);box-shadow:0 9px 24px #12212a18}
.ste-event-now{background:#eef9f0;border-color:#c5e8ce}
.ste-event-today{background:#fff8e6;border-color:#f1dfb1}
.ste-status{display:inline-block;border-radius:50px;padding:5px 10px;font-size:.7rem;font-weight:800;background:#eef1f4;color:#51616b;margin-bottom:13px}
.ste-status.ste-now{background:#d5f0da;color:#216638}
.ste-status.ste-today{background:#ffebbc;color:#855600}
.ste-event-body{display:flex;gap:15px;align-items:start}
.ste-thumb{width:105px;min-width:105px;max-height:155px;object-fit:contain;border-radius:7px;background:#fff}
.ste-event-copy{min-width:0;flex:1}
.ste-date{font-size:.85rem;font-weight:750;color:#147884}
.ste-event h2{font-size:1.22rem;line-height:1.3;margin:6px 0}
.ste-place{color:#56646c;font-size:.86rem}
.ste-event p{font-size:.9rem;line-height:1.5;margin:10px 0;color:#42545c}
.ste-view{display:inline-block;margin-top:8px;font-size:.85rem;font-weight:750;color:#137783}
.ste-empty{padding:35px;background:white;border:1px solid #dfe7e9;border-radius:12px;margin:20px 0}
.ste-back{display:inline-block;margin-bottom:24px;color:#126e7a;font-weight:700}
.ste-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,430px);gap:40px;align-items:start;background:#fff;padding:30px;border-radius:15px;border:1px solid #e1e7e9}
.ste-detail-flyer img{display:block;width:100%;height:auto;max-width:650px;border-radius:10px}
.ste-description{line-height:1.7;margin:25px 0;overflow-wrap:anywhere}
.ste-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.ste-actions a{padding:11px 15px;border-radius:8px}
.ste-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ste-form label{display:flex;flex-direction:column;gap:6px;font-weight:650}
.ste-form input:not([type=checkbox]),.ste-form select,.ste-form textarea{width:100%;max-width:100%;box-sizing:border-box;border:1px solid #cbd5da;border-radius:7px;padding:10px;font:inherit}
.ste-form .ste-wide{grid-column:1/-1}
@media(max-width:760px){.ste-grid,.ste-detail,.ste-form{grid-template-columns:1fr}.ste-detail{padding:18px}.ste-page{padding:28px 12px 60px}.ste-thumb{width:82px;min-width:82px;max-height:125px}.ste-event{padding:14px}.ste-event-body{gap:11px}.ste-form .ste-wide{grid-column:auto}}
