/* ============================================================
   Gastineau Tour Snapshot — [tour_snapshot]
   /gastineau-tour-snapshot/gastineau-tour-snapshot.css
   ============================================================ */

/* ── Wrapper ────────────────────────────────────────────────── */
.gg-tour-snapshot {
    background: var(--gg-color-surface-subtle, #f7f5f2);
    border-radius: 8px;
    padding: 0.5rem;
}

.gg-snapshot__inner {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    align-items: stretch;
}

/* ── Columns ────────────────────────────────────────────────── */
.gg-snapshot__col {
    padding-right: clamp(1rem, 2vw, 1.75rem);
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    overflow: hidden;
}

.gg-snapshot__col + .gg-snapshot__col {
    border-left: 1px solid var(--gg-color-border, #e2ddd7);
    padding-left: clamp(1rem, 2vw, 1.75rem);
}

/* ── Icon ───────────────────────────────────────────────────── */
.gg-snapshot__icon {
    width: 3rem;
    height: 3rem;
    color: var(--gg-color-brand, #2a5c45);
}

.gg-snapshot__icon-img {
    width: 3rem;
    height: 3rem;
    display: block;
    margin: 0 auto;
}

.gg-snapshot__icon svg {
    width: 100%;
    height: 100%;
}

/* ── Column title ───────────────────────────────────────────── */
.gg-snapshot__col-title {
    font-size: 1.2rem !important;
    font-weight: normal !important;
    margin: 1rem 0 0.5rem 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* ── Primary value ──────────────────────────────────────────── */
.gg-snapshot__primary {
    margin: 0 0 0.25rem 0 !important;
    line-height: 1.15 !important;
}

/* ── Secondary / breakdown ──────────────────────────────────── */
.gg-snapshot__secondary {
    font-size: 1rem !important;
    margin: 0.375rem 0 0 0 !important;
    line-height: 1.5 !important;
}

/* ── Column-specific icon overrides ────────────────────────── */
.gg-snapshot__col--group .gg-snapshot__icon {
    height: auto;
    width: 4.5rem;
    margin-top: -.65rem;
}

.gg-snapshot__col--group .gg-snapshot__icon-img {
    width: 4.5rem;
    height: auto;
}

.gg-snapshot__col--group .gg-snapshot__col-title {margin-top:.2rem !important;}

/* ── Boot prints ────────────────────────────────────────────── */
.gg-snapshot__boots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    height: 3rem;
}

.gg-snapshot__boot {
    display: inline-flex;
    width: 2rem;
    height: 2rem;
    flex-shrink: 0;
}

.gg-snapshot__boot img,
.gg-snapshot__boot svg {
    width: 100%;
    height: 100%;
    display: block;
}

.gg-snapshot__boot--filled {
    opacity: 1;
}

.gg-snapshot__boot--empty {
    opacity: 0.25;
}

/* ── Best for list ──────────────────────────────────────────── */
.gg-snapshot__list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left;
}

.gg-snapshot__list li {
    line-height: 1.6 !important;
    padding-left: 1.25em !important;
    position: relative !important;
    margin-bottom: 0 !important;
}

.gg-snapshot__list--yes li::before {
    content: '✓';
    position: absolute;
    left: 0;
    font-size: 0.75rem;
    top: 0.25em;
    color: var(--gg-color-brand, #2a5c45);
}

/* ── Back-to-ship guarantee ─────────────────────────────────── */
.gg-snapshot__guarantee {
    line-height: 1.5 !important;
    margin: 0 !important;
}

.gg-snapshot__guarantee--none {
    font-size: 1rem !important;
    color: var(--gg-color-text-muted, #6b6560) !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

/* ── Responsive: tablet (2-col) ─────────────────────────────── */
@media (max-width: 900px) {
    .gg-snapshot__inner {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;
    }

    .gg-snapshot__col + .gg-snapshot__col {
        border-left: none;
        padding-left: 0;
    }

    .gg-snapshot__col {
        padding-right: 0;
        padding-bottom: 1.5rem;
        border-bottom: 1px solid var(--gg-color-border, #e2ddd7);
    }

    .gg-snapshot__col--guarantee {
        grid-column: 1 / -1;
        border-bottom: none;
    }
}

/* ── Responsive: mobile (stacked) ──────────────────────────── */
@media (max-width: 560px) {
    .gg-tour-snapshot {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }

    .gg-snapshot__inner {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .gg-snapshot__col {
        padding: 1.25rem 0;
        border-bottom: 1px solid var(--gg-color-border, #e2ddd7);
    }

    .gg-snapshot__col:last-child {
        border-bottom: none;
    }
}