.offer-section[hidden] { display: none; }
.offer-section { background: var(--paper-soft, #f7f4ef); }
.offer-card { display: grid; overflow: hidden; border: 1px solid var(--line-strong); border-radius: var(--radius-lg); background: var(--surface, #eee8df); }
.offer-card.has-image { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
.offer-card__media { position: relative; min-height: 280px; }
.offer-card__image { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.offer-card__body { padding: clamp(1.5rem, 4vw, 3.5rem); align-self: center; overflow-wrap: anywhere; }
.offer-card:not(.has-image) .offer-card__body { max-width: 850px; }
.offer-card h2, .offer-card h3 { margin: .8rem 0 1rem; }
.offer-card__text { white-space: pre-line; margin: 0 0 1.2rem; }
.offer-card__validity { font-size: .88rem; font-weight: 700; margin: 0 0 .7rem; }
.offer-card__conditions { font-size: .86rem; color: var(--muted); white-space: pre-line; margin: 0 0 1.4rem; }
.offer-card .btn { margin-top: .6rem; }
.editor-offer-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.editor-offer-photo img { width: 180px; max-height: 160px; object-fit: cover; border-radius: var(--radius); }
.editor-offer-preview { margin-top: 1.5rem; }
.editor-offer-preview .offer-card__body { padding: 1.5rem; }
@media (max-width: 700px) { .offer-card.has-image, .editor-offer-grid { grid-template-columns: 1fr; } .offer-card__media { min-height: 0; height: 240px; } }
