/* GO Products band (home) and page. Continuous Form: ruled sheets, Doto codes, red GO. */
.gop-band { padding: 84px 0; background: var(--bar); border-top: 1.5px dashed var(--perf); border-bottom: 1.5px dashed var(--perf); }
.gop-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 0; border: 1px solid var(--rule); background: var(--sheet); box-shadow: var(--shadow-paper); border-radius: var(--r-card); margin-top: 28px; }
.gop-card { --c: var(--navy); position: relative; display: flex; flex-direction: column; gap: 8px; padding: 22px 22px 20px; border-right: 1.5px dashed var(--perf); border-bottom: 1.5px dashed var(--perf); min-width: 0; }
.gop-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--c); }
.gop-card-top { padding-right: 96px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: .78rem; }
.gop-code { font-family: var(--dot); font-weight: 800; font-size: 1.35rem; color: var(--stamp); line-height: 1; }
.gop-cat { font-family: var(--display); text-transform: uppercase; letter-spacing: .08em; color: var(--ink-2); }
.gop-soon { position: absolute; top: 18px; right: 18px; font-family: var(--display); text-transform: uppercase; letter-spacing: .06em; font-size: .7rem; border: 1.5px solid var(--rule-strong); padding: 2px 6px; border-radius: var(--r-btn); color: var(--ink-2); }
.gop-name { font-family: var(--display); font-size: 1.7rem; line-height: 1.1; margin: 4px 0 0; color: var(--ink); }
.gop-name .go, .gop-hero .go { color: var(--stamp); font-weight: 700; }
.gop-tag { font-weight: 600; margin: 0; color: var(--ink); }
.gop-desc { margin: 0; color: var(--ink-2); font-size: .94rem; line-height: 1.55; flex: 1; }
.gop-compact .gop-desc { display: none; }
.gop-open { align-self: flex-start; margin-top: 8px; }
.gop-hero { padding: 72px 0 36px; }
.gop-hero h1 { max-width: 18ch; }
.gop-page { padding: 24px 0 84px; }
.gop-cat-block { margin-top: 44px; }
.gop-cat-block h2 { display: flex; align-items: baseline; gap: 12px; font-size: clamp(1.5rem, 2.4vw, 2rem); }
.gop-cat-block .gop-grid { margin-top: 16px; }
.gop-cat-desc { margin: 6px 0 0; color: var(--ink-2); }
@media (max-width: 880px) { .gop-band { padding: 56px 0; } .gop-card { border-right: 0; } }
