/* =========================================================================
   PAGINA DE DETALLE DE SERVICIO
   Reproduce las filas del maquetador del sitio original (WPBakery + rttheme).
   Medidas tomadas con getBoundingClientRect() sobre mydsac.com a 1905px.
   ========================================================================= */

/* ---- FILA ---------------------------------------------------------------
   El original: .content_row_wrapper mide 1180px con padding 0 10px, y cada
   columna anade 15px, dejando 1130px de contenido que empiezan en x=388.     */
.vcrow {
    position: relative;
    background: #fff;
    padding: 25px 0;                 /* rt_row_paddings = true */
}

.vcrow__inner {
    position: relative;
    z-index: 2;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 10px;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;            /* fixed_heights: columnas a la misma altura */
}

/* Fila "default": la caja blanca mide 1180px y por los lados se ve el fondo */
.vcrow--caja  { width: 1180px; max-width: 100%; margin: 0 auto; }
.vcrow--full  { width: 100%; }

/* Desviacion pedida: en el original la fila del separador es de ancho completo
   y su fondo blanco cruza los margenes grises dejando una franja suelta.
   Aqui se limita a 1180px para que el margen quede gris de corrido. */
.vcrow--sep { width: 1180px; max-width: 100%; margin: 0 auto; }

.vcrow--borde-bottom { border-bottom: 1px solid #e8e8e8; }
.vcrow--borde-top    { border-top: 1px solid #e8e8e8; }

/* ---- COLUMNA ----------------------------------------------------------- */
.vccol {
    position: relative;
    padding: 0 15px;
    min-width: 0;
}
.vccol--1-1 { width: 100%; }
.vccol--1-2 { width: 50%; }
.vccol--1-3 { width: 33.3333%; }
.vccol--2-3 { width: 66.6666%; }
.vccol--1-4 { width: 25%; }
.vccol--3-4 { width: 75%; }
.vccol--1-6 { width: 16.6666%; }
.vccol--5-6 { width: 83.3333%; }

/* Lineas verticales entre columnas (rt_grid / border_grid del tema) */
.vcrow--grid .vccol + .vccol::after {
    content: '';
    position: absolute;
    left: -1px;
    top: 0;
    bottom: 0;
    width: 1px;
    border-left: 1px solid #e8e8e8;
}

/* ---- CABECERA CON FOTO -------------------------------------------------
   El tema monta una capa de fondo un 42,4% mas alta que la fila y la sube
   esa misma cantidad (efecto parallax). Reproducimos el encuadre inicial.   */
.vcrow--foto {
    overflow: hidden;
    background: #e9eef3;
}
.vcrow__foto {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 1;
}
/* Con efecto parallax el tema monta la capa un 42,4% mas alta y la sube esa
   misma cantidad; asi queda el encuadre que se ve al cargar la pagina. */
.vcrow--parallax .vcrow__foto {
    top: -42.4%;
    height: 142.4%;
}

/* El ultimo elemento de la columna no arrastra su margen inferior */
.vccol > *:last-child { margin-bottom: 0; }

/* ---- TITULOS ----------------------------------------------------------- */
.rt-head { margin: 0; }

/* Cabecera sin texto: en el original queda el hueco de 30px igual */
.rt-head--vacia { height: 30px; }
.rt-title { margin: 0; font-family: 'Oswald', sans-serif; font-weight: 300; color: #222; }

/* style-4: titulo centrado dentro de una caja blanca translucida */
.rt-head--style-4 { padding: 0 0 20px; text-align: center; }
.rt-head--style-4 .rt-punch {
    display: block;
    font: 400 14px/14px 'Roboto', sans-serif;
    color: #999;
    margin: 0 0 -2px;
}
.rt-head--style-4 .rt-title {
    display: table;                  /* la caja se ajusta al ancho del texto */
    max-width: 100%;
    background: rgba(255, 255, 255, .5);
    border-radius: 15px;
    padding: 10px;
    margin: 0 auto 10px;
    font-size: 44px;
    line-height: 59.4px;
}

/* style-3: titulo centrado con una linea a cada lado */
.rt-head--style-3 {
    padding: 0 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.rt-head--style-3::before,
.rt-head--style-3::after {
    content: '';
    flex: 1 1 auto;
    border-top: 1px solid #e8e8e8;
    margin-top: 2px;
}
.rt-head--style-3::before { margin-right: 20px; }
.rt-head--style-3::after  { margin-left: 20px; }
.rt-head--style-3 .rt-title {
    flex: 0 0 auto;
    font-size: 44px;
    line-height: 59.4px;
    margin: 0 0 10px;
    text-align: center;
}

/* style-1: titulo de bloque con subrayado corto azul */
.rt-head--style-1 { padding: 0 0 30px; }
.rt-head--style-1 .rt-title {
    position: relative;
    display: block;
    font-size: 24px;
    line-height: 36px;
    padding-bottom: 0;
}
.rt-head--style-1 .rt-title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 55px;
    height: 1px;
    background: #0d4772;
}

/* ---- TEXTO ------------------------------------------------------------- */
.rt-texto { font: 400 14px/20px 'Roboto', sans-serif; color: #666; }
.rt-texto p  { margin: 0 0 20px; }
.rt-texto p:last-child { margin-bottom: 0; }
.rt-texto ul { margin: 0; padding-left: 20px; list-style: disc; }
.rt-texto ol { margin: 0; padding-left: 20px; }
.rt-texto li { margin: 0; }
.rt-texto strong { color: #444; font-weight: 700; }
.rt-texto a { color: #0d4772; }

/* ---- IMAGEN ------------------------------------------------------------ */
.rt-img { margin: 0 0 15px; text-align: center; }
.rt-img img { max-width: 100%; height: auto; vertical-align: middle; }

/* ---- SEPARADOR --------------------------------------------------------- */
.rt-sep {
    height: 3px;
    border-top: 2px solid #ebebeb;
    border-bottom: 1px solid #ebebeb;
    box-sizing: border-box;
}
