/* the swipeable guide row, shared by the guides home and every guide page */
.gr { display: flex; gap: clamp(1rem, 2vw, 1.75rem); overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--gut, 1.5rem);
  padding: .5rem var(--gut, 1.5rem) 1.5rem; scrollbar-width: none; cursor: grab; -webkit-overflow-scrolling: touch; }
.gr::-webkit-scrollbar { display: none; }
.gr.is-drag { cursor: grabbing; scroll-snap-type: none; }
.gk { flex: 0 0 clamp(13rem, 21vw, 17.5rem); scroll-snap-align: start; text-decoration: none; color: inherit; user-select: none; }
.gk img { display: block; width: 100%; height: auto; aspect-ratio: 1000 / 1414; object-fit: cover; border-radius: 14px; box-shadow: var(--sc-e2);
  transition: transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s; pointer-events: none; }
.gk:hover img { transform: translateY(-6px) rotate(-1deg); }
.gk__no { display: block; margin-top: 1rem; font-size: .8rem; color: var(--blue, #3F5698); }
.gk__name { display: block; margin-top: .2rem; font-size: 1.2rem; font-weight: 500; letter-spacing: -0.01em; }
.gk__th { display: block; margin-top: .15rem; font-size: .9rem; opacity: .7; }
.gk__line { display: block; margin-top: .5rem; font-size: .9rem; line-height: 1.45; opacity: .75; max-width: 17rem; }
.gr__nav { display: flex; gap: .6rem; padding: 0 var(--gut, 1.5rem); }
.gr__nav button { width: 3rem; height: 3rem; border-radius: 999px; border: 1.5px solid currentColor; background: transparent; color: inherit; font-size: 1.2rem; cursor: pointer; opacity: .85; }
.gr__nav button:hover { opacity: 1; }
