.offer { background: var(--color-text); color: var(--color-white); }
.offer__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.7fr); align-items: center; gap: clamp(3rem, 8vw, 8rem); }
.offer .eyebrow { color: #d8b879; }
.offer__content h2 { max-width: 13ch; }
.offer__content > p:not(.eyebrow) { max-width: 36rem; margin-top: var(--space-5); color: rgba(255,255,255,0.76); font-size: var(--font-size-400); }
.offer__conditions { display: grid; gap: var(--space-2); margin-block: var(--space-6); padding-left: 1.25rem; color: rgba(255,255,255,0.72); font-size: var(--font-size-200); }
.offer .button--primary { background: var(--color-white); color: var(--color-text); }
.offer .button--primary:hover { background: #e9e9e9; }
.offer__visual { position: relative; min-height: 35rem; overflow: hidden; transform: rotate(1.5deg); border: 0.65rem solid var(--color-white); background: #4a3a36; box-shadow: 0 1.25rem 3rem rgba(38,20,22,0.25); }
.offer__visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(0.82) contrast(1.04); }
.offer__visual figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: var(--space-4); background: linear-gradient(transparent, rgba(23,23,21,0.78)); color: var(--color-white); font-size: var(--font-size-100); text-align: right; }
@media (max-width: 767px) {
  .offer__grid { grid-template-columns: 1fr; }
  .offer__visual { min-height: 28rem; grid-row: 1; }
  .offer .button { width: 100%; }
}
