/* Angebotsseite: aufklappbare Karten */
.offer-page { width: min(1000px, calc(100% - 120px)); margin: 0 auto; padding: 60px 0 96px; }
.offer-intro { max-width: 700px; margin-bottom: 48px; }
.offer-eyebrow { margin: 0 0 8px; color: var(--primary-color); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.offer-intro h1 { margin: 0 0 18px; color: var(--primary-color); font-size: 38px; }
.offer-intro p, .offer-answer { font-size: 18px; line-height: 1.65; }
.offer-list { display: grid; gap: 18px; }
.offer-item { border: 1px solid var(--border-color); border-radius: var(--radius-medium); background: white; box-shadow: var(--shadow-small); }
.offer-item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 26px 32px; color: #000; font-size: 18px; font-weight: 700; cursor: pointer; list-style: none; }
.offer-item summary::-webkit-details-marker { display: none; }
.offer-item summary::after { content: "+"; flex: 0 0 auto; color: var(--primary-color); font-size: 28px; font-weight: 400; transition: transform .25s ease; }
.offer-item[open] { border-color: rgba(7, 97, 42, .38); }
.offer-item[open] summary::after { transform: rotate(45deg); }
.offer-answer { padding: 0 32px 32px; animation: offer-answer-in .25s ease both; }
.offer-answer > :first-child { margin-top: 0; }.offer-answer > :last-child { margin-bottom: 0; }
.offer-answer h2 { margin: 26px 0 10px; color: var(--primary-color); font-size: 21px; }
.offer-answer p { margin: 0 0 18px; }.offer-answer ul { margin: 0 0 20px; padding-left: 24px; }.offer-answer li + li { margin-top: 7px; }
@keyframes offer-answer-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 900px) { .offer-page { width: calc(100% - 64px); padding: 48px 0 76px; } }
@media (max-width: 600px) { .offer-page { width: calc(100% - 32px); padding: 32px 0 56px; }.offer-intro { margin-bottom: 32px; }.offer-intro h1 { font-size: 30px; }.offer-intro p, .offer-answer { font-size: 16px; line-height: 1.55; }.offer-list { gap: 14px; }.offer-item summary { padding: 20px; font-size: 16px; }.offer-answer { padding: 0 20px 24px; }.offer-answer h2 { margin-top: 22px; font-size: 19px; } }
