/* Hoiku V1.1: scoped, readable, responsive, editorial first. */
.hoiku-monetize { margin: 24px auto 56px; max-width: 1400px; padding: 0 2rem; }
.hoiku-monetize__inner { padding: clamp(24px, 4vw, 48px); border-radius: 18px; background: linear-gradient(125deg,#f2fbff 0%,#e8f5fb 70%,#fff5eb 125%); border: 1px solid #d7e9f1; color: #15374b; }
.hoiku-monetize__eyebrow { letter-spacing: .12em; font-weight: 800; color: #087b91; font-size: .75rem; margin: 0 0 10px; }
.hoiku-monetize h2 { font-size: clamp(1.35rem, 3vw, 2.15rem); line-height: 1.5; margin: 0 0 14px; }
.hoiku-monetize__inner > p:not(.hoiku-monetize__eyebrow) { max-width: 72ch; font-size: .95rem; line-height: 1.85; color: #4b667a; }
.hoiku-monetize__topics { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; margin: 28px 0 20px; }
.hoiku-monetize__topics > a { min-width:0; display:flex; flex-direction:column; gap:11px; padding: 22px; border:1px solid #cfe4ee; border-radius:12px; background:#fff; text-decoration:none; color:#12384c; }
.hoiku-monetize__topics > a strong { font-size:1.05rem; }
.hoiku-monetize__topics > a span { color: #056e84; font-weight:700; font-size:.84rem; }
.hoiku-monetize__topics > a:hover, .hoiku-monetize__topics > a:focus-visible { border-color: #20a4bc; box-shadow: 0 5px 16px rgb(11 81 110 / 10%); }
.hoiku-monetize__ads { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; margin-top:30px; }
.hoiku-monetize__offer { background:#fff; border:1px solid #cedfe8; border-radius:12px; padding:21px; min-width:0; display:flex; flex-direction:column; gap:11px; }
.hoiku-monetize__pr { display:inline-block; color:#79471c; font-size:.78rem; font-weight:800; }
.hoiku-monetize__offer h3 { font-size:1.04rem; line-height:1.5; color:#15374b; }
.hoiku-monetize__offer > p:not(.hoiku-monetize__pr) { color:#526a7b; font-size:.87rem; line-height:1.7; }
.hoiku-monetize__merchant { font-weight:700; }
.hoiku-monetize__cta { display:block; margin-top:auto; border-radius:8px; background:#0a7894; padding:12px; text-align:center; color:#fff !important; font-size:.87rem; font-weight:800; text-decoration:none; }
.hoiku-monetize__cta:hover { background:#07566b; }
.hoiku-monetize__disclosure { color:#53667b; font-size:.8rem; padding-top:16px; line-height:1.8; }
.hoiku-monetize__empty { background:#f1f8fb; padding:24px; border:1px dashed #9abdc9; border-radius:12px; line-height:1.9; color:#315467; }
.hoiku-monetize__empty p { margin-top:8px; }
.hoiku-search-results { max-width:1100px; padding:45px 2rem; margin:0 auto; }
.hoiku-search-results h1 { margin-bottom:12px; font-size:clamp(1.45rem,3vw,2.15rem); }
.hoiku-search-results__note { color:#486579; line-height:1.85; margin-bottom:28px; }
.hoiku-search-results__list { display:grid; gap:16px; }
.hoiku-search-results__item { padding:20px; background:#fff; border:1px solid #d2e4ec; border-radius:12px; }
.hoiku-search-results__item a { color:#087a92; font-weight:700; }
.hoiku-search-results__item p { margin-top:8px; line-height:1.75; }
.hoiku-search-results__item small { display:block; margin-top:9px; color:#5e7180; }
.hoiku-search-results__page a, .hoiku-search-results__page span { display:inline-block; padding:8px 13px; margin:14px 4px 0; border-radius:6px; border:1px solid #d2e4ec; }
.hoiku-search-results__page .current { background:#087a92; color:#fff; }
.hoiku-monetize a:focus-visible, .hoiku-search-results a:focus-visible { outline:3px solid #f9a03f; outline-offset:3px; }
@media (max-width:900px) {
  .hoiku-monetize__topics, .hoiku-monetize__ads { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .hoiku-monetize { padding:0 1rem; }
  .hoiku-monetize__inner { padding:22px 17px; }
  .hoiku-monetize__topics, .hoiku-monetize__ads { grid-template-columns:1fr; }
  .hoiku-search-results { padding:30px 1rem; }
  .hoiku-search-form .search-bar { display:flex; flex-direction:column; }
  .hoiku-search-form .search-input { min-width:0; width:100%; }
}

/* Owner-approved A8 creative: do not stretch or replace the advertiser image. */
.hoiku-monetize__a8-wrap { margin-top:auto; padding:10px 0 0; min-width:0; }
.hoiku-a8-toy-banner { max-width:100%; }
.hoiku-a8-toy-banner > a { display:inline-block; max-width:100%; line-height:0; }
.hoiku-a8-toy-banner > a img { display:inline-block; max-width:100%; height:auto; vertical-align:middle; }
.hoiku-a8-toy-banner > img[width="1"][height="1"] { display:block; width:1px; height:1px; }
.hoiku-a8-toy-banner > a:focus-visible { outline:3px solid #f9a03f; outline-offset:4px; }
