/* The offer pages (2026-10-12) — assets/css/offer.css. Rides door.css's tokens and components (the medal, the blurb,
   .offer, .btn-gold, .shield, the gate, the sticky bar). No inline styles anywhere: style-src 'self' is enforced. */
.op-sender{padding:0 0 18px;gap:10px}
.op-sender.house .kicker{letter-spacing:.3em}
.op-hero{border-top:0}
.op-hero h1{font-family:var(--font-display);font-weight:300;font-size:clamp(1.9rem,7.2vw,2.8rem);line-height:1.1;letter-spacing:-.015em;text-wrap:balance}
.op-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.op-price b{font-family:var(--font-display);font-size:1.9rem;font-weight:400;color:var(--gold)}
.op-price span{font-size:13px;color:var(--muted)}
.op-line{color:var(--grey);max-width:52ch}
.op-terms{font-size:12.5px;color:var(--muted);max-width:58ch}
.op-list{list-style:none;display:grid;gap:8px}
.op-list li{position:relative;padding-left:22px;color:var(--text)}
.op-list li::before{content:'';position:absolute;left:0;top:.62em;width:10px;height:2px;background:var(--gold)}
.op-list.muted li{color:var(--grey)}
.op-two{display:grid;gap:22px}
.op-cover{display:flex;gap:14px;margin-top:6px}
.op-cover img{width:80px;height:106px;object-fit:cover;box-shadow:0 8px 18px rgba(0,0,0,.6)}
.op-alt{font-size:13px}
.op-alt a{color:var(--gold);font-weight:700}
.btn-gold.small{padding:12px 18px}
@media (min-width:720px){.op-two{grid-template-columns:1fr 1fr}}
