.partner-ad {
  max-width: 760px;
  margin: 28px auto 0;
  padding: 14px 16px;
  display: grid;
  grid-template-columns: minmax(150px, .8fr) minmax(0, 1.5fr);
  align-items: center;
  gap: 16px;
  border: 1px solid #d8deda;
  border-left: 3px solid #6b7a71;
  background: #f7f9f7;
}

.partner-ad-copy {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.partner-ad-label { font-size: 10px; font-weight: 800; color: #68736d; }
.partner-ad-copy strong { font-size: 14px; color: #17231c; }
.partner-ad-copy small { font-size: 11px; line-height: 1.5; color: #68736d; }
.partner-ad-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }

.partner-ad-link {
  position: relative;
  min-width: 0;
  padding: 10px 12px;
  display: grid;
  gap: 4px;
  align-content: center;
  border: 1px solid #d8deda;
  background: #fff;
  color: #17231c;
  text-decoration: none;
}

.partner-ad-link strong { font-size: 12px; line-height: 1.35; }
.partner-ad-link span { color: #126c5d; font-size: 10px; font-weight: 800; }
.partner-ad .affiliate-pixel { position: absolute; width: 1px !important; height: 1px !important; opacity: 0; pointer-events: none; }
.partner-ad-link:focus-visible { outline: 3px solid #217b68; outline-offset: 2px; }

@media (max-width: 600px) {
  .partner-ad { grid-template-columns: 1fr; gap: 10px; padding: 12px; }
  .partner-ad-links { grid-template-columns: 1fr; }
  .partner-ad-link { min-height: 56px; }
}

@media print { .partner-ad { display: none !important; } }
