/* Actual ad inventory: every defined placement has a visible home. */
.oc-partner-sitewide,.oc-partner-footer-placement,.oc-home-sponsor,.oc-marketplace-placement,.oc-guides-placement{margin-top:24px;margin-bottom:25px}
.oc-partner-ad{border:1px solid var(--line);background:var(--panel);display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 22px;position:relative;color:var(--ink);min-width:0}
.oc-partner-ad-disclosure{position:absolute;top:4px;right:12px;text-transform:uppercase;letter-spacing:.09em;font-size:9px;color:var(--muted)}
.oc-partner-ad-image{display:block;min-width:0}.oc-partner-ad-image img{display:block;width:100%;height:95px;object-fit:contain}
.oc-partner-ad-copy{min-width:0;padding:8px 0}
.oc-partner-ad-copy small{font-size:11px;color:var(--accent);font-weight:700}
.oc-partner-ad-copy h2{font-size:19px;line-height:1.3;margin:4px 0 5px;overflow-wrap:anywhere}
.oc-partner-ad-copy p{font-size:12px;line-height:1.6;color:var(--muted);margin:0;overflow-wrap:anywhere}
.oc-partner-ad-action{display:inline-flex;align-items:center;justify-content:center;min-width:125px;max-width:200px;text-align:center;padding:12px 15px;font-size:13px;font-weight:750;color:var(--accent-ink);background:var(--accent)}
.oc-partner-ad-action:hover{filter:brightness(1.06)}
.oc-partner-ad-sitewide_banner{grid-template-columns:minmax(0,260px) minmax(0,1fr) auto}
.oc-partner-ad-sitewide_banner .oc-partner-ad-image img{height:110px}
.oc-partner-ad-marketplace_card,.oc-partner-ad-guides_card{grid-template-columns:150px minmax(0,1fr) auto}
.oc-partner-ad-footer_partner{grid-template-columns:110px minmax(0,1fr) auto;padding:13px 18px}
.oc-partner-ad-footer_partner .oc-partner-ad-image img{height:60px}
@media(max-width:760px){.oc-partner-ad{grid-template-columns:1fr;gap:10px;padding:20px}.oc-partner-ad-image img,.oc-partner-ad-sitewide_banner .oc-partner-ad-image img{height:115px;object-position:left}.oc-partner-ad-action{justify-self:start}.oc-partner-ad-disclosure{position:static}.oc-partner-ad-footer_partner{grid-template-columns:1fr}}

/* One visible slide at a time; navigation controls do not create a second partner block. */
.oc-partner-rotation-slide[hidden]{display:none!important}
.oc-partner-rotation-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:10px 2px 0;color:var(--muted);font-size:11px}
.oc-partner-rotation-dots{display:flex;align-items:center;gap:9px}
.oc-partner-rotation-dots button{width:11px;height:11px;border:1px solid var(--accent);border-radius:50%;background:transparent;cursor:pointer;padding:0}
.oc-partner-rotation-dots button[aria-current=true]{background:var(--accent)}
.oc-partner-rotation-dots button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* Do not reserve the picture column for text-only partner campaigns. */
.oc-partner-ad-no-image{grid-template-columns:minmax(0,1fr) auto}
.oc-partner-ad-has-image{grid-template-columns:minmax(110px,200px) minmax(0,1fr) auto}
.oc-partner-ad-sitewide_banner.oc-partner-ad-has-image{grid-template-columns:minmax(140px,260px) minmax(0,1fr) auto}
.oc-partner-ad-marketplace_card.oc-partner-ad-has-image,.oc-partner-ad-guides_card.oc-partner-ad-has-image{grid-template-columns:minmax(100px,150px) minmax(0,1fr) auto}
.oc-partner-ad-footer_partner.oc-partner-ad-has-image{grid-template-columns:minmax(80px,110px) minmax(0,1fr) auto}
.oc-partner-ad-copy{width:100%;max-width:830px}
.oc-partner-ad-copy h2{overflow-wrap:break-word;word-break:normal;max-width:100%;font-size:clamp(17px,2vw,22px)}
.oc-partner-ad-copy p{max-width:800px}
.oc-partner-ad-action{justify-self:end}
@media(max-width:760px){
 .oc-partner-ad-no-image,.oc-partner-ad-has-image,.oc-partner-ad-sitewide_banner.oc-partner-ad-has-image,.oc-partner-ad-marketplace_card.oc-partner-ad-has-image,.oc-partner-ad-guides_card.oc-partner-ad-has-image,.oc-partner-ad-footer_partner.oc-partner-ad-has-image{grid-template-columns:minmax(0,1fr)}
 .oc-partner-ad-action{justify-self:start}
}
