/* Scoped to /offers/: first action precedes the product journey and pricing. */
.offer-page { overflow-wrap: anywhere; }
.offer-page h2 { font-size: clamp(26px, 3.4vw, 42px); line-height: 1.2; }
.offer-page h3 { font-size: clamp(22px, 2.6vw, 30px); line-height: 1.3; }
.offer-hero { padding-top: 48px; padding-bottom: 48px; }
.offer-hero h1 { max-width: 980px; font-size: clamp(32px, 4.2vw, 58px); line-height: 1.12; letter-spacing: -.045em; margin-bottom: 20px; }
.offer-hero h1 span { color: var(--site-blue); }
.offer-intro { max-width: 760px; font-size: 18px; line-height: 1.6; margin-bottom: 22px; }
.offer-trial { min-height: 48px; }
.offer-page .offer-terms { font-size: 13px; line-height: 1.7; max-width: 650px; color: var(--site-muted); margin: 14px 0 20px; }
.offer-badge { display: inline-block; padding: 10px 14px; border: 1px solid var(--site-blue); border-radius: 8px; font-weight: 650; font-size: 15px; }
.offer-deadline { max-width: 720px; font-size: 14px; line-height: 1.7; }
.pdf-hero { display:grid; grid-template-columns:1.1fr 1fr; gap:32px; align-items:center; }
.pdf-hero figure { margin:100px 0 0; min-width:0; align-self:start; }
.pdf-hero img { width:100%; height:auto; display:block; border:1px solid var(--site-line); border-radius:12px; }
.pdf-hero figcaption { font-size:12px; line-height:1.7; margin-top:10px; color:var(--site-muted); }
.pdf-actions { display:flex; flex-wrap:wrap; gap:12px; }
.offer-urgency { border-left:4px solid var(--site-blue); padding:4px 18px 14px; margin:24px 0; background:hsl(var(--cv-surface-card)); }
.pdf-hero .offer-urgency { margin:16px 0; padding:4px 12px 10px; }
.pdf-hero .offer-urgency .offer-badge { margin:6px 0; padding:0; border:0; }
.pdf-hero .offer-urgency .offer-deadline { margin:6px 0; }
.pdf-hero .offer-urgency .text-link { font-size:13px; }
.pdf-workflow { padding:24px 0 48px; }
.pdf-workflow>div { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin:24px 0; }
.pdf-workflow p { line-height:1.8; }
.offer-journey { padding-top: 40px; }
.offer-stage { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 40px; padding: 40px 0; border-bottom: 1px solid var(--site-line); }
.offer-stage p { line-height: 1.8; }
.offer-stage figure { margin: 0; min-width: 0; }
.offer-stage img { display: block; width: 100%; height: auto; border: 1px solid var(--site-line); border-radius: 10px; }
.offer-stage figcaption { font-size: 12px; line-height: 1.7; padding-top: 10px; color: var(--site-muted); }
.offer-more, .offer-faq, .offer-final { padding-top: 45px; padding-bottom: 45px; }
.offer-more-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }
.offer-more p { line-height: 1.8; }
.offer-repeat { padding: 36px 0 0; }
.offer-request { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; margin-top: 32px; margin-bottom: 64px; padding: 32px; border: 1px solid var(--site-line); border-radius: 12px; background: hsl(var(--cv-surface-card)); }
.offer-request form[hidden], .offer-request button[hidden] { display: none; }
.offer-request label { display: block; margin: 16px 0 8px; font-size: 14px; }
.offer-request input { width: 100%; min-height: 46px; border: 1px solid hsl(var(--cv-border-strong)); border-radius: 6px; background: hsl(var(--cv-surface-main)); color: hsl(var(--cv-text-primary)); padding: 12px; font: inherit; }
.offer-request .form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.offer-request [role=status] { font-size: 14px; line-height: 1.7; }
.offer-faq details { border-bottom: 1px solid var(--site-line); padding: 18px 0; }
.offer-faq summary { cursor: pointer; font-weight: 650; min-height: 44px; line-height: 1.7; }
.offer-faq p { max-width: 850px; line-height: 1.8; }
.offer-page .pricing-section { padding-top: 32px; }
.offer-page .plan h3 { color: hsl(var(--cv-text-on-light)); }
.offer-final { border-top: 1px solid var(--site-line); padding-bottom: 100px; }
@media(max-width: 800px) {
  .pdf-hero,.pdf-workflow>div { grid-template-columns:1fr; }
  .pdf-hero figure { margin-top:0; }
  .pdf-actions a { width:100%; }
  .offer-hero { padding-top: 28px; padding-bottom: 28px; }
  .offer-intro { font-size: 16px; }
  .offer-hero .offer-trial, .offer-repeat .offer-trial, .offer-final .offer-trial { width: 100%; }
  .offer-stage, .offer-more-grid, .offer-request { grid-template-columns: 1fr; gap: 22px; }
  .offer-stage { padding: 28px 0; }
  .offer-request { padding: 22px; }
  .offer-request .button { width: 100%; }
}
@media(prefers-reduced-motion: reduce) { .offer-page .button { transition: none; transform: none; } }
