/*
 * .gp-tm-detail — single Testimonial post page.
 *
 * Loaded only on is_singular( 'gp_testimonials' ). The legacy parent
 * single-gp_testimonials.php template gets dropped in favor of the
 * child theme's single template, which emits this structure.
 */

.gp-tm-detail {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px var(--gp-page-gutter) 80px;
    color: var(--gp-text);
    font-family: var(--gp-font-body);
}

.gp-tm-detail__breadcrumb {
    font-family: var(--gp-font-mono);
    font-size: var(--gp-fs-meta-sm);
    letter-spacing: var(--gp-ls-meta);
    text-transform: uppercase;
    color: var(--gp-text-dim);
    margin-bottom: var(--gp-space-6);
    line-height: 1.4;
}
.gp-tm-detail__breadcrumb a { color: var(--gp-gold); text-decoration: none; }
.gp-tm-detail__breadcrumb a:hover { color: var(--gp-gold-deep); }
.gp-tm-detail__breadcrumb-sep,
.gp-tm-detail__breadcrumb-current { color: var(--gp-text-muted); margin: 0 6px; }

.gp-tm-detail__head { margin-bottom: var(--gp-space-7); }
.gp-tm-detail__eyebrow {
    font-family: var(--gp-font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: var(--gp-ls-meta-wider);
    color: var(--gp-gold);
    text-transform: uppercase;
    margin-bottom: 10px;
    line-height: 1;
}
.gp-tm-detail__title {
    font-family: var(--gp-font-display);
    font-size: clamp(36px, 5vw, 64px);
    line-height: 1.05;
    letter-spacing: var(--gp-ls-display-tight);
    text-transform: uppercase;
    margin: 0;
    color: var(--gp-text);
}

.gp-tm-detail__hero {
    margin: 0 0 var(--gp-space-7);
    background: var(--gp-surface);
}
.gp-tm-detail__hero img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 80vh;
    object-fit: contain;
    object-position: center;
    margin: 0 auto;
}

.gp-tm-detail__body {
    font-family: var(--gp-font-body);
    font-size: var(--gp-fs-body);
    line-height: var(--gp-lh-body);
    color: var(--gp-text);
}
.gp-tm-detail__body p {
    margin: 0 0 var(--gp-space-5);
}
.gp-tm-detail__body p:last-child { margin-bottom: 0; }
.gp-tm-detail__body a {
    color: var(--gp-gold);
    text-decoration: underline;
}

.gp-tm-detail__back {
    margin-top: var(--gp-space-8);
    padding-top: var(--gp-space-6);
    border-top: 1px solid var(--gp-border);
}

@media (max-width: 600px) {
    .gp-tm-detail { padding: 28px var(--gp-page-gutter) 56px; }
    .gp-tm-detail__title { font-size: 36px; }
}
