/* Oferta de rodas: a fotografia real e as três modalidades da BRA. */
.wheel-offer:not([open]) { display: none; }
.wheel-offer { width: min(800px, calc(100% - 32px)); max-width: none; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: auto; overscroll-behavior: contain; color: var(--ink); background: var(--white); border: 0; border-top: 5px solid var(--signal); box-shadow: 0 24px 80px rgb(13 43 82 / 28%); }
.wheel-offer::backdrop { background: rgb(13 43 82 / 65%); }
html.wheel-offer-open, .wheel-offer-open body { overflow: hidden; }
.wheel-offer-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
.wheel-offer-photo { margin: 0; display: grid; place-items: center; padding: 42px 24px 26px; background: var(--white); }
.wheel-offer-photo img { width: 100%; height: 330px; object-fit: contain; }
.wheel-offer-content { min-width: 0; padding: 54px 32px 30px; background: var(--fog); }
.wheel-offer .eyebrow { margin-bottom: 14px; color: var(--blue); font-size: .75rem; }
.wheel-offer h2 { margin-bottom: 18px; color: var(--navy); font-size: clamp(2.1rem, 4vw, 3.3rem); line-height: .98; }
.wheel-offer-modes { padding: 0 0 0 16px; margin: 0 0 20px; list-style: none; border-left: 3px solid var(--signal); color: var(--navy); font-weight: 800; font-size: .95rem; line-height: 1.85; }
.wheel-offer-note { margin-bottom: 20px; color: var(--muted); font-size: .78rem; line-height: 1.65; }
.wheel-offer-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.wheel-offer-actions .button { width: 100%; box-shadow: none; }
.wheel-offer-actions .text-link { min-height: 44px; align-items: center; margin: 0; font-size: .7rem; }
.wheel-offer-close { position: absolute; top: 8px; right: 8px; width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 0; background: var(--white); color: var(--navy); font-size: 1.8rem; line-height: 1; }
.wheel-offer-close:hover { background: var(--navy); color: var(--white); }
.wheel-offer-reopen { padding: 5px 0; min-height: 44px; border: 0; color: inherit; background: transparent; text-align: left; font-size: inherit; }
.wheel-offer-reopen:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 580px) {
  .wheel-offer { width: calc(100% - 24px); max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); }
  .wheel-offer-layout { grid-template-columns: minmax(0, 1fr); }
  .wheel-offer-photo { padding: 16px 60px 12px; }
  .wheel-offer-photo img { height: 135px; }
  .wheel-offer-content { padding: 22px; }
  .wheel-offer h2 { font-size: 2.2rem; margin-bottom: 14px; }
  .wheel-offer-modes { font-size: .88rem; margin-bottom: 14px; }
  .wheel-offer-note { margin-bottom: 14px; }
}
@media (prefers-reduced-motion: reduce) { .wheel-offer .button { transition: none; transform: none; } }
