/* My Tacho only: screenshot-led product showcase. */
.product-hero { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); align-items: center; }
.tacho-hero-preview { margin: 0; text-align: center; }
.tacho-hero-preview img { display: block; width: min(100%, 320px); height: auto; margin: auto; border-radius: 24px; box-shadow: 0 20px 50px #102d4226; }
.tacho-hero-preview figcaption, .tacho-tablet-preview figcaption { margin-top: 16px; color: var(--muted); font-size: .88rem; }
.tacho-hero-preview figcaption span { display: block; }
.tacho-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px 24px; }
.tacho-feature-shot { margin: 0; padding: 24px; background: #eaf1f2; border: 1px solid #d1dfe1; border-radius: 20px; display: flex; flex-direction: column; }
.tacho-feature-shot:nth-child(2n) { background: #edf3ed; }
.tacho-feature-shot h3 { font-size: 1.22rem; margin-top: 10px; }
.tacho-feature-shot p { color: var(--muted); font-size: .95rem; margin-bottom: 24px; }
.tacho-feature-shot a { display: block; margin-top: auto; border-radius: 15px; overflow: hidden; box-shadow: 0 8px 24px #102d4214; }
.tacho-feature-shot img { display: block; width: 100%; height: auto; }
.tacho-gallery a:focus-visible, .tacho-hero-preview a:focus-visible, .tacho-tablet-preview a:focus-visible { outline: 3px solid #177a76; outline-offset: 6px; }
.tacho-sample-note { color: var(--muted); font-size: .88rem; margin-top: 24px; }
.tacho-gallery-hint { display: none; }
.tacho-tablet-preview { margin: 0 0 64px; padding: 28px; border-radius: 24px; background: #102d42; text-align: center; }
.tacho-tablet-preview img { display: block; width: 100%; height: auto; border-radius: 12px; }
.tacho-tablet-preview figcaption { color: #dfefef; }
@media(max-width: 800px) { .product-hero { grid-template-columns: 1fr; } .tacho-hero-preview { margin-top: 24px; } .tacho-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 560px) { .tacho-gallery { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 16px; padding: 6px 4px 20px; } .tacho-feature-shot { flex: 0 0 86%; padding: 20px; scroll-snap-align: start; } .tacho-gallery-hint { display: block; color: var(--muted); font-size: .9rem; } .tacho-tablet-preview { padding: 12px; } }
