.gf-recap-card {
    background: #faf8f4;
    border: 1px solid #e2dcce;
    border-radius: 14px;
    padding: 28px 32px;
    margin-top: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.gf-recap-title {
    margin: 0 0 20px;
    font-size: 1.3rem;
    color: #3c2f22;
    border-bottom: 2px solid #b08d57;
    padding-bottom: 12px;
}

.gf-recap-row {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 16px;
    padding: 12px 0;
    border-bottom: 1px solid #ece5d8;
}

.gf-recap-row:last-child {
    border-bottom: none;
}

.gf-recap-label {
    flex: 0 0 230px;
    font-weight: 600;
    color: #7a6a52;
}

.gf-recap-value {
    flex: 1 1 260px;
    color: #2f2a22;
    line-height: 1.5;
}

.gf-recap-sub {
    display: inline-block;
    font-style: italic;
    color: #8a7c65;
    margin-left: 4px;
}

@media (max-width: 640px) {
    .gf-recap-label {
        flex-basis: 100%;
    }
}