/* Fechamento da oferta: conteúdo do kit e decisão em um único quadro. */
.offer-section { padding-block: 88px 64px; background: var(--forest); }
.offer-heading { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 64px; align-items: end; margin-bottom: 42px; }
.offer-heading .eyebrow { margin-bottom: 22px; color: #d8e5b2; }
.offer-heading h2 { font-size: clamp(36px, 3.8vw, 51px); line-height: 1.13; letter-spacing: -.035em; }
.offer-heading h2 em { color: #d8e5b2; }
.offer-heading > p { margin: 0 0 2px; font-size: 18px; line-height: 1.75; color: #d4dfcb; max-width: 39ch; }
.offer-section .offer-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 0; align-items: stretch; border: 1px solid #d2d9c7; border-radius: 6px 36px 6px 6px; overflow: hidden; background: var(--white); color: var(--ink); }
.offer-copy { padding: 38px 42px 0; min-width: 0; }
.offer-product-heading { display: flex; align-items: center; gap: 18px; }
.offer-file-icon { display: grid; place-items: center; width: 58px; height: 66px; flex: 0 0 58px; background: #e9eedf; border: 1px solid #c9d5ba; border-radius: 4px 17px 4px 4px; color: var(--forest); }
.offer-file-icon svg { width: 31px; height: 31px; }
.offer-product-label { margin-bottom: 8px; font-size: 14px; line-height: 1.5; letter-spacing: .055em; color: #5b684f; }
.offer-product-heading h3 { font: 400 34px/1.12 var(--serif); letter-spacing: -.04em; }
.offer-section .offer-copy > .offer-product-description { margin: 24px 0; max-width: none; font-size: 18px; line-height: 1.65; color: #56624f; }
.offer-section .offer-includes { margin: 0; padding: 0; color: var(--ink); }
.offer-section .offer-includes li { display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 17px 0; border-top: 1px solid #e1e5d9; }
.offer-section .offer-includes svg { flex: 0 0 20px; width: 20px; height: 20px; margin-top: 4px; color: #526b3c; }
.offer-includes strong { display: block; font-size: 18px; font-weight: 600; line-height: 1.45; }
.offer-includes li span { display: block; margin-top: 5px; color: #59634f; font-size: 16px; line-height: 1.6; }
.offer-file-summary { display: flex; align-items: flex-start; gap: 13px; margin: 7px -42px 0; padding: 22px 42px; background: #f0f2e9; border-top: 1px solid #dce2d2; }
.offer-file-summary > svg { flex: 0 0 22px; width: 22px; height: 22px; margin-top: 3px; color: #536a40; }
.offer-file-summary strong, .offer-file-summary span { display: block; font-size: 16px; line-height: 1.65; }
.offer-file-summary span { margin-top: 4px; color: #59634f; }
.offer-section .price-card { width: auto; max-width: none; justify-self: stretch; padding: 38px 36px 30px; background: #e9eedf; border: 0; border-left: 1px solid #d2d9c7; display: flex; flex-direction: column; align-items: flex-start; }
.offer-section .price-tag { display: inline-block; padding: 6px 11px; border: 1px solid #bdcbaa; border-radius: 3px; color: #405535; font-size: 14px; font-weight: 600; letter-spacing: .045em; }
.offer-section .price-card h3 { margin: 20px 0 0; font-size: 31px; line-height: 1.2; letter-spacing: -.035em; }
.offer-section .price-rule { width: 100%; margin-block: 23px; background: #cbd5bf; }
.offer-section .old-price { gap: 8px; color: #59634f; font-size: 16px; line-height: 1.5; }
.offer-section .old-price s { font-size: 20px; }
.offer-section .price-caption { margin-top: 14px; color: #47583d; font-size: 16px; line-height: 1.5; }
.offer-section .price { display: flex; align-items: baseline; gap: 10px; margin: 0; font-size: 112px; line-height: 1.07; letter-spacing: -.065em; color: var(--forest); }
.offer-section .price > span { padding: 0; font-size: 26px; letter-spacing: -.025em; }
.offer-saving { padding: 7px 12px; margin-top: 8px; background: #d6e1c6; color: #354d2b; border-radius: 3px; font-size: 16px; line-height: 1.5; }
.offer-section .price-detail { margin: 21px 0 25px; color: #4f5d43; font-size: 16px; line-height: 1.65; }
.offer-section .buy-button { min-height: 62px; width: 100%; margin-top: auto; padding: 16px 19px; gap: 16px; font-size: 17px; font-weight: 600; text-align: left; line-height: 1.45; border-radius: 4px 14px 4px 4px; background: var(--forest); color: var(--white); }
.offer-section .buy-button:hover { background: #152f24; }
.offer-section .buy-button svg { flex: 0 0 22px; width: 22px; height: 22px; }
.offer-section .buy-button:focus-visible { outline: 3px solid #42592f; outline-offset: 4px; }
.offer-section .purchase-note { align-self: center; margin: 13px 0 0; color: #56624b; font-size: 16px; line-height: 1.55; }
.offer-closing { display: flex; justify-content: center; align-items: center; gap: 9px; margin: 28px 0 0; font-size: 16px; line-height: 1.7; text-align: center; color: #d4dfcb; }
.offer-closing > span { display: block; width: 24px; height: 1px; margin-right: 7px; background: #aabd8b; }
.offer-closing strong { color: #e0eabc; font-weight: 400; }
.offer-mobile-break { display: none; }
@media (max-width: 1100px) {
  .offer-heading { gap: 36px; grid-template-columns: 1.5fr 1fr; }
  .offer-heading h2 { font-size: 40px; }
  .offer-section .offer-layout { grid-template-columns: 1.2fr 1fr; }
  .offer-copy { padding: 32px 30px 0; }
  .offer-file-summary { margin-inline: -30px; padding-inline: 30px; }
  .offer-section .price-card { padding: 32px 28px 28px; }
  .offer-product-heading h3 { font-size: 30px; }
}
@media (max-width: 900px) {
  .offer-section { padding-block: 64px 48px; }
  .offer-heading { grid-template-columns: 1fr; gap: 22px; margin-bottom: 32px; }
  .offer-heading > p { max-width: 60ch; }
  .offer-section .offer-layout { grid-template-columns: 1fr; }
  .offer-section .price-card { border-left: 0; border-top: 1px solid #d2d9c7; padding: 32px; }
  .offer-section .price-card h3 { font-size: 34px; }
  .offer-section .buy-button { margin-top: 0; }
  .offer-closing { display: block; max-width: 52ch; margin: 26px auto 0; }
  .offer-closing > span { display: none; }
}
@media (max-width: 480px) {
  .offer-heading h2 { font-size: 38px; line-height: 1.14; }
  .offer-heading h2 br { display: none; }
  .offer-heading h2 em { display: block; margin-top: 6px; }
  .offer-section .offer-layout { border-top-right-radius: 28px; }
  .offer-copy { padding: 28px 22px 0; }
  .offer-product-heading { gap: 13px; align-items: flex-start; }
  .offer-file-icon { width: 44px; height: 53px; flex-basis: 44px; }
  .offer-file-icon svg { width: 26px; height: 26px; }
  .offer-product-label { font-size: 14px; letter-spacing: .02em; }
  .offer-product-heading h3 { font-size: 30px; }
  .offer-section .offer-copy > .offer-product-description { margin-block: 22px; }
  .offer-section .offer-product-description br { display: none; }
  .offer-section .offer-includes li { gap: 10px; padding-block: 18px; }
  .offer-file-summary { margin-inline: -22px; padding: 22px; }
  .offer-section .price-card { padding: 28px 22px; }
  .offer-section .price-card h3 { font-size: 30px; }
  .offer-section .price { font-size: 108px; }
  .offer-section .buy-button { font-size: 17px; padding-inline: 16px; }
  .offer-mobile-break { display: block; }
}
@media print { .offer-section .offer-layout { break-inside: avoid; } }
