/* Same look as /plant-import/catalog/ (src/pages/plant-import/catalog/index.astro) */
  #p-genus .sub-hero .ttl h1.ja {
    margin: 0;
    font-size: 15px;
  }

  #p-genus {
    background: #F4F8F0;
  }

  body:has(#p-genus.on) {
    background: #F4F8F0 !important;
  }

  #p-genus .zk-card i {
    font-family: "Times New Roman",Times,"Liberation Serif",serif !important;
    font-style: italic !important;
    letter-spacing: 0 !important;
    font-size: 15px !important;
  }

  .page#p-genus>.sub-hero+section.sec:not(#z1):not(#z2):not(#z3) {
    padding-top: 32px !important;
  }

  #p-genus .zk-filter {
    background: rgb(244,248,240) !important;
  }

  /* スマホ：スクロール時は並び替え・絞り込みだけ追従し、ヘッダーは追従しない（原種カタログと同じ） */
  @media (max-width:760px) {
    .page#p-genus>.sub-hero+section.sec:not(#z1):not(#z2):not(#z3) {
      padding-top: 20px !important;
    }
    body:has(#p-genus.on) .site-header {
      position: absolute;
    }
    #p-genus .zk-filter {
      top: 0 !important;
    }
  }

  /* 一覧へのボタン（ヒーロー） */
  #p-genus .gx-jump {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
    padding: 12px 24px;
    border-radius: 999px;
    background: #fff;
    color: var(--green);
    font-family: var(--f-jp-h);
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .06em;
    text-decoration: none;
  }

  #p-genus .gx-jump svg {
    width: 16px;
    height: 16px;
  }

  /* 属の解説 */
  #p-genus .gx {
    background: #fff;
    border-radius: 24px;
    padding: clamp(28px,5vw,64px) clamp(20px,5vw,72px);
  }

  #p-genus .gx-ttl {
    margin-bottom: clamp(24px,3vw,36px);
  }

  /* スマホ：長い属名（About Pachyphytum など）も画面に収める（.ttl .en の文字サイズは global.css で !important） */
  @media (max-width:760px) {
    #p-genus .gx-ttl .en {
      font-size: min(64px,12vw) !important;
    }
  }

  #p-genus .gx-top {
    display: grid;
    grid-template-columns: minmax(0,1.25fr) minmax(0,1fr);
    gap: clamp(24px,4vw,52px);
    align-items: start;
  }

  #p-genus .gx-top.no-photo {
    grid-template-columns: minmax(0,1fr);
    max-width: 46em;
    margin-inline: auto;
  }

  #p-genus .gx-photo {
    margin: 0;
  }

  #p-genus .gx-photo img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3/2;
    object-fit: cover;
    border-radius: 18px;
    background: #EEF3E8;
  }

  #p-genus .gx-lead {
    margin: 0 0 24px;
    font-size: 15px;
    line-height: 2;
  }

  #p-genus .gx-facts {
    display: grid;
    grid-template-columns: 8em minmax(0,1fr);
    column-gap: 8px;
    margin: 0;
    padding: 18px 20px;
    background: #F4F8F0;
    border-radius: 16px;
    font-size: 13px;
    line-height: 1.7;
    row-gap: 8px;
  }

  #p-genus .gx-facts dt {
    font-weight: 700;
    color: var(--green);
  }

  #p-genus .gx-facts dd {
    margin: 0;
  }

  #p-genus .gx-facts a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  #p-genus .gx-rest {
    margin-top: clamp(32px,4vw,52px);
  }

  #p-genus .gx-text {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 36px clamp(28px,4vw,56px);
  }

  #p-genus .gx h3 {
    margin: 0 0 12px;
    font-size: 17px;
    font-weight: 900;
    color: var(--green);
    line-height: 1.5;
  }

  #p-genus .gx-text p {
    margin: 0;
    font-size: 15px;
    line-height: 2;
  }

  #p-genus .gx-text p+p {
    margin-top: 1em;
  }

  #p-genus .gx-photo figcaption {
    margin-top: 6px;
    font-size: 11px;
    line-height: 1.6;
    color: var(--ink-3,#8A8A8A);
  }

  #p-genus .gx-photo figcaption a {
    color: inherit;
  }

  #p-genus .gx-refs {
    margin-top: clamp(32px,4vw,48px);
    padding-top: 24px;
    border-top: 1px solid #E3EADB;
  }

  #p-genus .gx-refs h3 {
    font-size: 14px;
  }

  #p-genus .gx-refs ul {
    margin: 0;
    padding-left: 1.2em;
    font-size: 13px;
    line-height: 1.8;
  }

  #p-genus .gx-refs a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
    word-break: break-word;
  }

  #p-genus .gx-refs a {
    font-family: "Times New Roman",Times,"Liberation Serif",serif;
  }

  #p-genus .gx-refs p {
    margin: 12px 0 0;
    font-size: 11.5px;
    line-height: 1.7;
    color: var(--ink-3,#8A8A8A);
  }

  /* スマホ：解説は「続きを読む」まで最初の部分だけ（catalog/genus-more.js が .fold を付ける） */
  #p-genus .gx.fold .gx-rest {
    display: none;
  }

  #p-genus .gx-more {
    display: block;
    width: 100%;
    margin-top: 20px;
    padding: 14px 20px;
    border: 1.5px solid var(--green);
    border-radius: 999px;
    background: #fff;
    color: var(--green);
    font: inherit;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
  }

  #p-genus .gx-more[hidden] {
    display: none;
  }

  @media (max-width:1000px) {
    #p-genus .gx-top,
    #p-genus .gx-text {
      grid-template-columns: minmax(0,1fr);
    }
  }

  @media (max-width:760px) {
    #p-genus .gx-lead,
    #p-genus .gx-text p {
      font-size: 14px;
      line-height: 1.9;
    }
    #p-genus .gx-lead {
      margin-bottom: 18px;
    }
    #p-genus .gx-photo {
      margin-inline: -8px;
    }
    #p-genus .gx-facts {
      padding: 14px 16px;
      grid-template-columns: 7.5em minmax(0,1fr);
      font-size: 12.5px;
    }
  }

  /* 解説と一覧のあいだは詰める */
  .page#p-genus>section.gx-sec:not(#z1):not(#z2):not(#z3) {
    padding-bottom: 0 !important;
  }

  .page#p-genus>section.gx-list:not(#z1):not(#z2):not(#z3) {
    padding-top: clamp(56px,7vw,96px) !important;
  }