/* Scoped to the rod gallery; intentionally does not change Cocoon site-wide CSS. */
.itbm-rg{--rg-ink:#172923;--rg-green:#28594a;--rg-muted:#60716b;--rg-stroke:#dfe7e1;--rg-surface:#f5f8f5;font-family:inherit;color:var(--rg-ink);max-width:1180px;margin:0 auto 28px;line-height:1.7;container-type:inline-size}
.itbm-rg *{box-sizing:border-box}.itbm-rg a{text-decoration:none}.itbm-rg a:hover{opacity:.85}
.itbm-rg__intro{padding:clamp(24px,4vw,48px);background:#eaf0e9;border:1px solid #d9e4db;border-radius:14px;position:relative;overflow:hidden;margin-bottom:24px}
.itbm-rg__intro:after{content:"";position:absolute;width:290px;height:290px;border:52px solid rgba(51,103,79,.07);border-radius:50%;right:-95px;top:-120px;pointer-events:none}
.itbm-rg__eyebrow{color:var(--rg-green);letter-spacing:.15em;font-size:12px!important;font-weight:800;margin:0 0 12px!important}
.itbm-rg__headline{font-size:clamp(23px,3vw,35px)!important;line-height:1.45!important;color:var(--rg-ink)!important;margin:0 0 14px!important;border:0!important;padding:0!important}
.itbm-rg__lead{font-size:15px;line-height:1.9;max-width:710px;color:#40544b;margin:0 0 20px!important}
.itbm-rg__intro-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.itbm-rg__primary-link{display:inline-flex;align-items:center;gap:18px;background:var(--rg-green);padding:12px 19px;color:#fff!important;border-radius:7px;font-weight:700;font-size:14px}
.itbm-rg__microcopy{font-size:12px;color:#66776e}
.itbm-rg__filters{display:grid;grid-template-columns:minmax(200px,1.5fr) minmax(150px,1fr) minmax(170px,1fr) auto;gap:13px;align-items:end;background:#fff;border:1px solid var(--rg-stroke);padding:18px 20px;border-radius:12px;margin:0 0 30px}
.itbm-rg__field{margin:0;display:block;min-width:0}.itbm-rg__field>span{display:block;font-size:12px;font-weight:700;color:#445a4f;margin:0 0 6px}
.itbm-rg__field input,.itbm-rg__field select{font:inherit;font-size:14px;width:100%;min-width:0;height:43px;padding:8px 11px;box-shadow:none!important;border:1px solid #cdd9d1!important;border-radius:6px!important;background:#fff!important;color:var(--rg-ink)!important;margin:0!important}
.itbm-rg__field input:focus,.itbm-rg__field select:focus{outline:2px solid #b9d2c2;outline-offset:1px}
.itbm-rg__filter-actions{display:flex;align-items:center;gap:11px;min-height:43px}
.itbm-rg__search-button{height:43px;padding:0 16px;border:0;background:var(--rg-green);color:#fff;border-radius:6px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
.itbm-rg__reset-link{font-size:12px;color:var(--rg-muted)!important;white-space:nowrap}
.itbm-rg__section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:1px solid var(--rg-stroke);padding:0 0 11px;margin:0 0 18px}
.itbm-rg__section-title{font-size:21px!important;color:var(--rg-ink)!important;margin:0!important;padding:0!important;border:0!important}
.itbm-rg__section-heading p{font-size:13px;color:var(--rg-muted);margin:0!important;white-space:nowrap}.itbm-rg__section-heading p span{color:#83918a}
.itbm-rg__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.itbm-rg__card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--rg-stroke);border-radius:12px;overflow:hidden;min-width:0;box-shadow:0 5px 18px rgba(25,55,39,.035);transition:box-shadow .15s,transform .15s}
.itbm-rg__card:hover{box-shadow:0 10px 25px rgba(25,55,39,.08);transform:translateY(-2px)}
.itbm-rg__photo{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:#eef2ee}
.itbm-rg__image{display:block;width:100%;height:100%!important;object-fit:cover;object-position:center;margin:0!important;border:0!important;border-radius:0!important}
.itbm-rg__photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9daa9e;font-size:11px;letter-spacing:.21em;font-weight:800;background:linear-gradient(145deg,#edf2ee,#dce7df)}
.itbm-rg__placeholder-line{width:64%;height:3px;border-radius:2px;background:#c8d6cb;transform:rotate(-8deg);margin-bottom:19px;box-shadow:0 7px 0 #d0ddd2}
.itbm-rg__method{position:absolute;left:13px;bottom:13px;font-size:11px;color:var(--rg-ink);background:#fff;padding:4px 9px;border-radius:4px;font-weight:700}
.itbm-rg__card-body{padding:17px 17px 14px;flex:1;display:flex;flex-direction:column}
.itbm-rg__card-title{color:var(--rg-ink)!important;font-size:17px;font-weight:800;line-height:1.6;display:block;margin:0 0 10px}
.itbm-rg__blank{font-size:10px;letter-spacing:.09em;font-weight:800;color:#7c8a80;margin:0 0 5px!important}.itbm-rg__blank span{font-size:13px;letter-spacing:0;font-weight:600;color:var(--rg-green);margin-left:6px;overflow-wrap:anywhere}
.itbm-rg__rod-length{font-size:12px;color:var(--rg-muted);margin:0 0 9px!important}
.itbm-rg__excerpt{font-size:13px;line-height:1.8;color:#637169;margin:3px 0 15px!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.itbm-rg__byline{display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:11px;color:#67756c;margin-top:auto;padding-top:9px}
.itbm-rg__trait{background:var(--rg-surface);border:1px solid #e2e9e2;color:#3e6150;border-radius:20px;padding:2px 7px;white-space:nowrap}
.itbm-rg__stats{display:flex;gap:14px;align-items:center;border-top:1px solid #edf0ed;padding-top:12px;margin-top:14px;font-size:12px;color:#79867c}
.itbm-rg__stats a{margin-left:auto;color:var(--rg-green)!important;font-weight:800;white-space:nowrap}
.itbm-rg__empty{text-align:center;border:1px dashed #baccc0;background:var(--rg-surface);border-radius:12px;padding:clamp(38px,5vw,70px) 20px}
.itbm-rg__empty-symbol{font-size:12px;color:#7d9b88;letter-spacing:.18em;margin:0 0 12px}
.itbm-rg__empty-title{font-size:20px!important;font-weight:800;color:var(--rg-ink)!important;margin:0 0 8px!important}
.itbm-rg__empty p{font-size:14px;color:#687b70;max-width:500px;margin:0 auto!important;line-height:1.85}
.itbm-rg__empty a{display:inline-block;color:var(--rg-green)!important;font-weight:700;font-size:13px;margin-top:19px}
.itbm-rg__pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;margin:29px 0 5px}
.itbm-rg__pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:38px;padding:0 12px;color:var(--rg-green)!important;border:1px solid var(--rg-stroke);background:#fff;border-radius:7px;font-size:13px}
.itbm-rg__pagination a.is-current{background:var(--rg-green);color:#fff!important;border-color:var(--rg-green);font-weight:800}
.itbm-rg__footnote{font-size:11px;color:#8a958d;margin:22px 0 0!important}
@media(max-width:1000px){.itbm-rg__filters{grid-template-columns:repeat(2,minmax(0,1fr))}.itbm-rg__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.itbm-rg__filter-actions{align-self:end}}
@media(max-width:600px){.itbm-rg__intro{padding:23px 18px}.itbm-rg__filters{grid-template-columns:1fr;padding:15px;gap:12px}.itbm-rg__field--search{grid-column:auto}.itbm-rg__grid{grid-template-columns:1fr;gap:16px}.itbm-rg__section-heading{align-items:center}.itbm-rg__section-title{font-size:19px!important}.itbm-rg__section-heading p{font-size:12px}.itbm-rg__lead{font-size:14px}.itbm-rg__intro-actions{align-items:flex-start;flex-direction:column;gap:10px}}

/* v0.1.1 Cocoon compatibility: headings use role=heading to avoid automatic TOC
   and theme H2/H3/H4 decorative bars. The normal page title is unchanged. */
.itbm-rg .itbm-rg__headline,.itbm-rg .itbm-rg__section-title,.itbm-rg .itbm-rg__empty-title{background:transparent!important;background-image:none!important;box-shadow:none!important;text-shadow:none!important;text-decoration:none!important;letter-spacing:normal;min-height:0;line-height:1.45;}
.itbm-rg .itbm-rg__headline:before,.itbm-rg .itbm-rg__headline:after,.itbm-rg .itbm-rg__section-title:before,.itbm-rg .itbm-rg__section-title:after,.itbm-rg .itbm-rg__empty-title:before,.itbm-rg .itbm-rg__empty-title:after{content:none!important;display:none!important;}
@container (max-width: 850px){
  .itbm-rg__filters{grid-template-columns:repeat(2,minmax(0,1fr));}
  .itbm-rg__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .itbm-rg__filter-actions{align-self:end;}
}
@container (max-width: 530px){
  .itbm-rg__filters{grid-template-columns:1fr;}
  .itbm-rg__grid{grid-template-columns:1fr;}
  .itbm-rg__section-title{font-size:19px!important;}
  .itbm-rg__section-heading p{white-space:normal;}
}

/* v0.8.2: compact default search + accessible native details for advanced filters.
   Higher specificity prevents Cocoon form styles from squeezing these controls. */
.itbm-rg__byline a{color:#28594a!important;font-weight:700}
.itbm-rg form.itbm-rg__filters{
 display:block!important;
 margin:0 0 30px!important;
}
.itbm-rg .itbm-rg__basic-filters{
 display:grid;grid-template-columns:minmax(0,2fr) minmax(145px,1fr) auto;
 gap:14px;align-items:end;
}
.itbm-rg .itbm-rg__field{display:block!important;float:none!important;min-width:0!important;max-width:none!important;margin:0!important}
.itbm-rg form.itbm-rg__filters .itbm-rg__field > span{
 display:block!important;line-height:1.4!important;white-space:normal!important;margin:0 0 6px!important;
}
.itbm-rg form.itbm-rg__filters .itbm-rg__field select,
.itbm-rg form.itbm-rg__filters .itbm-rg__field input{
 display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
}
.itbm-rg form.itbm-rg__filters .itbm-rg__filter-actions{
 display:flex!important;gap:10px;align-items:center;justify-content:flex-end;min-width:0;min-height:43px;
}
.itbm-rg form.itbm-rg__filters select:disabled{background:#eff3ef!important;color:#748078!important;opacity:1}
.itbm-rg form.itbm-rg__filters .itbm-rg__advanced{margin-top:14px;border-top:1px solid #edf0ed;padding:10px 0 0}
.itbm-rg .itbm-rg__advanced-toggle{
 display:inline-flex;gap:8px;align-items:center;cursor:pointer;list-style:none;
 padding:4px 2px!important;margin:0!important;font-size:13px;font-weight:700;color:var(--rg-green);
 background:transparent!important;border:0!important;
}
.itbm-rg .itbm-rg__advanced-toggle::-webkit-details-marker{display:none}
.itbm-rg .itbm-rg__advanced-toggle:before{content:'+';display:inline-flex;justify-content:center;align-items:center;width:20px;height:20px;border:1px solid #cdd9d1;border-radius:4px;font-size:17px;line-height:1;font-weight:400}
.itbm-rg .itbm-rg__advanced[open] .itbm-rg__advanced-toggle:before{content:'−'}
.itbm-rg .itbm-rg__advanced-toggle:focus-visible{outline:2px solid var(--rg-green);outline-offset:4px;border-radius:2px}
.itbm-rg .itbm-rg__advanced-opened{display:none}
.itbm-rg .itbm-rg__advanced[open] .itbm-rg__advanced-closed{display:none}
.itbm-rg .itbm-rg__advanced[open] .itbm-rg__advanced-opened{display:inline}
.itbm-rg .itbm-rg__active-label{font-size:11px;font-weight:600;color:#66776e;background:#eaf0e9;border-radius:20px;padding:1px 9px}
.itbm-rg .itbm-rg__advanced-grid{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;
 padding-top:12px;
}
@container (max-width:670px){
 .itbm-rg .itbm-rg__basic-filters{grid-template-columns:repeat(2,minmax(0,1fr));}
 .itbm-rg .itbm-rg__basic-filters > .itbm-rg__field--search{grid-column:1/-1}
 .itbm-rg .itbm-rg__basic-filters > .itbm-rg__filter-actions{align-self:end;justify-content:flex-start}
}
@container (max-width:460px){
 .itbm-rg .itbm-rg__basic-filters,.itbm-rg .itbm-rg__advanced-grid{grid-template-columns:1fr;gap:12px}
 .itbm-rg .itbm-rg__basic-filters > .itbm-rg__field--search{grid-column:auto}
 .itbm-rg .itbm-rg__filter-actions{justify-content:flex-start!important}
}
