/**
 * Valoración Cirugía Estética — estilos específicos.
 * Se carga DESPUÉS de valoracion-capilar.css (que aporta el grueso de .vt-*).
 * Aquí solo lo propio de cirugía: grid de guías de fotos, guía dinámica,
 * pasos de medidas y la rejilla de 7 fotos sin imagen de referencia.
 */

/* ---- Bloque CTA de inicio del wizard (beneficios + prueba social) ---- */
.vce-cta-benefits {
    list-style: none;
    margin: 0 auto 26px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 780px;
}
.vce-cta-benefit {
    display: flex;
    align-items: center;
    gap: 7px;
    background: var(--white, #fff);
    border: 1px solid var(--border, #e3e9ee);
    border-radius: 999px;
    padding: 7px 14px;
    font-size: 13px;
    color: var(--text-primary, #0C1B2A);
    box-shadow: 0 1px 4px rgba(12, 27, 42, 0.07);
}
.vce-cta-benefit svg { width: 15px; height: 15px; color: var(--accent, #1D3250); flex-shrink: 0; }
.vce-cta-benefit strong { font-weight: 700; }
.vce-cta-trust {
    margin-top: 16px;
    font-size: 14px;
    color: var(--text-secondary, #5F7A8A);
}
.vce-cta-trust .stars { color: #F5B301; letter-spacing: 1px; margin-right: 4px; }
.vce-cta-trust strong { color: var(--text-primary, #0C1B2A); }

@media (max-width: 600px) {
    .vce-cta-benefits { gap: 7px; }
    .vce-cta-benefit { font-size: 12.5px; padding: 7px 13px; width: 100%; justify-content: center; }
}

/* Botón grande arriba (debajo del subtítulo); beneficios debajo */
.vt-body-cta .vce-cta-btn {
    font-size: 18px;
    padding: 18px 42px;
    margin-bottom: 6px;
}
.vt-body-cta .vce-cta-btn svg { width: 22px; height: 22px; }
.vt-body-cta .vce-cta-benefits { margin-top: 22px; }

/* Menos espacio entre el subtítulo ("…sin compromiso.") y el botón */
.vt-valoracion-section .section-header { margin-bottom: 14px; }
.vt-valoracion-section .vt-body-cta { padding-top: 0; }
@media (max-width: 600px) {
    .vt-body-cta .vce-cta-btn { font-size: 16px; padding: 15px 26px; width: 100%; justify-content: center; }
}

/* Wizard sobre blanco: se separa de la sección de guías (--bg-light) sin tinte de color */
.vt-valoracion-section {
    background: var(--white);
    border-top: 1px solid var(--border);
}

/* "(opcional)" junto al título de la pregunta */
.vt-question__opt {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-muted, #98a8b3);
    margin-left: 4px;
}

/* El "em" del título del hero es navy por defecto; sobre la foto no se lee → turquesa de marca */
.hero-servicio--photo .hero-servicio__title em { color: var(--hoja); }

/* ---- Selector de guías de fotos por tipo de cirugía (botones + panel) ---- */
.vce-guias-tabs {
    max-width: 760px;
    margin: 8px auto 24px;
}
.vce-guias-tabs__btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 0 0 22px;
}
.vce-guia-tab {
    border: 1px solid var(--border, #dbe3ea);
    background: var(--white, #fff);
    color: var(--text-primary, #0C1B2A);
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    padding: 10px 16px;
    border-radius: 999px;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
}
.vce-guia-tab:hover { border-color: var(--accent, #1D3250); }
.vce-guia-tab.is-active {
    background: var(--accent, #1D3250);
    border-color: var(--accent, #1D3250);
    color: #fff;
}
.vce-guias-tabs__panel {
    margin: 0;
    text-align: center;
}
.vce-guias-tabs__panel img {
    display: block;
    max-width: 100%;
    max-height: 340px;
    margin: 0 auto;
    border-radius: var(--radius, 12px);
    border: 1px solid var(--border, #e3e9ee);
    background: var(--bg-soft, #f4f7f9);
}
.vce-guias-tabs__panel figcaption {
    margin-top: 14px;
    font-size: 15px;
    font-weight: 600;
    color: var(--text-primary, #0C1B2A);
}

@media (max-width: 600px) {
    .vce-guia-tab { font-size: 13px; padding: 8px 13px; }
    .vce-guias-tabs__panel img { max-height: 260px; }
}

/* ---- Guía dinámica dentro del wizard (paso de fotos y de medidas) ---- */
.vce-foto-guia {
    margin: 0 0 20px;
    text-align: center;
    background: var(--bg-soft, #f4f7f9);
    border: 1px solid var(--border, #e3e9ee);
    border-radius: var(--radius, 12px);
    padding: 16px;
}
.vce-foto-guia img {
    display: block;
    max-width: 100%;
    max-height: 260px;
    margin: 0 auto;
    border-radius: 8px;
}
.vce-foto-guia__cap {
    display: block;
    margin-top: 10px;
    font-size: 13px;
    color: var(--text-secondary, #5F7A8A);
}

/* ---- Rejilla de fotos (7 slots, sin imagen de referencia) ---- */
.vce-photos-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}
.vce-photos-grid .vt-photo-slot__upload,
.vce-photos-grid .vt-photo-slot__dropzone {
    width: 100%;
}
.vce-photos-grid .vt-photo-slot__dropzone {
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 2px dashed var(--border, #cdd8e0);
    border-radius: 10px;
    cursor: pointer;
    color: var(--text-secondary, #5F7A8A);
    font-size: 13px;
    transition: border-color .15s, background .15s;
}
.vce-photos-grid .vt-photo-slot__dropzone:hover,
.vce-photos-grid .vt-photo-slot__dropzone--dragover {
    border-color: var(--accent, #1D3250);
    background: var(--bg-soft, #f4f7f9);
}
.vce-photos-grid .vt-photo-slot__preview {
    position: relative;
    aspect-ratio: 1 / 1;
    border-radius: 10px;
    overflow: hidden;
}
.vce-photos-grid .vt-photo-slot__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 700px) {
    .vce-photos-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 460px) {
    .vce-photos-grid { grid-template-columns: repeat(2, 1fr); }
}
