.reference-section { margin-block: 30px; }
.reference-offer-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); gap: 20px; align-items: start; margin-block: 20px; }
.reference-offer-card { min-width: 0; padding: 24px; border: 1px solid #dfe7e3; border-radius: 20px; background: #fff; overflow-wrap: anywhere; }
.reference-offer-card h3 { font-size: 1.18rem; line-height: 1.55; margin-block: 12px; }
.reference-price-kind { color: #516b62; margin-block-end: 0; }
.reference-price { margin-block: 4px 12px; color: #196b5b; font-size: clamp(1.5rem,4vw,2rem); font-weight: 700; }
.reference-price--expired { color: #68716e; text-decoration: line-through; }
.reference-option-list,.reference-inclusions { margin-block: 18px; }
.reference-option-list>div,.reference-inclusions>div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 16px; padding-block: 8px; border-bottom: 1px solid #eef2ef; }
.reference-option-list dd,.reference-inclusions dd { margin: 0; text-align: end; }
.reference-expired { color: #8a3926; font-weight: 650; }
.reference-actions { display: flex; gap: 18px; flex-wrap: wrap; align-items: center; margin-block-start: 18px; }
.reference-filter-form { display: grid; grid-template-columns: 2fr 1fr; gap: 16px; margin-block: 24px; }
.reference-filter-form label { display: grid; gap: 8px; min-width: 0; }
.reference-filter-form input,.reference-filter-form select { width: 100%; min-height: 48px; box-sizing: border-box; padding: 12px; border: 1px solid #cad7d0; border-radius: 12px; font: inherit; background: #fff; }
@media(max-width:700px) { .reference-filter-form { grid-template-columns: 1fr; } .reference-offer-card { padding: 20px; } .reference-offer-grid { grid-template-columns: 1fr; } }
