/* Season archive, layout B. Month bars reuse the fisheries list. */
.sg-ssn { --h0: #eef2f6; --h1: #c3d1df; padding-bottom: 40px; }
.sg-ssn h2 { font-size: 28px; line-height: 34px; margin: 30px 0 4px; }
.sg-ssn h3 { font-size: 18px; line-height: 24px; margin: 18px 0 8px; }
.sg-ssn .sub { color: var(--slate); font-size: 14px; margin: 0 0 12px; }
.sg-ssn .sg-intro2-main { padding-top: 16px; max-width: 820px; }
.sg-fc-bar i.ssn b { color: var(--navy); font-weight: 700; }
.sg-fc-bar i.ssn::after { content: ""; display: block; width: 100%; height: 3px; border-radius: 2px; background: var(--brass); }
.sg-ssn .sg-chips a small { color: var(--slate); font-weight: 500; margin-left: 4px; }
.sg-ssn-some-sp { font-size: 14px; color: var(--slate); margin: 10px 0 0; }
.sg-ssn-some-sp a { font-weight: 600; }
.sg-ssn-some { margin-top: 18px; background: #fff; border: 1px solid var(--mist); border-radius: 12px; padding: 4px 16px 12px; }
.sg-ssn-some ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 0 20px; }
.sg-ssn-some li { display: flex; justify-content: space-between; gap: 10px; align-items: center; min-height: 44px; border-top: 1px solid var(--mist); font-size: 14px; }
.sg-ssn-some li a { font-weight: 600; color: var(--navy); display: inline-flex; align-items: center; min-height: 44px; }
.sg-ssn-some li span { color: var(--slate); font-size: 13px; white-space: nowrap; }
.sg-ssn-mo { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.sg-ssn-mo .mo-t { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2px 10px; min-height: 64px; padding: 10px 16px; background: #fff; border: 1px solid var(--mist); border-top: 3px solid var(--brass); border-radius: 10px; text-decoration: none; color: var(--navy); }
.sg-ssn-mo .mo-t b { font: 700 19px/24px var(--sg-font-heading); }
.sg-ssn-mo .mo-t span { grid-column: 1; font-size: 13px; color: var(--slate); }
.sg-ssn-mo .mo-t i { grid-row: 1 / 3; grid-column: 2; font-style: normal; color: var(--harbor); font-size: 22px; }
.sg-ssn-mo .mo-t.is-off { border-top-color: var(--mist); background: var(--paper); }
.sg-ssn-mo .mo-t.is-off i { font-size: 12px; color: var(--slate); }
.sg-ssn-top { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 20px; }
.sg-ssn-top li { display: flex; flex-direction: column; justify-content: center; min-height: 52px; border-top: 1px solid var(--mist); font-size: 14px; padding-bottom: 6px; }
.sg-ssn-top li a { font-weight: 600; color: var(--navy); display: inline-flex; align-items: center; min-height: 44px; }
.sg-ssn-top li span { font-size: 13px; color: var(--slate); }
.sg-ssn-lic { font-size: 13px; color: var(--slate); margin: 10px 0 0; }
.sg-ssn-b { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 28px; align-items: start; }
.sg-ssn-rail { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 14px; }
.sg-ssn-rail .box { background: #fff; border: 1px solid var(--mist); border-radius: 12px; padding: 14px 16px; }
.sg-ssn-rail .box h2 { font-size: 18px; line-height: 24px; margin: 0 0 10px; }
.sg-ssn-rail .sg-ssn-mo { grid-template-columns: minmax(0, 1fr); gap: 8px; }
.sg-ssn-rail .sg-ssn-mo .mo-t { min-height: 52px; padding: 6px 12px; }
.sg-ssn-rail .sg-ssn-mo .mo-t b { font-size: 16px; line-height: 22px; }
.sg-ssn-b .sg-fm-all.is-list .sg-fg { grid-template-columns: 96px minmax(0, 1fr) 210px 92px; column-gap: 16px; grid-template-areas: "photo main mo go" "photo tags mo go"; }
.sg-ssn-b .sg-fm-all.is-list .sg-fg-photo img { width: 96px; }
.sg-ssn-b .sg-fm-all.is-list .sg-fc-tags { align-self: start; }
.sg-ssn-b .sg-fc-sp, .sg-ssn-b .sg-fc-tt { border-radius: 10px; }
.sg-ssn-b .sg-fm-all.is-list .sg-fg-main { align-self: end; }
@media (max-width: 980px) {
  .sg-ssn-b { grid-template-columns: minmax(0, 1fr); }
  .sg-ssn-rail { position: static; order: -1; }
  .sg-ssn-mo, .sg-ssn-top { grid-template-columns: minmax(0, 1fr); }
  .sg-ssn h2 { font-size: 24px; line-height: 30px; }
  .sg-ssn-b .sg-fm-all.is-list .sg-fg { grid-template-columns: 88px minmax(0, 1fr); grid-template-areas: "photo main" "tags tags" "mo mo" "go go"; }
}
@media (max-width: 640px) {
  .sg-ssn .sg-chips a, .sg-ssn .sg-fg-go { min-height: 44px; }
  .sg-ssn .sg-chips a { border-radius: 22px; }
  .sg-ssn .sg-fg-go { border-radius: 8px; }
  .sg-ssn-some li { flex-wrap: wrap; }
}
