/* top-lists.html, reviews.html, categories.html, sitemap.html, builder 4. */
.idx-revfeat__foot{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:.35rem}
.idx-more{margin-top:1.25rem}
.idx-verdicts{gap:1rem}
@media (min-width:1024px){.idx-verdicts{grid-template-columns:repeat(3,minmax(0,1fr))}}
.idx-verdicts .gg-verdict{justify-self:start}
.idx-vsfeat{display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;padding:1.1rem;border-radius:var(--gg-r-xl);background:#fff;border:1px solid var(--gg-line);box-shadow:var(--gg-sh-1)}
@media (min-width:1024px){.idx-vsfeat{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2rem;padding:1.5rem;align-items:center}}
.idx-vsfeat .gg-vshead{margin-top:0}
.idx-vsfeat__body{display:grid;gap:.6rem;justify-items:start}
.idx-vsfeat__body h3{font-size:clamp(1.25rem,1.05rem + .8vw,1.6rem);line-height:1.2}
.idx-vsfeat__body h3 a{color:var(--gg-ink);text-decoration:none}
.idx-vsfeat__body h3 a:hover{color:var(--gg-green-800);text-decoration:underline}
.idx-vsfeat__body p{color:var(--gg-ink-2)}
.idx-vsfeat .gg-rounds{margin-top:0;width:100%}
@media (min-width:768px){.idx-vsfeat .gg-round{grid-template-columns:7rem 1fr 1fr}}
.gg-card--planned:hover,.gg-vs--planned:hover{transform:none}
.gg-group__h .gg-filters__count{max-width:34rem}
.sm-end{margin-top:1.5rem}
.sm-end a{font-weight:700}
.gg-vs__media{overflow:hidden}
.gg-vs__media img{position:absolute;inset:0;width:100%;height:100%}
.gg-endgrid--team{grid-template-columns:minmax(0,1fr)!important}
.gg-catcard__media img{position:absolute;inset:0;width:100%;height:100%}

/* ---- round 2: planned pages (ideas with no page yet): chip by the title, muted, no link, no lift ---- */
.gg-planned-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin:0}
.gg-card--planned,.gg-vs--planned,.gg-mini--planned,.gg-gmini--planned{background:#fbfcfa;box-shadow:none}
.gg-card--planned .gg-card__media img,.gg-vs--planned .gg-vs__media img,.gg-mini--planned img,.gg-gmini--planned img{filter:grayscale(.55);opacity:.72}
.gg-card--planned:hover,.gg-vs--planned:hover{transform:none;box-shadow:none;border-color:var(--gg-line)}
.gg-card--planned:hover .gg-card__media img{transform:none}
.gg-mini--planned:hover{box-shadow:none;border-color:var(--gg-line)}
.gg-card--planned .gg-card__title,.gg-vs--planned :is(h2,h3,h4),.gg-mini--planned :is(h2,h3,h4),.gg-gmini--planned b{color:var(--gg-ink-2)}
.gg-gmini--planned:hover b{color:var(--gg-ink-2)}
/* the "Coming next" list (.gg-coming) lives in listing.css */
/* round 2 index blocks */
.idx-hublinks{display:flex;flex-wrap:wrap;gap:0 1.1rem;margin:0}
.idx-vsfeat{align-items:start}
@media (min-width:1024px){.idx-vsfeat{align-items:start}.idx-vsfeat .gg-vshead{align-self:start}}
/* categories: 7 cards with no orphan. The first card spans two columns and lies on its side */
@media (min-width:640px){
  .gg-catcards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gg-catcards>.gg-catcard:first-child{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .gg-catcards>.gg-catcard:first-child .gg-catcard__media{aspect-ratio:auto;min-height:13rem}
  .gg-catcards>.gg-catcard:first-child .gg-catcard__ico{bottom:auto;top:1rem;left:1rem}
  .gg-catcards>.gg-catcard:first-child .gg-catcard__body{align-content:center;padding:1.3rem 1.3rem 1.3rem}
}
@media (min-width:1100px){.gg-catcards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:640px) and (max-width:1023px){.idx-verdicts>.gg-value:last-child:nth-child(odd){grid-column:1/-1}}

/* ---- tidy pass 2026-10-18: planned lists as four group cards with their titles folded; method as four tiles ---- */
.idx-groups{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
@media (min-width:768px){.idx-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
.idx-groups>.gg-group{display:grid;gap:.75rem;align-content:start;margin:0;padding:1rem;border-radius:var(--gg-r-l);background:#fff;border:1px solid var(--gg-line);box-shadow:var(--gg-sh-1)}
.idx-groups>.gg-group+.gg-group{margin-top:0}
.idx-groups .gg-group__h{margin:0}
.idx-groups .gg-group__h :is(h2,h3){font-size:1.15rem}
.idx-groups .gg-soon>.gg-coming{grid-template-columns:minmax(0,1fr)}
.idx-groups .gg-coming>li:last-child:nth-child(odd){grid-column:auto}
.idx-groups .gg-gmini{box-shadow:none}
.idx-nolab{margin-top:1rem}
/* the featured top list on phones: the hole number sits on the photo, so the name gets the row */
@media (max-width:767px){
  .gg-toplist .gg-scorecard__row{grid-template-columns:4rem minmax(0,1fr);grid-template-areas:"img pick" "img shop";gap:.1rem .8rem;padding:.75rem .8rem}
  .gg-toplist .gg-scorecard__row>.gg-hole{position:absolute;left:.4rem;top:.45rem;z-index:1;width:1.9rem;height:1.9rem;font-size:.9rem;box-shadow:0 0 0 2px #fff}
  .gg-toplist .gg-scorecard__row>.gg-hole .gg-hole__pin{display:none}
  .gg-toplist .gg-scorecard__img{width:4rem;height:4rem;grid-row:1/span 2;margin-top:.35rem}
  .gg-toplist .gg-scorecard__shop{margin-top:.15rem}
  /* review 2026-10-18 (P3-22): six dark buttons in a stack outweighed the names; on phones they are outlined */
  .gg-toplist .gg-scorecard__shop{--b-bg:#fff;--b-fg:var(--gg-green-800);--b-bd:var(--gg-line-2)}
  .gg-toplist__media{aspect-ratio:auto;height:40vw}
}
@media (max-width:639px){.gg-pagehero__photo{aspect-ratio:16/8}}
/* reviews index on phones: each round's two sides side by side, verdict chip beside its heading, a shorter photo */
@media (max-width:767px){
  .idx-vsfeat .gg-round{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:.75rem;padding:.75rem .85rem}
  .idx-vsfeat .gg-round__name{grid-column:1/-1}
  .idx-revfeat .gg-revfeat__media{aspect-ratio:16/9}
  .idx-verdicts .gg-value{padding:.85rem .95rem;gap:.35rem}
}
/* categories on phones: each card lies on its side, photo left, name and one line right */
@media (max-width:639px){
  .idx-catrows{gap:.75rem}
  .idx-catrows .gg-catcard{flex-direction:row;align-items:stretch}
  .idx-catrows .gg-catcard__media{flex:0 0 34%;aspect-ratio:auto;min-height:6.75rem}
  .idx-catrows .gg-catcard__ico{left:auto;right:-1.15rem;bottom:auto;top:50%;transform:translateY(-50%);width:2.3rem;height:2.3rem;border-radius:12px}
  .idx-catrows .gg-catcard__body{align-content:center;gap:.25rem;padding:.8rem .9rem .8rem 1.7rem}
  .idx-catrows .gg-catcard :is(h2,h3){font-size:1.02rem;line-height:1.25}
  .idx-catrows .gg-catcard p{font-size:.88rem;line-height:1.4}
}
/* review 2026-10-18 (P3-20): site map cards keep their own height and stack in columns, so a short list leaves no blank card */
@media (min-width:640px){.gg-sitemap{display:block;columns:2;column-gap:1rem}.gg-sitemap section{break-inside:avoid;margin-bottom:1rem}}
@media (min-width:1024px){.gg-sitemap{columns:3}}
/* review 2026-10-18 (P3-22): every group card has the same shape (title, hub links under it, folded row at the foot),
   so cards in a row line up whatever their title length */
.idx-groups>.gg-group{display:flex;flex-direction:column}
.idx-groups .gg-group__h{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.4rem}
.idx-groups>.gg-group>.gg-soon:last-child{margin-top:auto}
