/* Ergänzt nur die neuen Angebotsseiten. Bestehende Schrift-, Farb- und Form-Tokens bleiben unverändert. */
.offers-page h2 { margin-top: 22px; max-width: 18ch; font-size: var(--h2); }
.offers-page h3 { font-size: var(--h3); }
/* Match the live homepage's original type treatments, not the generated comps. */
.offer-hero-title { margin-top: 24px; font-size: clamp(2.5rem, 5.6vw, 4.7rem); max-width: 18ch; }
.offers-page .hero-block .lead { font-size: clamp(1.12rem,1.9vw,1.38rem); line-height: 1.6; max-width: 58ch; margin-top: 30px; }
.offers-page #solutions-heading { font-size: clamp(2.1rem,5vw,3.6rem); }
.offer-intro { margin-top: 28px; max-width: 62ch; }
.offer-actions { display: flex; gap: 28px; align-items: center; flex-wrap: wrap; margin-top: 38px; }
.offer-pillars { display: flex; gap: 26px; align-items: center; flex-wrap: wrap; margin-top: 58px; font-family:var(--font-body); font-weight:600; font-size:.95rem; }
.offer-pillars > span + span { border-left: 1px solid var(--color-line); padding-left: 26px; }
.offer-grid { margin-top: 44px; }
.offer-card { display: flex; flex-direction: column; align-items: flex-start; }
.offer-card h3 { margin: 22px 0 16px; }
.offer-card .bullets { margin: 24px 0 28px; }
.offer-card .link-arrow { margin-top: auto; }
.offer-flow { list-style: none; display: grid; grid-template-columns: repeat(5, 1fr); padding: 0; margin: 44px 0 32px; background: var(--color-cream); color: var(--color-navy); border-radius: 14px; }
.offer-flow li { padding: 30px 18px; border-right: 1px solid var(--color-line); min-width: 0; }
.offer-flow li:last-child { border: 0; background: var(--color-coral); border-radius: 0 14px 14px 0; }
.offer-flow span, .offer-flow strong, .offer-flow small { display: block; }
.offer-flow span { font-size: .85rem; margin-bottom: 22px; }
.offer-flow strong { font-size: 1.05rem; }
.offer-flow small { font-size: .85rem; line-height: 1.5; margin-top: 8px; }
.offer-split-note { display: flex; justify-content: space-between; gap: 30px; align-items: center; }
.offer-split-note p { max-width: 66ch; }
.offer-split-note a { flex-shrink: 0; }
.offer-products { display: grid; grid-template-columns: 1.25fr 1fr; gap: 44px; margin-top: 48px; align-items: start; }
.offer-products article:last-child { margin-top: 76px; }
.offer-product-image { display: block; background: var(--color-panel); border: 1px solid var(--color-line); border-radius: 14px; overflow: hidden; margin-bottom: 26px; }
.offer-product-image img { width: 100%; height: auto; aspect-ratio: 1.6; object-fit: cover; object-position: top left; transition: transform .3s; }
.offer-product-image:hover img { transform: scale(1.025); }
.offer-products h3 { margin: 12px 0; }.offer-products p { margin-bottom: 18px; }
.offer-pricing { margin: 44px 0 36px; gap: 64px; }
.offer-pricing article { border-top: 1px solid var(--color-coral); padding-top: 28px; }
.offer-pricing h3 { margin: 20px 0 16px; }.offer-pricing .checks { margin-top: 24px; }
.offer-timeline-heading { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.offer-four { font-size: 10rem; font-family: var(--font-display); font-weight:600; line-height: 1; color: var(--color-coral-ink); }
.offer-timeline { display: grid; grid-template-columns: repeat(4,1fr); gap: 28px; list-style: none; padding: 0; margin-top: 42px; }
.offer-timeline li { border-left: 1px solid var(--color-line); padding-left: 22px; }
.offer-timeline h3 { margin: 16px 0 12px; }
.offer-control { display: grid; grid-template-columns: 1fr 1.4fr; gap: 64px; }
.offer-control .link-arrow { margin-top: 26px; }.offer-control article { padding: 24px 0; border-bottom: 1px solid var(--color-line); }.offer-control article:first-child { padding-top: 0; }.offer-control article p { margin-top: 12px; }
.offer-final { text-align: center; }.offer-final h2 { max-width: 22ch; margin-inline: auto; }.offer-final .lead { max-width: 52ch; margin: 26px auto 32px; }.offer-signature { margin-top: 26px; font-size: .9rem; }
.offer-detail { max-width: 820px; }.offer-detail h2 { margin-top: 0; }.offer-detail p { margin-top: 20px; }.offer-detail .bullets { margin-top: 26px; }.offer-faq details { padding: 24px 0; border-bottom: 1px solid var(--color-line); }.offer-faq summary { font-weight: 600; cursor: pointer; font-size: 1.1rem; }.offer-faq details p { margin-top: 16px; }
@media(max-width:1000px) { .offer-flow { grid-template-columns: 1fr; }.offer-flow li { border-right: 0; border-bottom: 1px solid var(--color-line); padding: 20px 24px; }.offer-flow span { float: left; margin: 2px 24px 30px 0; }.offer-flow li:last-child { border-radius: 0 0 14px 14px; }.offer-timeline { grid-template-columns: 1fr 1fr; }.offer-split-note { flex-direction: column; align-items: flex-start; } }
@media(max-width:700px) { .offer-products,.offer-control { grid-template-columns: 1fr; gap: 40px; }.offer-products article:last-child { margin-top: 0; }.offer-pricing { gap: 36px; }.offer-four { display:none; }.offer-pillars { gap: 16px; }.offer-pillars .bars-mark { width: 100%; }.offer-pillars > span + span { padding-left:16px; }.offer-actions { gap:22px; }.offer-final .btn { white-space:normal; text-align:center; } }
@media(max-width:420px) { .offer-timeline { grid-template-columns: 1fr; }.offer-pillars > span + span { border: 0; padding: 0; } }
@media(prefers-reduced-motion:reduce) { .offer-product-image img { transition:none; } }
